Page 1 of 1

Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-18 13:30
by techneo
Hallo was habe ich falsch oder vergessen zu konfigurieren?
Ich habe ein Update auf PHP 4.3.3 gemacht da ich iconv für IDNKit gebraucht habe um IDN Domain in Confixx 3.0 aufnehmen zu können.

Nun funktioniert mein PHP Script, welches ich in Cronjob eingebunden haben nicht mehr. Hier der Cronjob:

Code: Select all

0,10,20,30,40,50 * * * *  /usr/bin/php -f/home/www/web1/html/system/sperren.php
Informationen über PHP findet Ihr über meine PHPinfo:

http://www.digisystem.net/info.php

Bin über jede Hilfe Dankbar! Vielleichthabe ich nur bei der Konfiguration etwas vergessen!

Gruß DIGIMan

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-18 13:44
by chris76
was für eine Fehlermeldung bekommst du denn?
Hast du php aus einem Backport installiert oder selber kompiliert?

Ciao Christian

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-18 14:04
by suntzu
Hi,

du hast php als Apache-Modul kompiliert und eingebunden, daher gibt es keine /usr/bin/php. Kannst du die Cronjob-Befehlszeile denn direkt auf der Shell aufrufen? Evtl. musst du php-cgi nachinstallieren.

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-19 09:32
by techneo
Was ist denn PHP-CGI und wie soll es nachinstalliert werden?
Muß PHP neu Kompiliert werden?

Ich habe folgesdes in der Shell eingegeben um zu testen:

Code: Select all

/usr/bin/php -f/home/www/web1/html/system/sperren.php
und bekomme folgende Fehlermeldungen:

Code: Select all

Warning: main(../config/config.php): failed to open stream: No such file or directory in /home/www/web1/html/system/sperren.php on line 4

Warning: main(): Failed opening '../config/config.php' for inclusion (include_path='.:/usr/share/php') in /home/www/web1/html/system/sperren.php on line 4

Warning: main(../config/mysql.php): failed to open stream: No such file or directory in /home/www/web1/html/system/sperren.php on line 5

Warning: main(): Failed opening '../config/mysql.php' for inclusion (include_path='.:/usr/share/php') in /home/www/web1/html/system/sperren.php on line 5

Warning: main(../config/mysql2.php): failed to open stream: No such file or directory in /home/www/web1/html/system/sperren.php on line 6

Warning: main(): Failed opening '../config/mysql2.php' for inclusion (include_path='.:/usr/share/php') in /home/www/web1/html/system/sperren.php on line 6

Warning: Wrong parameter count for date() in /home/www/web1/html/system/sperren.php on line 9

Fatal error: Cannot instantiate non-existent class:  db in /home/www/web1/html/system/sperren.php on line 14
Ich hoffe Ihr könnt damit was anfangen.

Vielen Dank DIGIMan

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-19 12:24
by robertw
Um mit diesen Fehler was anfangen zu können, müsstest Du uns auch die betreffenden Programmzeilen zeigen (zumindest 4-6).

Robert

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-19 12:43
by techneo
in diesen Zeilen macht er nur einen INCLUDE um die Zugangsdaten zu bekommen und den Connect zur Datenbank herzustellen

Zeile 4-6:

include("../config/config.php");
include("../config/mysql.php");
include("../config/mysql2.php");

Das Cript hat vorher einwandfrei funktioniert, nach dem Update von PHP geht es nicht mehr. Wie konfiguriere ich denn PHP-CGI?

Thx DIGIMan

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-19 12:54
by arty
DIGIMan wrote:Wie konfiguriere ich denn PHP-CGI?
RTFM: http://www.php.net/manual/de/features.commandline.php

bye
arty

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-19 13:31
by robertw
Relatives "Include" finde ich persönlich immer schlecht und benutzt daher normalerweise folgendes:

Code: Select all

include(dirname(__FILE__) . "/../config/xxxxxx.php"); 
Robert

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-19 14:17
by techneo
So ich habe jetzt neu kompiliert und die cli eingebunden. Danach die Absolute locale Pfarde gesetzt und nun funktioniert es einwandfrei!

An allen nochmals vielen Dank!!!

DIGIMan

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-19 18:32
by majortermi
RobertW wrote:Relatives "Include" finde ich persönlich immer schlecht und benutzt daher normalerweise folgendes:

Code: Select all

include(dirname(__FILE__) . "/../config/xxxxxx.php"); 
Den Unterschied zu

Code: Select all

include("../config/xxxxxx.php");
merkst du aber nur dann, wenn du PHP-CLI benutzt, oder das include() wiederum in einem Skript, das selbst includet wird, benutzt. Bei PHP-CGI oder auch mod_php wird das Working-Directory nämlich immer auf den Pfad des Skripts gesetzt.

Re: Nach PHP 4.33 Update kann Cronjob kein PHP mehr!

Posted: 2004-03-20 13:59
by robertw
Der Unterschied liegt darin, dass ich meine Variante universell einsetzen kann und nicht bestimmte Einstellungen im PHP voraussetzen muss.

Da ich nicht weiß, ob mein Script, wenn ich es weitergebe, selbst inkludiert wird, per CLI oder direkt eingebunden ist, wähle ich die Variante, die beim Anwender am wenigsten Arbeit erfordert.

Robert