Upload - bin ich zu blöd???

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

  • Upload - bin ich zu blöd???

    hallo,

    ich versuche verzweifelt, ein php-upload-script, verpackt in eine html-seite, zu entwickeln, aber ich kriege immer die fehlermeldungen:

    Unable to create 'data/dasvonmirupgeloadetefile': Keine Berechtigung in /www/"meinroot"/uploadarea.php

    und

    Unable to move '/tmp/phphqtYZW' to 'data/dasvonmirupgeloadetefile' in /www/"meinroot"/uploadarea/uploadarea.php

    woran kann das liegen???

    hier das script:

    <?php
    // Datei hochladen
    echo "<form action=\"uploadarea.php\" name=\"upl\" method="post" enctype="multipart/form-data">";
    echo "<INPUT TYPE=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"50000000000\">";
    echo "<b>Datei hochladen:</b> <br><br>";
    echo "<INPUT NAME=\"userfile\" TYPE=\"file\" size=50><BR><BR>";
    echo "<INPUT TYPE=\"hidden\" name=\"action\" value=\"upload\">";
    echo "<input type=\"submit\" value=\" Hochladen \">";
    echo "</form>";
    ?>

    <?php
    if ($action == "upload") {
    move_uploaded_file($userfile, "data/$userfile_name");
    $datei = "data/$userfile_name";
    @chmod($datei,0777);
    echo "<script language=\"javascript\">alert('Datei kopiert: $userfile_name.');</script>";
    }
    ?>

    noch eine frage. ist die chmod-angabe nötig?

    ich wäre dankbar für jede hilfe!!!!!

    viele grüsse,

    andrea.

  • #2
    2. chmod ist nicht nötig
    1. existiert der Zielordner und hat php dort Schreibrechte?
    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


    • #3
      Hi - Willkommen in der Community!

      1) chmod ändert die Zugriffsrecht analog zu Unix Derivaten:
      X=1 (executeable), W=2 (writeable), R =4 (readable) d.h mit 7 hast Du Schreib-, Lese- und Ausführrechte. Die vier Ziffern 0UGO stehen für User, Group, Other analog der Unix-Schreibweise z.B. (xwrxwr--r)
      Wenn du sie wegläßt hast Du als Defaultvorgabe 0666. Also 3x rw.

      2)
      Unable to move '/tmp/phphqtYZW' to 'data/dasvonmirupgeloadetefile' in /www/"meinroot"/uploadarea/uploadarea.php
      Was ist jetzt dein Uploadfile? '/tmp/phphqtYZW' oder 'data/dasvonmirupgeloadetefile'

      3) Die Referenz von move_uploaded_file:
      boolean move_uploaded_file (string file, string targetdir)
      Du gibst den full path an aber nicht die Directory.

      4) Unterbreche deine Scripts und schreibe in HTML-Tags.

      5) Nutze zu Postings
      PHP-Code:
       // unsere PHP-Tags 
      Hoffe, konnte Dir helfen

      Blaster
      Yuppi, endlich Elite ...

      Kommentar


      • #4
        puh, mein gott bin ich froh daß mir hier jemand zu helfen versucht!!! ich muß zugeben, ich stehe ganz am anfang mit php, und manches ist für mich wirklich nur bahnhof...

        @ titus:

        ähem... wie finde ich denn bitte raus, ob php in dem ordner schreibrechte hat?

        @ blaster:

        zu 2: 'data/dasvonmirupgeloadetefile'

        zu 3: ???

        zu 4: äh... häh? die html-tags sind um das script drumrum... oder meinst du, ich kann einige php-tags durch html-tags ersetzen?

        also entschuldigt, wenn ich scheinbar blöde fragen stelle, aber glaubt mir, ich kann es am besten lernen, wenn ich mich mit so spezifischen sachen auseinandersetze...

        Kommentar


        • #5
          Original geschrieben von Chaosbraut
          [...]also entschuldigt, wenn ich scheinbar blöde fragen stelle, aber glaubt mir, ich kann es am besten lernen, wenn ich mich mit so spezifischen sachen auseinandersetze...
          Ach ja, ... ... faszinierend! (Blut ist grün )

          zu 2) Und warum sagt die Fehlermeldung das Gegentei, wohin mit den Upload-Filel?!

          zu 3) Wohl eher move_uploaded_file ($userfile, "/data"); oder ..."data"); oder "/data/"),; Müsstest Du mal ausprobieren. Oder ist $userfile_name ein Verzeichnis?!?

          zu 4) Ach so, es sah so aus als schreibst Du PHP-Files durchgehend in PHP - Sorry!

          ChaosBraut, der Name passt! (kl. Scherz)

          cu

          Blaster
          Yuppi, endlich Elite ...

          Kommentar


          • #6
            quatsch, blut ist blau...

            warum meinst du wohl habe ich den namen gewählt?

            zu 2) gute frage nächste frage. es sieht so aus als ob der server aus dem file erstmal eine temp-datei macht und das nicht wieder hinkriegt.

            zu 3) aaah! da geht ja sogar mir ein licht auf!!! (wieso gibt´s hier nicht das smiley mit dem licht???)

            ich werd das mal ausprobieren. du wirst lachen, ich habe den code von dr. web... eigentlich hat bis jetzt alles gefunzt, was ich mir da so rausgeholt habe. hätte nicht gedacht, daß da so blöde fehler drin sind...

            ich sag bescheid wenn ich´s ausprobiert habe.

            danke!!!

            Kommentar


            • #7
              ich schon wieder, und wie soll´s auch anders sein: jetzt kriege ich sofort `ne fehlermeldung und gar nicht erst das formular zu sehen:

              Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in /www/.../uploadarea.php on line 21

              line 21 ist diese:


              echo "<form action=\"uploadarea.php\" name=\"upl\" method="post" enctype="multipart/form-data">";

              was will er? wo will er da ein komma oder semikolon hinhaben bitte? hallo????

              hilfe!!!

              Kommentar


              • #8
                fehende da nicht ein paar 'backslash' vor dem " oder so!

                Erst denken, dann posten!

                Ich reich dich mal weiter! Du bist mir zu anstrengend.

                cu

                Blaster
                Yuppi, endlich Elite ...

                Kommentar


                • #9
                  PHP-Code:
                  echo "<form action=\"uploadarea.php\" name=\"upl\" method=\"post\" enctype=\"multipart/form-data\">"
                  So müsstes gehen.

                  Aber die Fehlermeldung sagt doch schon alles.
                  Das seh ich ja schon, dabei steh ich (glaub ich) auch noch nicht weit vom Anfang weg.

                  Kommentar


                  • #10
                    huh danke! ich glaube ich sehe einfach den wald vor lauter bäumen nicht...

                    aber natürlich ist nun wieder ein neuer fehler aufgetreten, zu dem ich mich nun auch schon durch sämtliche handbücher gelesen habe und echt nix gefunden habe:

                    Warning: open_basedir restriction in effect. File is in wrong directory in /www/htdocs/.../uploadarea.php on line 32

                    line 32 ist diese:

                    move_uploaded_file ($userfile, "/data");

                    ich habe auch sämtliche variationsvorschläge von blaster ausprobiert, dieser hier gibt die wenigsten fehlermeldungen.

                    zu dem script habe ich gelesen, man solle einfach ein unterverzeichnis namens "data" anlegen, im gleichen verzeichnis in dem die php-datei liegt. das würde dann funktionieren. tut es aber wie man oben sieht leider nicht...

                    Kommentar


                    • #11
                      hat sich erledigt, mein provider hat mir geholfen! trotzdem danke an alle, die hierzu gepostet haben.

                      Kommentar

                      Lädt...
                      X