steffen: problem mit Ordner löschen über exec()

Hallo Forumleser,

ich möchte gerne Ordner mit allen unterordnern löschen. Hab dazu die einfachste Methode gesucht und fand das hier:

$directory = escapeshellarg("E:\Objektfotos\Objektfotos".$_GET['id']);
exec("rmdir /s /q $directory");

Nun bringt der Brwoser mir leider den Fehler:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in E:\Objektfotos\index.php on line 385

Wie muss ich das directory denn angeben? Wenn ich es direkt über die cmd mache, klappt es, wie es soll.

Zu Hülf :(

steffen

  1. Hi,

    Nun bringt der Brwoser mir leider den Fehler:

    Nicht der Browser, sondern PHP selber natuerlich.

    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE,

    Was macht ein \ in Strings in PHP?
    Riiichtig, es escaped ein eventuell nachfolgendes Sonderzeichen.

    Und was haben wir in deinem Fall?

    $directory = escapeshellarg("E:\Objektfotos\Objektfotos".$_GET['id']);

    ^ Stringanfang             ^^ *escapetes* Sonderzeichen,
                                                                also *kein* Stringbegrenzer

    ... und damit nichts mehr, was den String beendet.

    RTFM

    MfG ChrisB

    --
    "The Internet: Technological marvel of marvels - but if you don't know *what* you're lookin' for on the Internet, it is nothing but a time-sucking vortex from hell."
    1. Hi ChrisB,

      $directory = 'E:\Objektfotos\Objektfotos\'.$_GET['id'];
      exec("rmdir /s /q ".$directory);

      So klappts.

      Danke dir :)

      1. Hello,

        $directory = 'E:\Objektfotos\Objektfotos\'.$_GET['id'];

        exec("rmdir /s /q "".$directory.""");

        So klappts.

        aber nur solange, bis der Pfad ein Leerzeichen enthält.
        Das muss auch noch maskiert werden oder der Path-String durch Häkchen gebunden werden, sonst macht exec ZWEI Argumente daraus und schwupps sind zwei Verzeichnisse verschwunden, die Du eigentlich gar nicht löschen wolltest.

        Ein harzliches Glückauf

        Tom vom Berg

        --
        Nur selber lernen macht schlau
        http://bergpost.annerschbarrich.de
  2. Lieber steffen,

    vielleicht kann Dir meine Dateiverwaltung helfen, Dein Problem direkt online ohne shell zu lösen?

    Liebe Grüße aus Ellwangen,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)