bilder hochladen...

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

  • bilder hochladen...

    hallo. peet hier.

    ich hab hier ein skript, das mir bilddateien in ein verzeichnis laden soll.

    <?php

    $uploaddir = "../upload/pictures/";

    $max="20000";

    if($_FILES['userfile']['size'] > $max){
    print "Die Bilddatei ist zu groß. Die Größe darf 1 MB nicht übersteigen!";
    }

    else{

    if(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . $_FILES['userfile']['name'])) {
    print "Die Datei wurde erfolgreich hochgeladen.";
    }

    else {
    print "Fehler beim Hochladen! Vresuchen Sie es später nocheinmal.";
    }
    }

    ?>

    die form dazu:

    <form enctype="multipart/form-data" action="up.php" method="post">

    <input type="hidden" name="MAX_FILE_SIZE" value="20000">

    <input name="userfile" type="file" size="100">
    <br><br>

    <input type="submit" value="Bilddatei hochladen ...">

    </form>

    wenn ich nun MAX_FILE_SIZE und $max so setze, dass eine datei, die ich dann hochlade, kleiner ist als $max, dann gelingt der upload...meldung "Die Datei wurde erfolgreich hochgeladen.".

    lade ich eine datei hoch, die größer ist als $max, dann wird nicht die meldung "Die bilddatei ist zu groß" angezeigt, sondern die meldung "Fehler beim hochladen...".

    was läuft da falsch?

  • #2
    1. code in php-tags setzen, bitte.
    2. $_FILES['userfile']['error'] verarbeiten.

    Kommentar


    • #3
      Dein MAX_FILE_SIZE verhindert den upload. Das heisst die datei wird nicht übertragen, daher ist $_FILES['size'] = 0 (jaja sie wird übertragen aber verworfen)
      also bedingung erfüllt, move_uploaded_file hat nichts zum verschieben also kommt die letzte ausgabe...
      benutz auch die funktion is_uploaded_file....
      Beantworte nie Threads mit mehr als 15 followups...
      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

      Kommentar


      • #4
        datei upload

        hallo.

        ich sitz immer noch an meinem upload skript. bin kurz davor, aber eine kleinigkeit funzt nicht.

        das skkript soll die dateien in den ordner pictures geladen bekommen, der im selben verzeichnis liegt, wie das skript selbst.

        PHP-Code:


        <?php 

        function check_datei(){ 

        global 
        $userfile_name$dateiname$zwischen$umb

        $zwischen=$umb."$dateiname";

        if(
        file_exists($zwischen)){ 
            
        $umb=$umb+1;
                
        check_datei(); 


        $dateiname=$zwischen;

        }


        if(!empty(
        $userfile)) 

            
        $dateiname $userfile_name;
         
            if(
        file_exists($userfile_name)){ 
                
        check_datei(); 
                echo 
        "Die Datei existierte bereits."
            } 

            if(
        $userfile_size $MAX_FILE_SIZE){ 
                echo 
        "Die Datei ist zu groß"
            } 
            
            else{ 
                
        move_uploaded_file ($userfile"pictures/$dateiname");
                
                if(
        file_exists($dateiname)){ 
                    echo 
        "Die Datei wurde erfolgreich hochgeladen."
                } 
                
                elseif(!
        file_exists($dateiname)){ 
                    echo 
        "Fehler beim Hochladen!"
                } 
            } 


        ?>

        für die betreffende stelle wird aber die meldung fehler beim hochladen... erzeugt, obwohl die datei tatsächlich am richtigen ort gespeicher wird.

        $_FILES['userfile']['error'] bringt ().
        error_reporting(E_ALL) bringt garnix.

        wenn ich die datei aber in das verzeichnis laden lasse, in dem das skript liegt, dann funktionierts.

        was stimmt denn da nicht?
        Zuletzt geändert von peetjoff; 21.01.2005, 16:14.

        Kommentar


        • #5
          auch du darfst die php-tags benutzen.
          was ist denn nun dein problem?

          Kommentar


          • #6
            lesen!
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              korrektur

              peet hier.

              sorry! das hab ich zuerst anders angegeben, aber die datei wird DOCH am richtigen ort gespeichert. nur kommt eben diese fehlermeldung. die datei wird anscheinend nicht wiedergefunden, nachdem sie gespeichert wurde.

              ???

              Kommentar


              • #8
                Re: korrektur

                Original geschrieben von peetjoff
                die datei wird anscheinend nicht wiedergefunden, nachdem sie gespeichert wurde.
                wie wär's, wenn du file_exists nicht nur den namen der datei verrätst, sondern auch den pfad?
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  funzt !!!

                  ok.

                  jetz klappts. danke.

                  p.s. sorry für die tags.

                  Kommentar

                  Lädt...
                  X