![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: Kris, 31. 10. 2005, 15:34
Hi !
Ich möchte per exec() system() passthru() ein mkdir ausführen.
Problem ist er übernimmt nicht meine Parameter :/
passthru(mkdir /asdasdasd/asddasdasdkf/kjkaljdklasj);
da dies hier nicht auf dem Server möglich ist müsste er noch eine "1" bei der Variable $? ausgeben ...
kann mir jemand sagen wie ich den Befehl
a) richtig ausführe
und
b) die Variable $? direkt danach richtig ausgeben lasse ?
mfg
KRIS
Die folgende Nachricht zum Thema stammt von: Sven Rautenberg, 31. 10. 2005, 16:17
Moin!
»» Ich möchte per exec() system() passthru() ein mkdir ausführen.
Was recht ungewöhnlich ist, schließlich existiert eine entsprechende PHP-Funktion doch bereits: http://www.php.net/mkdir
»» Problem ist er übernimmt nicht meine Parameter :/
»»
»» passthru(mkdir /asdasdasd/asddasdasdkf/kjkaljdklasj);
Kann ich verstehen, passthru() erwartet einen String als Befehl - ein String zeichnet sich aber durch Anführungszeichen als Begrenzer aus.
Und es wäre eventuell - falls irgendwelche dynamisch eingefügten Stringbestandteile in den Befehl wandern sollen - eine sehr sehr gute Idee, escapeshellarg() und/oder escapeshellcmd() auf den String bzw. seine Teile anzuwenden, wie in http://www.php.net/passthru empfohlen.
»» da dies hier nicht auf dem Server möglich ist müsste er noch eine "1" bei der Variable $? ausgeben ...
PHP kennt keine Variable $?, sprichst du vielleicht doch irrtümlich von Perl?
»» kann mir jemand sagen wie ich den Befehl
»» a) richtig ausführe
bool mkdir ( string pathname [, int mode [, bool recursive [, resource context]]] )
Mit anderen Worten:mkdir("/asdasdasd/asddasdasdkf/kjkaljdklasj",0755);
sollte ausreichen.
»» b) die Variable $? direkt danach richtig ausgeben lasse ?
Wie erwähnt: $? ist in PHP kein gültiger Variablenname. Folglich kann man deren Inhalt auch nicht ausgeben lassen.
- Sven Rautenberg
--
My sssignature, my preciousssss!
© 1998-2006
Impressum, Software: Classic Forum