Bilder benamseln

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

  • Bilder benamseln

    Hallo zusammen,

    bin ganz frisch hier, auch mit der Materia PHP noch nicht so vertraut. Ich will eigentlich einen ganz simplen Bilderupload realisieren und imselben Vorgang noch ein Thumbnail vom Bild erstellen. Das Thumbnail ist aber nur Sekundär, wichtig ist mir die Sache mit den Bildern Uploaden...

    Die Bilder sollen hochgeladen werden und neu benannt werden, mit fortlaufenden Nummern. Ich will jetzt aber nicht das mein erstes Bild 1.jpg, sondern 0000000001.jpg heisst und das alle bildernamen (exclusive endung) eine gewisse anzahl stellen haben (geht auch um das sortieren etc.)

    kann mir wer sagen wie ich das hinbekomme? so das jeder name z. B. 10 zeichen lang ist?

    danke schon im voraus
    No Justice, No Peace

  • #2
    evt hilft Dir:
    echo sprintf ("%010d","$zahl");
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Ganz simplen Upload :-) des is schon ziemlich kompliziert was du da willst :-)

      PHP-Code:
      $uploaddir '';

      print 
      "<pre>";
      if (
      move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir $_FILES['userfile']['name'])) {
          print 
      "File is valid, and was successfully uploaded.  Here's some more debugging info:\n";
          
      print_r($_FILES);
      } else {
          print 
      "Possible file upload attack!  Here's some debugging info:\n";
          
      print_r($_FILES);
      }
      rename($_FILES['userfile']['name'], $uploaddir .'hochgeladene Datei.txt');


      print 
      "</pre>"
      Glaub des hab ich irgendwann mal aus dem Manual

      Kommentar


      • #4
        ^warum erst laden und dann umbenennen?
        Beantworte nie Threads mit mehr als 15 followups...
        Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

        Kommentar


        • #5
          Danke schonmal für die antworten. Den Code den du gepostet hast, hab' ich auch gefunden, aber der reicht nicht ganz aus. Und soooo anspruchsvoll ist das ganze nett, hab schon umfangreicheres gesehen...

          danke aber trotzdem


          p.s: das mit dem sprintf ("%010d") hat geklappt, hervorragend sogar. vielen dank!
          Zuletzt geändert von asi; 30.10.2003, 08:02.
          No Justice, No Peace

          Kommentar


          • #6
            Weiss nicht wen es interessiert, aber ich hab da mal die ganze Funktion gepostet wie sie jetzt ist. Bild absichern, Thumbnail erstellen, ein DB eintragen...

            PHP-Code:
            <?php

             $handle
            =opendir ('pics/pics/');
             
            $highest = array();
             while (
            false !== ($file readdir ($handle)))
             {
                 if (
            $file != "." && $file != "..")
                 {
                     
            array_unshift($highest$file);
                 }
             }
             
            rsort($highest);
             
            $pic_number $highest['0'] + 1;
             
            $pic_name sprintf ("%010d","$pic_number");
             
            closedir($handle); 

             
            $uploaddir 'D:/xampp/htdocs/star/pics/pics/';
             
            $thumbdir 'D:/xampp/htdocs/star/pics/thumbs/';
             
            $pic_desc $_POST['desc'];
             
            $pic_temp $_FILES['pic']['tmp_name'];
             
            $pic_thumb $_FILE['pic']['tmp_name'];

             
            $pic_ending str_replace ("image/"""$pic_type);

             
            $pic_format getimagesize($pic_temp);
             
            $pic_width $pic_format[0];
             
            $pic_height $pic_format[1];
             
            $new_width "100";
             
            $new_height intval($pic_height*$new_width/$pic_width);

             
            $link mysql_connect("server""user""password") or die("Keine Verbindung möglich: " mysql_error());
             
            mysql_select_db("star") or die ("Auswahl der Datenbank fehlgeschlagen: " mysql_error());
             if (
            move_uploaded_file($_FILES['pic']['tmp_name'], $uploaddir $pic_name ".jpg")) {
                 echo 
            "Upload erfolgreich\n\n";
                 
            $query "INSERT INTO pics (pic_location, pic_desc, pic_width, pic_height, pic_thumb) VALUES ('pics/pics/" $pic_name ".jpg', '" $pic_desc "', '" $pic_width "', '" $pic_height "', 'pics/thumbs/"$pic_name ".jpg');";
                 
            mysql_query($query) or die ("Fehler beim Ausführen des Querys: " mysql_error());
             } else {
                 echo 
            "Da ging was schief, hier die Infos:\n";
                 
            print_r($_FILES);
             }
             
            $src_pic ImageCreateFromJPEG("" $uploaddir $pic_name ".jpg");
             
            $dst_pic ImageCreateTrueColor($new_width$new_height);
             
            ImageCopyResized($dst_pic,$src_pic,0,0,0,0,$new_width,$new_height,$pic_width,$pic_height);
             
            ImageJPEG($dst_pic$thumbdir $pic_name ".jpg",100);
             
            ImageDestroy($dst_pic);

             
            mysql_close($link);
            ?>
            das ganze ist sicher noch verbesserungsfähig (was den code angeht etc.) aber es funzt so ganz gut.
            No Justice, No Peace

            Kommentar

            Lädt...
            X