Upload von jpeg und gif

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

  • Upload von jpeg und gif

    Hallo Ihr,

    ich hab auch mal wieder eine Frage.

    ich habe ein Upload-Script und will nun das NUR jpg und gif erlaubt ist. Unter php.net habe ich das gefunden:

    $userfile_type - Der Mime-Typ der Datei, wenn dies Information zur Verfügung gestellt wird. Ein Beispiel wäre "image/gif".

    Das ist mein Formblatt mit dem ich die Uploads mache:
    Code:
    <FORM METHOD='POST' ACTION='upload.php' 
    ENCTYPE='multipart/form-data'>
    <INPUT  TYPE='hidden'  NAME='MAX_FILE_SIZE'
    VALUE='1000000'>
    <table border='0'>
    <tr><td><font face='$ff'
    size='2'>Bilddatei:</font></td>
    <td><INPUT  NAME='userfile'  TYPE='FILE'></td></tr>
    <tr><td  colspan='2'><p align='right'><INPUT
    TYPE='SUBMIT'  NAME='action'  VALUE='Bild hochladen'></td>
    </tr>
    </table>
    </form>
    Was muß ich änder damit er nur jpg und gif nimmt?
    *winks*
    Gilbert
    ------------------------------------------------
    Hilfe für eine Vielzahl von Problemen!!!
    http://www.1st-rootserver.de/

  • #2
    http://www.php-resource.de/forum/sho...?threadid=4055

    CAT Music Files

    Kommentar


    • #3
      Also wenn ich das Streit-Posting dort richtig verstanden habe, muß ich nur das eintragen(fett):
      Code:
      <FORM METHOD='POST' ACTION='upload.php' 
      ENCTYPE='multipart/form-data'>
      <INPUT  TYPE='hidden'  NAME='MAX_FILE_SIZE'
      VALUE='1000000'>
      <table border='0'>
      <tr><td><font face='$ff'
      size='2'>Bilddatei:</font></td>
      <td><INPUT  NAME='userfile'  TYPE='FILE'></td></tr>
      <tr><td  colspan='2'><p align='right'><INPUT
      TYPE='SUBMIT'  NAME='action'  VALUE='Bild hochladen'></td>
      </tr>
      </table>
      [b]<? 
      if($bild_type == "image/gif" ||
       $bild_type == "image/jpeg" ||
       $bild_type == "image/pjpeg"){ 
      //  Was muß hier hin???
      } 
      ?>[/b] 
      </form>
      Aber woher weis das Script nun was es machen soll?
      *winks*
      Gilbert
      ------------------------------------------------
      Hilfe für eine Vielzahl von Problemen!!!
      http://www.1st-rootserver.de/

      Kommentar


      • #4
        <?php
        //upload.php:
        $origname = $HTTP_POST_FILES['userfile']['name'];

        $filearray = explode(".",$origname);

        $fileext = $filearray[count($filearray) - 1];

        if (!preg_match("/(JPG|JPEG|GIF|JPE)$/i",$fileext)) {
        echo "Sie m&uuml;ssen eine JPEG oder GIF-Datei angeben!<br>\n";
        }
        ?>

        CAT Music Files

        Kommentar


        • #5
          Gut wenn du mir sorum helfen willst,
          Das Upload-Script ist das was ich von Provider bekommen habe. Da andere Script nicht laufen.

          Code:
          if (file_exists("logs/$userfile_name".".user.log"))
          {
          global $ff;
          $array = file("logs/$userfile_name".".user.log");
          $test = $array[0];
          if ($name == $test)
          {
          
          global $ff;
          copy ($userfile, "file/$userfile_name");
          
          unlink("logs/$userfile_name".".user.log");
          unlink("logs/$userfile_name".".datum.log");
          
          echo "<font face='$ff' size='2'>Datei wurde neu geschrieben.</font>";
          
          }
          else
          {
          global $ff;
          $auser = file("logs/$userfile_name".".user.log");
          $agebrauch = file("logs/$userfile_name".".datum.log");
          $user = $auser[0];
          $gebrauch = $agebrauch[0];
          echo "<font face='$ff' size='2'>Datei wurde nicht neu angelegt!</font>";
          }
          }
          else
          {
          global $ff;
          copy ($userfile, "../../phpshop/images/$userfile_name");
          echo "<font face='$ff' size='2'>$userfile_name wurde gespeichert.</font>";
          }
          Wo muß jetzt die Kontrolle hin, damit er nur jpg und gif rauflädt?
          *winks*
          Gilbert
          ------------------------------------------------
          Hilfe für eine Vielzahl von Problemen!!!
          http://www.1st-rootserver.de/

          Kommentar


          • #6
            vor dem copy befehl
            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              So wie es Sky geschrieben hat oder in abgewandelter Form?
              *winks*
              Gilbert
              ------------------------------------------------
              Hilfe für eine Vielzahl von Problemen!!!
              http://www.1st-rootserver.de/

              Kommentar


              • #8

                if (preg_match("/(JPG|JPEG|GIF|JPE)$/i",$fileext)) {
                copy...
                }
                zB
                Beantworte nie Threads mit mehr als 15 followups...
                Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                Kommentar


                • #9
                  Schon mal animierte Jpegs gesehen? Mein Chef schon ... der hat ganz schön geguckt, bis ich ihm ein animiertes Gif gezeigt, das in .jpg umbenannt und im IE geöffnet habe.

                  Die Dateiendung ist halb so wichtig, und für JPeg alleine gibt es mindestens 3 Schreibweisen ... einfacher und sicherer ist es da, die Funktion getImageSize zu benutzen:

                  getImageSize($userfile, $info);
                  if ($info[2]==1 /*gif*/ || $info[2]==2 /*jpeg*/) ...
                  mein Sport: mein Frühstück: meine Arbeit:

                  Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                  Kommentar


                  • #10
                    Wir wollen nur ganz einfache gif und jpg´s Uploaden für einen Shop, welcher ist da nun einfachern?

                    if (preg_match("/(JPG|JPEG|GIF|JPE)$/i",$fileext))

                    oder

                    getImageSize($userfile, $info);
                    if ($info[2]==1 /*gif*/ || $info[2]==2 /*jpeg*/)
                    *winks*
                    Gilbert
                    ------------------------------------------------
                    Hilfe für eine Vielzahl von Problemen!!!
                    http://www.1st-rootserver.de/

                    Kommentar


                    • #11
                      mach das:
                      $bild_type = $GLOBALS["HTTP_POST_FILES"]['bild']['type'];
                      if($bild_type == "image/gif" ||
                      $bild_type == "image/jpeg" ||
                      $bild_type == "image/pjpeg"){
                      copy(...);
                      }

                      das <input type=file muss dann als name=bild haben
                      Beantworte nie Threads mit mehr als 15 followups...
                      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                      Kommentar

                      Lädt...
                      X