Bild hochladen und automatisch zweimal verkleinern

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bild hochladen und automatisch zweimal verkleinern

    Hi Profis

    ich suche ein Script in dem ich ein
    Großes Bild (JPG) auf max Größe 480 * 480 und noch ein kleines auf max. 100 * 100 pixel in einem Ordner lädt und automatisch groß und klein nennt.

    Gleichzeitig muss noch ein eintrag in die DB erfolgen.

    Hoffe mir kann jemand helfen !!!
    Danke im Voraus !

    MfG
    Mani

  • #2
    Besorg' Dir doch einfach ein fertiges Gallery-Script ... !
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      Nebenbei bemerkt: *pls move to Appz & Scriptgesuche*
      [color=blue]MfG Payne_of_Death[/color]

      [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
      [color=red]Merke:[/color]
      [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

      Murphy`s Importanst LAWS
      Jede Lösung bringt nur neue Probleme
      Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
      In jedem kleinen Problem steckt ein großes, das gern raus moechte.

      Kommentar


      • #4
        Das ist allerdings wahr ... !
        carpe noctem

        [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
        [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

        Kommentar


        • #5
          Hellas,

          das Script ist zwar nicht von mir, ich benutze es aber um meine Thumbnails zu erstellen.
          Speichere es einfach als thumbnail.php ab


          PHP-Code:
               error_reporting(0);
               
          $types = array (=> "gif""jpeg""png""swf""psd""wbmp");
               
          define ('cache''cache/');
               
          $cachedir $path."/profiles/images/";
               !
          is_dir ($cachedir)

                    ? 
          mkdir ($cachedir0777)
                    : 
          system ("chmod 0777 ".$cachedir);

               (!isset (
          $x) || ereg ('^[0-9]{1,}$'$x$regs)) &&
               (!isset (
          $y) || ereg ('^[0-9]{1,}$'$y$regs)) &&
               (isset (
          $x) || isset ($y))

                    ? 
          true
                    
          : DIE ('Fehlende(r) oder ungültige(r) Größenparameter!');

               !isset (
          $resize) || !ereg ('^[0|1]$'$resize$regs)
                    ? 
          $resize 0
                    
          $resize;



               !isset (
          $aspectratio) || !ereg ('^[0|1]$'$aspectratio$regs)

                    ? isset (
          $x) && isset ($y)
                           ? 
          $aspectratio 1
                           
          $aspectratio 0

                    
          $aspectratio;
               !isset (
          $image)

                    ? DIE (
          'Es wurde kein Bild angegeben!')
                    : !
          file_exists($image)

                         ? DIE (
          'Die angegebene Datei konnte nicht auf dem Server gefunden werden!')
                         : 
          false;



               
          $imagedata getimagesize($image);

               !
          $imagedata[2] || $imagedata[2] == || $imagedata[2] == 5

                    
          ? DIE ('Bei der angegebenen Datei handelt es sich nicht um ein Bild!')
                    : 
          false;

               eval (
          '

               if (!(imagetypes() & IMG_'
          .strtoupper($types[$imagedata[2]]).')) {
                    DIE ("Das ".strtoupper($types[$imagedata[2]])."-Format wird nicht unterstützt!");
               }
               '
          );

               !isset (
          $x)
                    ? 
          $x floor ($y $imagedata[0] / $imagedata[1])
                    : 
          $x;

               !isset (
          $y)

                    ? 
          $y floor ($x $imagedata[1] / $imagedata[0])
                    : 
          $y;

           

               if (
          $aspectratio && isset ($HTTP_GET_VARS['x']) && isset ($HTTP_GET_VARS['y'])) {

                    if (
          $imagedata[0] > $imagedata[1]) {
                         
          $y floor ($x $imagedata[1] / $imagedata[0]);
                    } else if (
          $imagedata[1] > $imagedata[0]) {
                         
          $x floor ($y $imagedata[0] / $imagedata[1]);
                    }
               }



               
          $thumbfile substr ($HTTP_GET_VARS['image'], strrpos ($HTTP_GET_VARS['image'], '/') + 1);

               if (!
          $iscached) {
                    (
          $imagedata[0] > $x || $imagedata[1] > $y) ||
                    ((
          $imagedata[0] < $x || $imagedata[1] < $y) && $resize)
                         ? 
          $makethumb true
                         
          $makethumb false;

               } else {

                    
          $makethumb true;
               }



               
          Header ("Content-Type: image/".$types[$imagedata[2]]);

               if (
          $makethumb) {

                    
          $image call_user_func("imagecreatefrom".$types[$imagedata[2]], $image);
                    
          $thumb imagecreatetruecolor ($x$y);
                    
          imagecopyresized ($thumb$image0000$x$y$imagedata[0], $imagedata[1]);
                    
          call_user_func("image".$types[$imagedata[2]], $thumb$cachedir.$thumbfile);

          imagedestroy ($image);
          imagedestroy ($thumb);

                    
          $image $cachedir.$thumbfile;
               } else {

                    
          $iscached

                         
          $image $cachedir.$thumbfile

                         
          $image $HTTP_GET_VARS['image'];

               }

          $image fopen ($image"rb"); 

           
          fpassthru ($image);

               
          fclose ($image); 
          Das Script erstellt Thums on the fly in der größe die Du brauchst mit dem folgenden Aufruf:

          Code:
          <img src="thumbnail.php?image=Deinbild.ext&x=100&y=100">
          Den Datenbankeintrag kannst Du ja mit in dein Uploadscript bauen.
          Das findest Du sicherlich hier in der Suche

          EDIT:
          Sorry, update, ich hate eine Stelle verändert, weil ich ein generieren erzwingen mußte, habs korrigiert
          Zuletzt geändert von ; 19.04.2004, 18:58.

          Kommentar


          • #6
            Wenn ich sowas sehe glaube ich man sollte heute kein Hosting mehr anbiete ... !
            carpe noctem

            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

            Kommentar


            • #7
              Warum das?
              Wegen der Serverlast?

              Das Script erstellt das Thumbnail nur, wenn es noch nciht da ist, also eigentlich wenig Serverlast

              Kommentar


              • #8
                Ich meinte Dich nicht ... die "Webmaster" heute wollen heute alles mögliche haben ... aber die Fähigkeit solch eine Kleinigkeit mal eben selbst zu coden ... Pustekuchen ... !
                carpe noctem

                [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                Kommentar


                • #9
                  axo

                  naja, ich dachte wegen meiner kleinen Änderung, ich hatte wie gesagt, das erstellen erzwungen, weil ich was testen mußte,
                  das ist natürlich eine zu hohe Serverlast. hab das Script allerdings wieder geradegebogen

                  Recht hast du

                  Kommentar

                  Lädt...
                  X