Ich hab folgendes Problem:
Ich bin dabei eine XML-Schnittstelle mit einen Telefonanbieter zu programmieren über welche man Webbasiert Rufnummernblöcke von dem Telefonanbieter ordern kann.
Die XML-Schnittstelle (empfangen & senden) selbst ist in Perl programmiert da PHP gewisse Fähigkeiten dafür fehlen.
Um das mal kurz zu veranschaulichen:
Web-Interface (php) ----schreib----> XML-Datei
XML-Schnittstelle (perl, bei mir) ----sendet----> XML-Datei
XML-Schnittstelle (beim Anbieter) <----empfängt---- XML-Datei
---Verarbeitung beim Anbieter unbekannt---
XML-Schnittstelle (beim Anbieter) ----antwortet(sendet)----> neue XML-Datei
XML-Schnittstelle (perl, bei mir) <----empfängt---- neue XML-Datei
Parser (php) <----wertet aus---- neue XML-Datei
Alles ist soweit fertig, das Problem liegt beim letzten Schritt.
Wenn meine XML-Schnittstelle(Perl) die XML-Datei empfängt, dann soll diese automatisch das PHP-Script anstoßen damit die XML-Datei ausgewertet wird, nur das tut die Schnittstelle nicht.
Folgendermaßen sieht der Aufruf von php aus der Perl-Datei aus:
system("/usr/bin/php", "/var/www/xml/parse.php");
Der Webbrobser wurde als Owner gesetzt und ich habe jegliche Rechte für die Datei freigegeben.
Wenn ich nun eine Anfrage an den Telefonanbieter schicke bekomme ich eine Antwort welche die besagte Perl-Datei ausführt. Diese Perl Datei führt ihre Arbeit korrekt durch, das einzige was sie anscheinend nicht tut ist den system() Befehl mit der PHP-Datei von oben auszuführen.
Zu Testzwecken habe ich dem system() Befehl folgendermaßen modifiziert, wobei ich die selben Owner / Rechte gesetzt habe:
system("echo test > /var/www/xml/test.txt");
Wenn die system() Funktion so aussieht klappt es, mit PHP nicht.
Es klappt auch wenn ich die Perl-Datei (welche den system() Befehl beinhaltet) direkt auf der Konsole ausführe und sie nicht über den Telefon-Anbieter von außen ausführen lasse.
Hat jemand eine Idee woran es liegen kann das der system() Befehl die PHP-Datei nicht ausführt?
PS: danke an renee für die schnelle Antwort auf meine letzte Frage, nun ist es leider etwas schwieriger ;)