helps_php: Relativ / Absolutverzeichnis ?

Hallo,

ich möchte folgendes bei einem Bild oder Textupload erreichen und nehme folgendes an , aber , ich liege falsch und blicke nicht durch.

Mit dem  action= textupload.php möchte ich erreichen, dass das script
mir den Text in das Verzeichnis /uploads kopiert.
Das Verzeichnis /uploads habe ich auf dem Server erstellt.
In php info habe ich gesehen ,das von mir benutzte Variablen zur Verfügung
stehen. Oder mache ich den Fehler bei Relative/Absolutverzeichnis, da ich
die Meldung erhalte, Zugriff verweigert.
Vielleicht kann mir jemand helfen.
Danke

Inhalt von html code (nicht alles):

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

Inhalt von Php code (nicht alles):

-$uploaddir = $_SERVER['DOCUMENT_ROOT'].'/uploads/';
-if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir . -$_FILES['userfile']['name']))

Fehlermeldungen:
Warning:  move_uploaded_file(/www/htdocs/username//uploads/Neu Textdokument.txt) [function.move-uploaded-file]: failed to open stream: Permission denied in /www/htdocs/username/textupload.php on line 10

Warning:  move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/php29gJJb' to '/www/htdocs/username//uploads/Neu Textdokument.txt' in /www/htdocs/username/textupload.php on line 10

  1. Moin

    Warning:  move_uploaded_file(/www/htdocs/username//uploads/Neu Textdokument.txt) [function.move-uploaded-file]: failed to open stream: Permission denied in /www/htdocs/username/textupload.php on line 10

    Was kann dir diese Fehlermeldung sagen??? PERMISSION DENIED!!!!

    Das heisst, Prüfe die Schreib- und Leserechte des Verzeichnisses /uploads -> Stichwort CHMOD

    Übrigens "username//upload/" ist nicht ganz sauber mit den beiden Slashes.

    Im Code liegt der Fehler:

    $uploaddir = $_SERVER['DOCUMENT_ROOT'].'uploads/';

    wäre besser

    Gruß Bobby

    --
    -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
    -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
    ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
    1. Hallo Bobby,

      vielen Dank.

      Die Schreib und Leserechte(Attribute)habe ich mit Totalcomander geändert und geladen.

      Der slash zu viel ist weg.

      Also das Textdokument wurde scheinbar geladen, aber "wohin" und wo ist der
      Inhalt.

      Bei mir ist das Problem, alle Cracks gehen davon aus das ich tanken kann,
      aber ich finde die Tankstelle nicht
      Und die such ich schon seit vielen,vielen Tagen. Heute mein erster
      Lichtblick.

      Neue Meldung, die restlichen Fehlermeldungen sind weg, aber den Hinweis
      mit den Rechten  hab ich nicht in Php-forum, php Hanbuch oder
      sonstwo gesehen,bin ab und zu mal über chmod gestossen,aber nicht erkannt
      wie wichtig der ist.

      --------------------------------------------------------------------------
      PHP: Info
      _SERVER["DOCUMENT_ROOT"] /www/htdocs/username/uploads

      bei uploads müsste jetzt doch der Inhalt von textdokument.txt stehen ?
      -------------------------------------------------------------------------
      Neue Meldung:
      Possible file upload attack!  Here's some debugging info:
      Array
      (
          [userfile] => Array
              (
                  [name] => Neu Textdokument.txt
                  [type] => text/plain
                  [tmp_name] => /tmp/phpPY7azX
                  [error] => 0
                  [size] => 57
              )
      -------------------------------------------------------------------------
      Grüsse helps_php (Arno)

      1. Moin

        aber den Hinweis
        mit den Rechten  hab ich nicht in Php-forum, php Hanbuch oder
        sonstwo gesehen,bin ab und zu mal über chmod gestossen,aber nicht erkannt
        wie wichtig der ist.

        Hat auch weniger etwas mit PHP zu tun. Ist eher in der Servertechnik angesiedelt. Solange du keinen Zugriff auf den Server hast, kannst du da auch nix verändern. PHP gibt lediglich das Werkzeug (Die Funktion chmod()) um in die Servertechnik eingreifen zu können.

        PHP: Info
        _SERVER["DOCUMENT_ROOT"] /www/htdocs/username/uploads

        Versteh ich jetzt nicht ganz. Im Verzeichnis /uploads/ müsste nun ein Textdokument liegen ("Neu Textdokument.txt"), mit dem du weiterarbeiten kannst.

        Neue Meldung:
        Possible file upload attack!

        Leider kann ich nicht sagen, ob es eine Serverbeschränkung für TXT-Dateien gibt, denn "Possible file upload attack!" heißt übersetzt: "Möglicher Datei-Upload Angriff!"

        Versuch mal bitte ein Bild hochzuladen, ob da der selbe Fehler Auftritt.

        Gruß Bobby

        --
        -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
        -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
        ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
        1. Hallo Bobby,

          erst mal vielen Dank !

          ------------------------------------------------------------------------

          Hat auch weniger etwas mit PHP zu tun. Ist eher in der Servertechnik angesiedelt. Solange du keinen Zugriff auf den Server hast, kannst du da auch nix verändern. PHP gibt lediglich das Werkzeug (Die Funktion chmod()) um in die Servertechnik eingreifen zu können.

          Aber ohne die Attribut Einstellungen zu verändern hat es bei mir nicht
          funktioniert. Mein Server ist bei all-inkl.
          --------------------------------------------------------------------------

          _SERVER["DOCUMENT_ROOT"] /www/htdocs/username/uploads

          Versteh ich jetzt nicht ganz. Im Verzeichnis /uploads/ müsste nun ein Textdokument liegen ("Neu Textdokument.txt"), mit dem du weiterarbeiten kannst.

          Genau das dachte ich auch, aber da ist nichts.
          Meine Frage, ich bin irgendwo in der PHP-FAQ über absolute URL und relative
          URL gestossen, finde es leider nicht mehr,
          meine Homepage ist auf der Festplatte abgespeichert unter z.B.:
          d:\daten\homepage\bilderladen und müsste ich jetzt folgenden Pfad einstellen:?
          SERVER["DOCUMENT_ROOT"]/daten/homepage/bilderladen/www/htdocs/username/uploads
          wobei /daten/homepage/bilderladen ja auf dem Server nicht existiert.
          -------------------------------------------------------------------------

          Possible file upload attack!

          Sorry ist bei mir als print im skript
          ---------------------------------------------------------------------------

          Versuch mal bitte ein Bild hochzuladen, ob da der selbe Fehler Auftritt.

          Kann ich leider erst heute abend machen, muss erst wieder im Skrip mit
          meinen beschränkten Fähigkeiten rumwurschteln. Wie lange kann ich nerven ?

          Grüsse Arno

          1. Moin

            $_SERVER["DOCUMENT_ROOT"]/daten/homepage/bilderladen/www/htdocs/username/uploads

            Nein Nein. Das wäre Quatsch, da du ja schon mit $_SERVER['DOCUMENT_ROOT'] den absoluten Pfad des Servers ausliest. Also daran kann es nicht liegen. Da ja ein Bild erkannt uns verarbeitet wird.

            Possible file upload attack!
            Sorry ist bei mir als print im skript

            Da wird der Hund begraben sein. Ich tippe eher auf einen anderen Fehler im weiteren Script, da der upload und die verwendung so funktionieren sollte.

            Gruß Bobby

            --
            -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
            -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
            ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
  2. Hallo,

    wie aus der Fehlermeldung zu sehen ist da denke ich ein "/" zwischen username und uploads zu viel.

    Gib uploads mal ohne den "/" an.

    Gruß Jan

    1. Hallo,

      wie aus der Fehlermeldung zu sehen ist da denke ich ein "/" zwischen username und uploads zu viel.

      Gib uploads mal ohne den "/" an.

      Gruß Jan

      Hallo Jan,
      vielen Dank für die Antwort.
      Ich bin bei Bobby und vielleicht kann er mir weiterhelfen.
      Grüsse helps_php (Arno)