php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.07.2008, 22:41  
dom
Gast
 
Beiträge: n/a
Standard thumbnails erstellen

guten tag auf dem wege zur eigenen galerie komm ich einfach über ein paar fehler nicht hinweg. konnte hier auch soweit keinen ähnlichen fall finden, also post ich einfach mal die errors und das skript.


Code:
<?PHP
//error_reporting(0);
$originalpath = "divers";
$thumbnail="thumb_";
$thumbpath="$thumbnail"."$originalpath";
$dest = "$originalpath"."$thumbpath";

$nw = "225";
$nh = "165";

$thumbpathdir = "".$originalpath."/";

if(!is_dir($originalpath.$thumbpath)) {
mkdir("$thumbpathdir"."$thumbpath", 777);

$open=opendir($originalpath);
while($source=readdir($open)){ 
function cropImage($nw, $nh, $source, $stype, $dest) {
    $size = @getimagesize($source);
    $w = $size[0];
    $h = $size[1];
    switch($stype) {
        case 'gif':
        $simg = imagecreatefromgif($source);
        break;
        case 'jpg':
        $simg = imagecreatefromjpeg($source);
        break;
        case 'png':
        $simg = imagecreatefrompng($source);
        break;
    }
    $dimg = imagecreatetruecolor($nw, $nh);
    $wm = $w/$nw;
    $hm = $h/$nh;
    $h_height = $nh/2;
    $w_height = $nw/2;
    if($w> $h) {
        $adjusted_width = $w / $hm;
        $half_width = $adjusted_width / 2;
        $int_width = $half_width - $w_height;
        imagecopyresampled($simg,$dimg,-$int_width,0,0,0,$adjusted_width,$nh,$w,$h);
    } elseif(($w < $h) || ($w == $h)) {
        $adjusted_height = @($h / $wm);
        $half_height = $adjusted_height / 2;
        $int_height = $half_height - $h_height;
        imagecopyresampled($dimg,$simg,0,-$int_height,0,0,$nw,$adjusted_height,$w,$h);
    } else {
        imagecopyresampled($dimg,$simg,0,0,0,0,$nw,$nh,$w,$h);
    }

    imagejpeg($dimg,$dest,100);
}


cropImage(225, 165, "$originalpath/$source", "", "$thumbpath/$thumbnail"."$source");

 
} } else {


if (is_dir($originalpath)) {
    if ($dh = opendir($originalpath)) {
        while (($file = readdir($dh)) !== false) {
                    echo "<a href=\"".$originalpath."".$file."\" rel=\"lightbox\"><img style=\"float:left;\" src=\"".$originalpath."thumb_".$originalpath."thumb_".$file."\"></a>";

        }
        closedir($dh);
    }
}



}
?>
Zitat:
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/gso.php on line 61

Warning: imagejpeg(): Unable to open 'thumb_divers/thumb_.' for writing in /var/www/web1/html/file/fotos/gso.php on line 66

Fatal error: Cannot redeclare cropimage() (previously declared in /var/www/web1/html/file/fotos/gso.php:32) in /var/www/web1/html/file/fotos/gso.php on line 32
besten dank soweit

Geändert von dom (18.07.2008 um 22:49 Uhr).
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.07.2008, 22:50  
Erfahrener Benutzer
 
Registriert seit: 19.05.2008
Beiträge: 612
PHP-Kenntnisse:
Fortgeschritten
Young Jedi befindet sich auf einem aufstrebenden Ast
Standard

Hi,

1. Ich habe heute meinen sozialen Tag, deswegen habe ich das Formatieren des Textes inklusive des Posten mit Syntax Highlighting mal für dich übernommen:

PHP-Code:
<?PHP
error_reporting
(E_ERROR E_WARNING E_PARSE E_NOTICE);
$originalpath "gennep/";
$thumbnail="thumb_";
$thumbpath="$thumbnail"."$originalpath";

if(!
is_dir($originalpath.$thumbpath)) {
    
mkdir($originalpath.$thumbpath);
    
$open=opendir($originalpath);
    while(
$bild=readdir($open)){ 
        if(
$bild != "." && $bild != ".."){ 
            
$endung split("[.]",$bild); 
            if (
$endung[1] == "jpg" || "JPG" || "jpeg" || "JPEG" || "png" || "PNG"){
                if (!
is_file("$originalpath"."thumb_$originialpath/$bild")){ 
                    
$newfilename"thumb_$bild"
                    
$neueBreite=130
                    
$size=getimagesize($originalpath.$bild); 
                    
$breite=$size[0]; 
                    
$hoehe=$size[1]; 
                    
$neueHoehe=intval($hoehe*$neueBreite/$breite); 
                    if(
$size[2]==2) { 
                        
$altesBild=ImageCreateFromjpeg($originalpath.$bild); 
                        
$neuesBild=ImageCreateTrueColor($neueBreite,$neueHoehe); 
                        
ImageCopyResized($neuesBild,$altesBild,00,0,0,$neueBreite,$neueHoehe,$breite,$hoehe); 
                        
Imagejpeg($neuesBild,"$originalpath"."$thumbpath"."$newfilename",100);
                    } 
                }
                
$ausgabe="$originalpath"."$thumbpath"."$newfilename"
                
$original="$originalpath"."$bild"
            } 
        } 
    } 
}else{
    
$dir "pics/";
    if (
is_dir($originalpath)) {
        if (
$dh opendir($originalpath)) {
            while ((
$file readdir($dh)) !== false) {
                        echo 
"<a href=\"".$originalpath."".$file."\" rel=\"lightbox\"><img style=\"float:left;\" src=\"".$originalpath."thumb_".$originalpath."thumb_".$file."\"></a>";
            }
            
closedir($dh);
        }
    }

}
?>
2. Ich glaube, da fehlt noch etwas Code, die in der Fehlermeldung beschriebene Funktion imagecopyresampled() existiert bei dir gar nicht. Poste bitte den kompletten Code!

Mfg

PS: Bitte etwas auf deine Orthographie achten...
Young Jedi ist offline  
Alt 18.07.2008, 22:51  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

willst du uns verarschen?

Zitat:
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/gso.php on line 61
in deinem Code oben ist kein einziges imagecopyresampled()
cycap ist offline  
Alt 18.07.2008, 23:09  
dom
Gast
 
Beiträge: n/a
Standard

also bei der variante von Young Jedi kommen eine menge warnungen und sowas:

Zitat:
Notice: Undefined offset: 1 in /var/www/web1/html/file/fotos/new.php on line 13

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Warning: getimagesize(): Read error! in /var/www/web1/html/file/fotos/new.php on line 17

Warning: Division by zero in /var/www/web1/html/file/fotos/new.php on line 20

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Notice: Undefined offset: 1 in /var/www/web1/html/file/fotos/new.php on line 13

Notice: Undefined variable: originialpath in /var/www/web1/html/file/fotos/new.php on line 14

Warning: getimagesize(): Read error! in /var/www/web1/html/file/fotos/new.php on line 17

Warning: Division by zero in /var/www/web1/html/file/fotos/new.php on line 20
auf dem server seh ich auch das ein paar thumbs angelegt wurden (die auch nach refresh des skripts angezeigt werden). allerdings mit nem chmod 644 und user www-data anstatt web1
 
Alt 18.07.2008, 23:14  
Erfahrener Benutzer
 
Registriert seit: 19.05.2008
Beiträge: 612
PHP-Kenntnisse:
Fortgeschritten
Young Jedi befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von dom Beitrag anzeigen
also bei der variante von Young Jedi kommen eine menge warnungen und sowas:
oO Ich habe eigentlich nur dein Code kopiert und formatiert.
Entweder du hast dein Code oben noch einmal in der Zeit verändert oder ich habe irgend etwas falsch gemacht.

Wohl eher 1.
Young Jedi ist offline  
Alt 18.07.2008, 23:17  
dom
Gast
 
Beiträge: n/a
Standard

ich hatte eigentlich nur vergessen die warnings zu posten :/
 
Alt 19.07.2008, 08:11  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

wohl eher wegen dem error_reporting
cycap ist offline  
Alt 19.07.2008, 12:10  
dom
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von cycap Beitrag anzeigen
wohl eher wegen dem error_reporting
wie meinen?
 
Alt 19.07.2008, 13:52  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Hallo!

Hier ist ein Fehler dabei!
PHP-Code:
$size=getimagesize($originalpath.$bild); 
Du benutzt da einen Punkt und setzt da nur Zwei Variablen zusammen,aber der Punkt wird im String dann nicht dargestellt,soweit ich das richtig beurteile!

Das müsste glaube ich so aussehen!

PHP-Code:
$size=getimagesize($originalpath.".".$bild); 
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 19.07.2008, 14:55  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Hallo dom,

dazu habe ich bereits mal eine Klasse gepostet die Thumbnails erstellt. Vielleicht kannst du dich ja dannach richtigen bzw. Orientieren.

http://www.php.de/php-einsteiger/197...alisieren.html
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Info Seite erstellen Galrian PHP Tipps 2008 1 18.01.2008 15:17
Thumbnail mit genauer Größe erstellen Simon9990 PHP Tipps 2008 9 23.08.2007 05:22
Thumbnails erstellen -> Qualtitätsproblem GrU3nL!nG PHP Tipps 2006 6 28.11.2006 15:58
temporäre thumbnails lindner PHP Tipps 2006 5 20.06.2006 07:40
darf keine Datenbank erstellen in phpMyAdmin Datenbanken 2 20.10.2005 19:32
Thumbnails serverseitig erstellen PHP-Fortgeschrittene 3 23.08.2005 12:42
Thumbnails erscheinen in Bildgröße! PHP Tipps 2005-2 3 04.06.2005 15:59
Thumbnails erstellen freitz PHP Tipps 2005 13 22.05.2005 18:32
Stammbaum erstellen Riot PHP Tipps 2005 17 13.05.2005 16:32
Ordner erstellen und Datei uploaden Juuro PHP Tipps 2005 6 20.01.2005 21:18
thumbnails streamen spoi PHP Tipps 2004-2 5 16.11.2004 12:46
Thumbnails erstellen PHP Tipps 2004 2 16.10.2004 02:39
Thumbnails erstellen... PHP Tipps 2004 10 20.09.2004 12:56
Bilder Upload und automatische thumbnails erstellen PHP Tipps 2004 11 08.07.2004 21:22
Ordner per Skript erstellen --> Rechte Problem PHP Tipps 2004 2 06.07.2004 14:19

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php thumbnail erstellen, php thumb erstellen, thumbnails mit php erstellen, thumbnails erstellen php, thumbnails online erstellen, http://www.php.de/php-tipps-2008/2148-thumbnails-erstellen.html, thumbnail php erstellen, thumbnail mit php erstellen, php thumbnails erstellen, php vorschaubilder erstellen, php thumbnails, thumbnails php erstellen, vorschaubild erstellen, thumbnail erstellen php, thumb erstellen php, php thumbnails erzeugen, thumbnail online erstellen, thumb php erstellen, online thumbs erstellen, thumbnails php

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:58 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum