Hallo sideboy,
ich vermute es liegt daran, dass die php-Dateien im falschen Verzeichnis (in dem ArbeitsVerzeichnis das der Cron Daemon verwendet), anstatt im Verzeichnis wo deine Start php Datei liegt…
am einfachsten könntest du es probieren wenn du dieses an den Start deiner start php datei anfügst:
chdir(‚verzeichnis wo die zu startenden .php liegen‘);
anderer code…
exec(’/usr/bin/php ./’.$datei.’.php’);
oder aber:
$scriptpath=dirname(realpath($_SERVER[‚SCRIPT_NAME‘]));
anderer code…
exec(’/usr/bin/php ‚$scriptpath.$datei.‘.php’);
wenn du dann deine Datei mit php /home/sr-softwareat/startme.php aufrufst
wird $scriptpath auf /home/sr-softwareat gesetzt…
und du hast das verzeichnis wo deine start php liegt…
oder vieleicht noch einfacher:
<php>
chdir(dirname(realpath($_SERVER[‚SCRIPT_NAME‘])));
anderer code…
exec(’/usr/bin/php ./’.$datei.’.php’);
restlicher code…
</php>
dann brauchst du nur eine neue Zeile am Dateianfang und der Rest bleibt gleich…
habe ein Problem und zwar rufe ich eine PHP Datei mittels
cronjob auf und das funktioniert auch.
In der PHP Datei rufe ich verschiedene Dateien innerhalb ein
Schleife auf und für diese Dateien per exec() auf - ein
Beispiel innerhalb der Schleife
exec(’/usr/bin/php ./’.$datei.’.php’);
Die Dateien werden aber leider nicht ausgeführt, weiß jemand
woran das liegt ? Rufe ich die Datei, welche auch über den
Cron aufgerufen wird auf so werden die Dateien mit exec
ausgeführt.