Via PHP Verzeichnis auf Server erstellen... Problem mit Variable

  • Hallo liebe community,

    ich habe mich heute mal etwas mit der Erstellung von Ordnern auf dem Server via php beschäftigt. Nach ewigem hin und her klappt die Erstellung nun endlich.

    Mein Problem ist nur, dass ich für den Ordner eine Variable mit der ID verwenden möchte. Jedoch heißt dann der Ordner auf dem Server nicht "user123" sondern "$user"

    Ich denke es wird irgendwo ein pünktchen zu wenig, etc. sein, aber ich finde den Fehler einfach nicht. Könnt Ihr mir weiterhelfen?

    PHP
    mkdir ( 'publisher/.$id.', 0700 )

    Liebe Grüße und Vielen Dank!

  • Du hast die Grundsätzlichen Syntaxregelnnicht verstanden.
    1. Variablen in strings, die mit ' begernzt sind, werden nicht erkannt
    2. Der . Operator verkettet Strings, nicht elemente in diesen

    Dein Ordner würde also, wäre 1. nicht, .Username. heissen...


    [/code]

    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.

    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  • habe den fehler gefunden:

    PHP
    mkdir ( 'publisher/'.$_POST[id].'', 0700 )


    Ohohohoh, ganz böser Anfängerfehler. Du übernimmst die varaible direkt aus dem _POST array in den string, da kann man wunderbar hacken.
    z.B. in $_POST['id'] steht das:

    Code
    ../../foobar/xordner/plum

    Dann wird ein ganz anderer Ordner erstellt, als du wilst. Filtere alle Sonderzeichen raus, z.B. mit regular-expressions.

    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.

    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  • Hi leute,

    schonmal vielen Dank für eure hilfreichen Verbesserungsvorschläge. Vor allem die Sicherheitslücke wär mir garnicht aufgefallen. Allerdings ist der Bereich auf der Website passwortgeschützt. Also nur registrierte User könnten überhaubt mist bauen ;)