Hoi,
Ik draai een PHP script via de command line (PHP 5.0.4, Windows XP) om wat files te uploaden naar FTP. Maar zodra dat fout gaat, dan moet ik in een ander systeem een of andere status omzetten. Helaas kan PHP daar niet direct bij, maar is het wel mogelijk om via een soort API dat te doen. Echter dat gaat via een extern programma. Nu roep ik het volgende aan:
In de praktijk levert dat iets als dit op:
Ik heb ook al de andere functies geprobeerd, shell_exec en system, maar die doen eigenlijk het zelfde...
Is er wellicht een functie om een short path te krijgen? Alternatief is eventueel om het weg te schrijven naar een batch bestand en dat uit te voeren... denk dat ik dat maar als work around doe, maarja, het is niet echt een oplossing...
Ik draai een PHP script via de command line (PHP 5.0.4, Windows XP) om wat files te uploaden naar FTP. Maar zodra dat fout gaat, dan moet ik in een ander systeem een of andere status omzetten. Helaas kan PHP daar niet direct bij, maar is het wel mogelijk om via een soort API dat te doen. Echter dat gaat via een extern programma. Nu roep ik het volgende aan:
PHP:
1
| exec( escapeshellarg( $GLOBALS["SYSTEM"]["SCRIPTENGINE"])." ".escapeshellarg( "-h")." ".escapeshellarg( $GLOBALS["SYSTEM"]["SERVERADDRESS"].":".$GLOBALS["SYSTEM"]["SERVERPORT"])." ".escapeshellarg( "-u")." ".escapeshellarg( $GLOBALS["SYSTEM"]["USERNAME"])." ".escapeshellarg( "-p")." ".escapeshellarg( $GLOBALS["SYSTEM"]["PASSWORD"])." ".escapeshellarg( $GLOBALS["SYSTEM"]["ERRORSCRIPT"])." ".escapeshellarg( $inJobID)); |
In de praktijk levert dat iets als dit op:
Als ik dat via de commandline uitvoer is het geen enkel probleem. Echter PHP geeft de volgende foutmelding:"C:\Program Files\System\ScriptEngine.exe" "-h" "localhost" "-u" "uid" "-p" "u" "C:\My Workflow\scripts\ErrorHandler.txt" "parameter"
Dat gebeurd eigenlijk zodra ik de parameters toevoeg, want alleen met ScriptEngine.exe dan wordt er wel wat aangeroepen.'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
Ik heb ook al de andere functies geprobeerd, shell_exec en system, maar die doen eigenlijk het zelfde...
Is er wellicht een functie om een short path te krijgen? Alternatief is eventueel om het weg te schrijven naar een batch bestand en dat uit te voeren... denk dat ik dat maar als work around doe, maarja, het is niet echt een oplossing...
"There are 10 kinds of people in the world, those who understand binary and those who don't" | Werkbak specs