PHP script mit cronjob ausführen und das Ergebniss ausgeben

Bash, Shell, PHP, Python, Perl, CGI
bolle
Posts: 34
Joined: 2003-01-20 18:25

PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by bolle »

Ich habe ein PHP Script, welches eine ziemlich umfangreiche Abfrage in einer grossen MySQL DB durchführt.
Wenn das Script per Browser aufgerufen wird, dauert die Abfrage einfach zu lange, so das die Seite ewig braucht um geladen zu werden.

Deswegen mein Anliegen.
Gibt es eine Möglichkeit, das PHP Script irgendwie zeitgesteuert auszuführen und die Ergebnisse dabei in eine Datei schreiben zu lassen, so das dann beim Aufruf der Webseite nur der Inhalt der Datei gelesen werden muss?
krispin
Posts: 216
Joined: 2003-04-14 16:30

Re: PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by krispin »

Cron ist schon ne gute Idee.

Wenn dein script auch nur irgendwas ausgibt, so sendet Cron das dann per Email an root.

Wenn dein script z.B. ausgibt:

Code: Select all

MySQL: ...ok
PHP: ...kapputt
bekommste das so per Email.

MfG
Krispin
bolle
Posts: 34
Joined: 2003-01-20 18:25

Re: PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by bolle »

Hmm..aber ich möchte ja keine Email, sondern das die Abfrageergebnisse in einer Datei landen, die ich dann mit dem Browser aufrufen kann :)
krispin
Posts: 216
Joined: 2003-04-14 16:30

Re: PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by krispin »

Tag,

sind das Shell-Programme, die du in deinem Script ausführen möchtest?
Oder wie hattest du vor, das du realisieren?

MfG
Krispin
olaf.dietsche
Posts: 401
Joined: 2002-12-19 02:06
Location: Siegburg

Re: PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by olaf.dietsche »

Bolle wrote:ich möchte ja keine Email, sondern das die Abfrageergebnisse in einer Datei landen, die ich dann mit dem Browser aufrufen kann
Versuch's mit Ausgabeumleitung

Code: Select all

php skript.php >datei.html
bolle
Posts: 34
Joined: 2003-01-20 18:25

Re: PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by bolle »

Ausgabeumleitung funktioniert. THX :)

Allerdings steht jetzt in der Datei ganz oben:

Code: Select all

X-Powered-By: PHP/4.2.2
Content-type: text/html
Kann ich das hinbekommen, das das nicht mit geschrieben wird?
olaf.dietsche
Posts: 401
Joined: 2002-12-19 02:06
Location: Siegburg

Re: PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by olaf.dietsche »

Wenn es immer zwei Zeilen sind, kannst du tail verwenden

Code: Select all

php skript.php | tail +2 >datei.html
bolle
Posts: 34
Joined: 2003-01-20 18:25

Re: PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by bolle »

Big THX, olaf :)
Klappt einwandfrei. Hat mir sehr geholfen.
krispin
Posts: 216
Joined: 2003-04-14 16:30

Re: PHP script mit cronjob ausführen und das Ergebniss ausgeben

Post by krispin »

hmmm, etwas Professioneller wäre:
php -q script.php | >datei.html
-q unterdrückt die Header-Ausgabe, aber das tut nun nichts zur sache ;)

MfG
Krispin