Gerade mal bei mir hoch geladen und getestet, funktioniert! Im Anhang mal die geänderte thumb.php
Grüße
Matthias
edit: wir brauchen eine Unterstützung für php Anhänge![]()
Geändert von Bruecksen (09.04.2008 um 23:12 Uhr)
Viele Grüße
Matthias.
http://www.bruecksen.de
Geändert von takedown (09.04.2008 um 23:20 Uhr)
nur noch eine Idee, hab dafür auch zu wenig Erfahrung in PHP.
ersetz das in der thumb.php nochmal mit diesem:
PHP-Code:$Bilder = array_merge( (array)glob("*.jpg"), (array) glob("*.JPG"), (array)glob("*.jpeg") ) ;
foreach ($Bilder as $Bild)
{
qThumb( $Bild, 90 );
}
Viele Grüße
Matthias.
http://www.bruecksen.de
ja hat bei mir geklappt! Du bekommst also immer noch eine Fehlermeldung? Vielleicht ist das eher ein provider, konfigurationsproblem?!
Grüße Matthias
Viele Grüße
Matthias.
http://www.bruecksen.de
Ich habs mit deiner Thumb nochmal ausprobiert mit einem ganz normalen .jpg-Bild.
Da das ja vorher geklappt hat, wirds nicht am Provider liegen, mit deiner Thumb.php bekomme ich selbst bei .jpg-Umwandlungen folgenden Fehler
Rechte sind auf 777 gesetzt, Thumb.php im Ordner /thumbs mit der zu verringernden .jpg-Grafik. Deshalb wundere ich mich jaWarning: array_merge() [function.array-merge]: Argument #2 is not an array in /www/htdocs/w008196e/galery/galerien/Landschaften/thumbs/thumb.php on line 31
Warning: array_merge() [function.array-merge]: Argument #3 is not an array in /www/htdocs/w008196e/galery/galerien/Landschaften/thumbs/thumb.php on line 31
Warning: Invalid argument supplied for foreach() in /www/htdocs/w008196e/galery/galerien/Landschaften/thumbs/thumb.php on line 32![]()
@ takedown
Die Fehlermeldung ist doch eindeutig. Es wird versucht Arrays zu verschmelzen wo keine Arrays sind. Mit anderen Worten: ich vermute mal das nicht beide Bildtypen im Ordner liegen -oder- Du was an Pfad durcheinander gebracht hast. Die Funktion glob erfordert ausserdem PHP 4.3 oder höher.
Erstelle mal ein neues Dokument, kopiere folgenden Text rein, lade es auf deinen Server und rufe es im Browser auf.
PHP-Code:<?php
echo function_exists( 'glob' ) ? 'glob existiert' : 'glob existiert nicht';
?>
#.Viele Grüße - Andreas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
PHP Tutorials und kostenlose Scripts gibt's bei phpBuddy.eu
Follow phpBuddy on Twitter
LTFB - anfängerfreundliche Tutorials
.
@rizzo das ganze muss doch aber auch funktionieren wenn nicht jeder Typ der Bilddatei im Verzeichnis liegt, oder? Denn glob gibt doch einfach ein leeres array zurück wenn nichts auf das pattern matched?!
Das mit dem prüfen der Funktion ist eine gute Idee!
Viele Grüße
Matthias.
http://www.bruecksen.de
@ Rizzo: Glob existiert.
Ich geb euch mal den Link zum Script:
Es liegt also ein und dasselbe Bild im Ordner thumbs & images.
Die Thumb.php liegt hier:
![]()
glg!
take
Geändert von takedown (23.05.2008 um 12:01 Uhr)
Funzt jetztAber fragt mich nicht woran es gelegen hat ;-)
Aber noch eine Frage, wenn diese galerie im ordner /galery liegt, und ich es in einer index2.php im übergeordneten ordner liegen hab und folgendermaßen einbinde in der index2.php:Dann will er ja immer über die index2.php die Bilder anzeigen, -> http://mz.on-network.net/index2.php?...e=Landschaften aber der Link müsste ja folgender maßen lauten:PHP-Code:<?
switch($_GET['action']){
case "galery": include("galery/index.php"); break;
default: include("xyz.php"); break;
}
?>
http://mz.on-network.net/galery/inde...e=Landschaften
Ich hab in der index.php vom galerie-script Zeile 27 von
nachPHP-Code:$verzeichnisse = glob( "galerien/*", GLOB_ONLYDIR );
abgeändert, hat aber nix genützt. Das Problem hab ich nicht nur bei diesem Script, daher wäre eine universelle Lösung/Hilfe sehr nett!PHP-Code:$verzeichnisse = glob( "galery/galerien/*", GLOB_ONLYDIR );
1000 dank im voraus!
dann musst du wahrscheinlich alle pfade anpassen, ich hätte das so gemacht:
etcPHP-Code:$deinpfad = "../hier/dein/pfad/";
$verzeichnisse = glob( $deinpfad."galerien/*", GLOB_ONLYDIR );
$bilder = glob( $deinpfad."galerien/{$_GET['galerie']}/thumbs/*.jpg" );
kann man eigentlich die prev und next nach unten schieben, unter das bild?
die buttons wären dannaber wo ändere ich das in derr slimbox.jsCode:#lbPrevLink { background: transparent url(prevlabel.gif) no-repeat 0% 15%; left: 0; } #lbNextLink { background: transparent url(nextlabel.gif) no-repeat 100% 15%; right: 0; }![]()
computer tun nur das was man ihnen sagt, meistens
#.Viele Grüße - Andreas
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
PHP Tutorials und kostenlose Scripts gibt's bei phpBuddy.eu
Follow phpBuddy on Twitter
LTFB - anfängerfreundliche Tutorials
.
Ich habe mal die qTumb Funktion ein wenig "aufgebohrt", damit diese je nach Bildformat ein entsprechendes Thumb erstellt (JPG, PNG oder GIF).
Schaut so aus und funktioniert wunderbar:
PHP-Code:function qThumb($Bild, $Ziel, $ThumbKantenLaenge)
{
// Größe ermitteln
$OriginalBildInfo = getimagesize($Bild);
$OriginalBildBreite = $OriginalBildInfo[0];
$OriginalBildHoehe = $OriginalBildInfo[1];
$OriginalKantenLaenge = $OriginalBildBreite < $OriginalBildHoehe ? $OriginalBildBreite : $OriginalBildHoehe;
// Temporaeres Bild vom Original erzeugen
switch($OriginalBildInfo[2]) :
case 1:
$TempBild = imagecreatefromgif($Bild);
break;
case 2:
$TempBild = imagecreatefromjpeg($Bild);
break;
case 3:
$TempBild = imagecreatefrompng($Bild);
break;
default:
die('Das Bildformat ist unbekannt!');
endswitch;
// Neues Bild erstellen
$NeuesBild = imagecreatetruecolor( $OriginalKantenLaenge, $OriginalKantenLaenge );
// Originalbild in neues Bild einfügen
if ($OriginalBildBreite > $OriginalBildHoehe)
{
imagecopy( $NeuesBild, $TempBild, 0, 0, round( $OriginalBildBreite-$OriginalKantenLaenge )/2, 0, $OriginalBildBreite, $OriginalBildHoehe );
}
else if ($OriginalBildBreite <= $OriginalBildHoehe )
{
imagecopy( $NeuesBild, $TempBild, 0, 0, 0, round( $OriginalBildHoehe-$OriginalKantenLaenge )/2, $OriginalBildBreite, $OriginalBildHoehe );
}
$Thumbnail = imagecreatetruecolor( $ThumbKantenLaenge, $ThumbKantenLaenge );
imagecopyresampled( $Thumbnail, $NeuesBild, 0, 0, 0, 0, $ThumbKantenLaenge, $ThumbKantenLaenge, $OriginalKantenLaenge, $OriginalKantenLaenge );
// Bild speichern
switch($OriginalBildInfo[2]) :
case 1:
imagegif($Thumbnail, $Ziel);
break;
case 2:
imagejpeg($Thumbnail, $Ziel, 85);
break;
case 3:
imagepng($Thumbnail, $Ziel);
break;
endswitch;
// Speicher freigeben
imagedestroy( $Thumbnail );
imagedestroy( $TempBild );
}
“My software never has bugs. It just develops random features ...”
» DevShack - die Website des freien Webentwicklers Boris
Hallo,
hab folgendes Problem. Hab die scripte bis auf download.php angepaßt, dass auch .jpeg und jpg geht wie das hier einer beschrieben hat. Klappt auch soweit die Vorschau funktioniert, danke
Aber die Großansicht will nicht funktionieren, schätze ma gleiches Problem mit den unterschiedlichen Endungen, aber ich kriege das nicht hin![]()
erst sehr nettes Script.
Ich ahbe nur eines nicht Verstanden wie ich die thumbs erzeugen lasse.
Ich lege im Ordner galerien einen KategorienOrdner an z.B. Test darin einen zwei weitere Ordern images und z´thumbs und gebe dem ordern thumbs die rechte 777 darin lade ich die Bilder rein und das Script und gebe den Bildern auch die Rechte 777.
danach ruchfe ich die Datei thumb.php auf aber nichts tut sich.
An was kann das liegen??
Danke im vorraus
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)