Ankündigung

Einklappen
Keine Ankündigung bisher.

thumbnails erstellen

Einklappen

Neue Werbung 2019

Einklappen
Dieses Thema ist geschlossen.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Gast-Avatar
    Ein Gast erstellte das Thema thumbnails erstellen.

    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);
        }
    }
    
    
    
    }
    ?>
    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

  • agrajag
    antwortet
    Ich finde dom kann sich gerne andere Witzfiguren suchen, in einem anderen Forum. Oder sich entschuldigen und benehmen...

    Auch wenn's schwer fällt: Beiße nie die Hand, die dich füttert

    Geschlossen.

    Einen Kommentar schreiben:


  • David
    antwortet
    Oh, mal wieder ein "alle doof ausser mir" Thread, in dem man sich anpflaumen darf. Super, bin ich sofort dabei.
    seit-seid.de - Der Unterschied zwischen 'seit' und 'seid' - Teil von Schreibrichtig.de

    Und zum Thema Funktionen:
    PHP-Code:
    <?php
    function foo($defineFunction) {
      if (
    $defineFunction) {
        function 
    bar() {
          echo 
    'hallo';
        }
      }
    }

    foo(false);
    var_dump(function_exists('bar'));

    foo(true);
    var_dump(function_exists('bar'));

    foo(true);
    bool(false)
    bool(true)

    Fatal error: Cannot redeclare bar()
    bar() wird also wirklich erst definiert, wenn if ($defineFunction) erfüllt ist. Dann ist sie allerdings fest im globalen Namensraum. Wird also foo(true) nocheinmal aufgerufen, schlägt die erneute Definition fehl.
    Genauso auch in while Schleifen.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    krass seit ihr witzfiguren. und die größte wohl der moderator. soviel zum kindergarten, denn die macht sei mit ihm

    Einen Kommentar schreiben:


  • Flor1an
    antwortet
    Zitat von dom Beitrag anzeigen
    er sagt 2mal die funktion muss ausserhalb der while schleife stehen. spätestens beim 2ten mal hät er mal sagen können das ich mir nochmal den sinn von funktionen nachlesen sollte.
    Muss ICH dir sagen wie man PHP lernt? Ich denke eher dass du selbst, wenn du auf zwei mal gesagt bekommst dass die Funktion nicht dahin gehört, noch mal nachschaust wieso, warum und wie es richtig funktioniert.

    Wir müssen hier gar nichts machen, du kannst froh sein dass ich dir mehr als zwei mal erklärt habe dass die Funktion NICHT in die while() Schleife gehört. Genau da wäre es DEIN Job gewesen mal nach zu fragen wie Funktionen überhaupt funktionieren und dann im Manual nach zu schlagen.

    Einen Kommentar schreiben:


  • cycap
    antwortet
    >>> Wäääh hört auf jetzt mit dem Kindergarten, sonst schreite ich gleich ein und zeige euch was der Sinn von Moderatoren ist <<<

    Einen Kommentar schreiben:


  • tomtaz
    antwortet
    Ich sag dir jetzt mal eines, dom, du hast nicht die nötigen Grundkenntnisse das das was werden kann, nein, im gegenteil, du beschimfst Leute, die dir helfen wollen, und wunderst dich dann, warum dir keiner mehr helfen will. Tja, my Friend, ich bin raus aus der nummer, damit dieses Script funktionieren kann, musst du dich wohl hinsetzen, dieses Thema noch mal genau durchlesen, denn es sind alle, aber alle nötigen Informationen gefallen.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    was willst du denn du schreibst einfach hier der fertige code, weil "wäääh das thema muss fertig werden" und dann funktioniert der code nichtmal. du hast doch wohl nicht den geringsten sinn dieses forums verstanden oder? der einzige dreißte hier bist du, der sagt, geh weg.

    Einen Kommentar schreiben:


  • tomtaz
    antwortet
    Also jetzt weiß ich mit 100% sicherheit das du diese Funktion NICHT Programmiert haben kannst, wenn du noch nicht mal deine eigenen Parameter kennst. Parameter 4 war der, wo du den Typ übergeben musst.

    Zudem finde ich es dreißt, das du einach Code hernimmst und den auseinander reißt, wo sich andere Leute mühe geben den zu tippen!

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von tomtaz Beitrag anzeigen
    Damit dieses Thema jetzt mal zu einem ende kommt... Hier der Code, ohne das die besagte Fehlermeldung auftritt!
    ....
    ausserdem kommen da die gleichen fehler

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    er sagt 2mal die funktion muss ausserhalb der while schleife stehen. spätestens beim 2ten mal hät er mal sagen können das ich mir nochmal den sinn von funktionen nachlesen sollte.

    und 1. fertig code ist doch blöd, genau wie 2. nur für jpg's hilft keinem.

    ich schätz mal wenns einmal funktioniert muss ich nicht
    imagejpeg($originalpath/$dimg,$dest,100);
    benutzen sondern auch noch imagegif... etc einbauen.

    Einen Kommentar schreiben:


  • tomtaz
    antwortet
    Hallo dom, erst mal eines vorweg gesagt. Es ist richtig das dies das Einsteigerforum ist, aber dennoch MUSST du auf Tipps bzw. Verbesserungsvorschläge eingehen, ansonsten bringt das alles hier exakt 0!

    Zum zweiten, habe ich dir einen Code präsentiert der Formatiert war. Ich weiß nicht ob du Lust hast, formatierten Code wieder unformatiert zu machen.

    Die Fehlermeldungen sind doch eindeutig oder nichtt?

    tausche die Zeile:
    PHP-Code:
    cropImage(225165"$originalpath/$source""""$thumbpath/$thumbnail"."$source"); 
    mit folgender aus:
    PHP-Code:
    cropImage(225165$originalpath '/' $source'jpg'$thumbpath '/' $thumbnail $source ); 
    aus

    Das funktioniert aber nur wenn du jpg Bilder hast...

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    ey florian was geht mit dir? du hast immer noch nicht verstanden das es hier das einsteigerforum ist? unglaublich. nochmal wenn ich wüsste worum es da geht wäre ich nicht hier! bin ja schon froh das ihr nicht wie andere einfach die lösung postet. aber wenigstens konnte man tomtaz antwort mal nachvollziehen. nur leider gehts dann erst los mit den errors wenn nur der funktions-aufruf im while steht.



    PHP-Code:
    <?PHP
    //error_reporting(0);

    // PFADE
    $originalpath "divers";
    $thumbnail="thumb_";
    $thumbpath="$thumbnail"."$originalpath";
    $dest "$originalpath"."$thumbpath";
    $thumbpathdir "".$originalpath."/";


    // THUMB ORDNER ERSTELLEN
    if(!is_dir($originalpath.$thumbpath)) {
    mkdir("$thumbpathdir"."$thumbpath"0777);
    }  

    // THUMB ERSTELLEN
    $open=opendir($originalpath);
    while (
    false !== ($source readdir($open))) { 
        if (
    $source != "." && $source != "..") {
        echo 
    $source;
      
    cropImage(225165"$originalpath/$source""""$thumbpath/$thumbnail"."$source");
            } 
    }

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

            }
            
    closedir($dh);
            }
    }



    // FUNKTION SCHREIBEN
    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 
    '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($originalpath/$dimg,$dest,100);
                    

    }

    ?>

    IMAG0060.jpg
    Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/index.php on line 81

    Warning: imagejpeg(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/index.php on line 91
    IMAG0061.jpg
    Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/index.php on line 81

    Warning: imagejpeg(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/index.php on line 91
    thumb_divers
    Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/index.php on line 86

    Warning: imagejpeg(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/index.php on line 91
    1216412166_1.jpg
    Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/index.php on line 81

    Warning: imagejpeg(): supplied argument is not a valid Image resource in /var/www/web1/html/file/fotos/index.php on line 91

    wie kann das jpg file kein gültiges bild sein? lass mich raten, erst jetzt wirds richtig kompliziert?

    Einen Kommentar schreiben:


  • tomtaz
    antwortet
    Damit dieses Thema jetzt mal zu einem ende kommt... Hier der Code, ohne das die besagte Fehlermeldung auftritt!
    PHP-Code:
    <?PHP
    //error_reporting(0);
    error_reporting(E_ALL);
    // PFADE BILDEN
    $originalpath "divers";
    $thumbnail="thumb_";
    $thumbpath="$thumbnail"."$originalpath";
    $dest "$originalpath"."$thumbpath";
    $thumbpathdir "".$originalpath."/";

    // THUMB ORDNER ERSTELLEN
    if(!is_dir($originalpath.$thumbpath))
    {
        
    mkdir("$thumbpathdir"."$thumbpath"0777);
    }  

    // THUMB ERSTELLEN
    $open=opendir($originalpath);
    while (
    false !== ($source readdir($open)))
    {
        if (
    $source != "." && $source != ".."
        {
           echo 
    $source;
           
    cropImage(225165"$originalpath/$source""""$thumbpath/$thumbnail"."$source");
        }
    }


    // THUMBS AUSLESEN UND GALERIE BAUEN
    if (is_dir($originalpath.$thumbpath))
    {
        if (
    $open opendir($originalpath))
        {
            while ((
    $file readdir($open)) !== false)
            {
                echo 
    "<a href=\"".$originalpath."/".$file."\" rel=\"lightbox\"><img style=\"float:left;\" src=\"".$originalpath."thumb_".$originalpath."thumb_".$file."\"></a>";
            }
            
            
    closedir($dh);
        }
    }
    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 
    '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($originalpath/$dimg,$dest,100);
    }
    ?>

    Einen Kommentar schreiben:


  • Flor1an
    antwortet
    Ah jetzt seh ich erst was du gemacht hast.

    Ich sagte die Funktion SELBER musst du außerhalb der Schleife definieren.
    Der AUFRUF der Funktion muss natürlich IN der Schleife passieren ...

    Weißt du überhaupt was Funktionen sind und wie sie funktionieren??

    Einen Kommentar schreiben:

Lädt...
X