Das ist mein code:
Die Funktion:
function thumb($file, $save, $width, $height, $prop = TRUE) {
@unlink($save);
$infos = @getimagesize($file);
if($prop) {
// Proportionen erhalten
$iWidth = $infos[0];
$iHeight = $infos[1];
$iRatioW = $width / $iWidth;
$iRatioH = $height / $iHeight;
if ($iRatioW < $iRatioH)
{
$iNewW = $iWidth * $iRatioW;
$iNewH = $iHeight * $iRatioW;
} else {
$iNewW = $iWidth * $iRatioH;
$iNewH = $iHeight * $iRatioH;
} // end if
} else {
// Strecken und Stauchen auf Größe
$iNewW = $width;
$iNewH = $height;
}
if($infos[2] == 2) {
// Bild ist vom Typ jpg
$imgA = imagecreatefromjpeg($file);
$imgB = imagecreatetruecolor($iNewW,$iNewH);
imagecopyresampled($imgB, $imgA, 0, 0, 0, 0, $iNewW,
$iNewH, $infos[0], $infos[1]);
imagejpeg($imgB, $save);
} elseif($infos[2] == 3) {
// Bild ist vom Typ png
$imgA = imagecreatefrompng($file);
$imgB = imagecreatetruecolor($iNewW, $iNewH);
imagecopyresampled($imgB, $imgA, 0, 0, 0, 0, $iNewW,
$iNewH, $infos[0], $infos[1]);
imagepng($imgB, $save);
} else {
return FALSE;
}
}
damit wird die Funktion aufgerufen:
// Quelldatei
$from = $_POST['file'].'/'.$sFilename;
// Ziel 1+2
$to1 = $_POST['file'].'/th/'.$sFilename;
// Funktionsaufruf mit Einbehaltung der Proportionen
thumb($from, $to1, 170, 170, TRUE);
damit wird der Bilderordner geöffnet:
$hDir = opendir($_POST['file']);
while($sFilename = readdir($hDir)) {
$sFilepath = $sDirpath.'/'.$sFilename;
# jpeg, gif und png rausfiltern
$aPicinfo = @getimagesize($sFilepath);
if(in_array($aPicinfo[2], array(1,2,3), true))
$aPics[] = $sFilename;
$count++;
Ein beispiel wie $_GET['file'] aussehen kann:
./gallery/pics/galleriename
und der Fehler:
Warning: Division by zero in C:\Programme\xampp\htdocs\webdesign\Picture-Parade\Picture-Para.de mit Userbereich\gallery\admin\galleryeintrag.php on line 25
Warning: Division by zero in C:\Programme\xampp\htdocs\webdesign\Picture-Parade\Picture-Para.de mit Userbereich\gallery\admin\galleryeintrag.php on line 26
Thumbnail von . erfolgreich erstellt.
Warning: Division by zero in C:\Programme\xampp\htdocs\webdesign\Picture-Parade\Picture-Para.de mit Userbereich\gallery\admin\galleryeintrag.php on line 25
Warning: Division by zero in C:\Programme\xampp\htdocs\webdesign\Picture-Parade\Picture-Para.de mit Userbereich\gallery\admin\galleryeintrag.php on line 26
Thumbnail von .. erfolgreich erstellt.
Ich bin schon soweit gekommen, dass die Funktion versucht von "." und ".." ein Thumbnail zu erstellen, was aber ja nicht möglich ist.... Wie kann ich nun dafür sorgen ,dass dieser Fehler nicht mehr auftritt? Das skript läuft zwar , und die Thumbnails werden auch erstellt aber der Fehler stört mich trotzdem...
ich habe irgendwo mal was davon:
while (false !== ($file = readdir($action)))
{
$count=0;
if ($file != ".." && $file != "."
{
if (strpos($file, "." === false)
{
}
}
}
Wie muss ich das nun bei mir einbauen ?
Danke denjenigen, die sich die Mühe gemacht haben, diesen endslangen Text zu lesen und schonmal danke im Vorraus.
mfg Alex
edit:// ich bin so blöd.... Oh Mensch die ganze zeit nen brett vor dem Kopf, dabei ist es so einfach ...
gelöst hab ich so.
if ($sFilename != "." && $sFilename != ".."
{
thumb($from, $to1, 170, 170, TRUE);
}