Précédent   Forum des professionnels en informatique > PHP > Outils
Outils Forum d'entraide sur les outils pour développeurs PHP : EDI, installation, administration... Avant de poster : FAQ outils, toutes les FAQ PHP et les comparatifs
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/08/2006, 13h30   #1
Membre à l'essai
 
Inscription : juillet 2005
Messages : 67
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 67
Points : 22
Points : 22
Par défaut Cron - Mysql

Salut à tous,
je cherche comment exécuter un script php périodiquement, au moyen d'un cron :

Code :
1
2
 
php -qf /www/cronjob.php
Seulement voici l'erreur qu'il me fait quand je tape la commande dans le shell histoire de la tester :

Code :
1
2
3
 
 
PHP Warning:  Unknown(): Unable to load dynamic library '/usr/lib/php4/pgsql.so' - libpq.so.3: cannot open shared object file: No such file or directory in Unknown on line 0
Du coups impossible d'effectuer mes requêtes sur ma base Mysql.
J'ai lu qu'il y avait une possibilité pour que le php en ligne de commande utilise un autre fichier php.ini dans lequel l'extension ne serait pas chargée, mais j'en sais pas plus.

Quelqu'un à une idée svp

Big Merci !!!
Teufboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 15h16   #2
Membre émérite
 
Inscription : mai 2004
Messages : 709
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : mai 2004
Messages : 709
Points : 852
Points : 852
C'est normal, la version cli de PHP ne charge pas les modules automatiquement. Fais un man php et regarde du côté de l'option -c.

Cette option te permet de préciser où php-cli doit lire son php.ini ou son php-cli.ini
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
:quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
Jabber: ripat at im.apinc.org
ripat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 16h46   #3
Membre à l'essai
 
Inscription : juillet 2005
Messages : 67
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 67
Points : 22
Points : 22
Par défaut Ouaaa cool quelqu'un qui semble connaître mon prob !!!

Salut,
Merci bien pour ta réponse, mais je reste malgrés tout un peu dans le brouillard.
Voici les différents php.ini qui sont sur mon serveur :

Code :
1
2
3
4
5
6
 
/etc/php.ini.saved_by_psa
/etc/php.ini
/usr/include/php/main/php_ini.h
/usr/local/psa/admin/conf/php.ini
/usr/local/psa/admin/include/php/main/php_ini.h
Donc en suivant tes conseils j'ai testé :

Code :
1
2
3
4
5
6
7
8
 
/usr/bin/php -qf -c /etc/php.ini /www/cron.job.php
PHP Warning:  Unknown(): Unable to load dynamic library '/usr/lib/php4/pgsql.so' - libpq.so.3: cannot open shared object file: No such file or directory in Unknown on line 0
No input file specified.
 
/usr/bin/php -qf -c /usr/local/psa/admin/conf/php.ini /www/cron.job.php
PHP Warning:  Unknown(): Unable to load dynamic library '/usr/lib/php4/pgsql.so' - libpq.so.3: cannot open shared object file: No such file or directory in Unknown on line 0
No input file specified.


Tu as encore un peu plus de précisions stp !

Merci bien
Teufboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 17h55   #4
Membre émérite
 
Inscription : mai 2004
Messages : 709
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : mai 2004
Messages : 709
Points : 852
Points : 852
Il y a deux problèmes:

No input file specified.
Ça, c'est parce-que tu as mal respecté l'ordre des options. Essaye:
php -c ..... -f /www/cron.job.php

Unable to load dynamic library
Apparemment, il ne trouve pas le php.ini qui charge ton module. Pour le trouver fais un:
grep -Eir 'pgsql\.so' /etc/*

Sinon, tu peux toujours localiser le module (pgsql.so) et faire toi-même un fichier ini qui ne comportera qu'une seule ligne:
extension=/chemin/vers/pgsql.so
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
:quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
Jabber: ripat at im.apinc.org
ripat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 19h04   #5
Membre à l'essai
 
Inscription : juillet 2005
Messages : 67
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 67
Points : 22
Points : 22
Par défaut Presque !!!

Oui,
il me semble qu'on y est presque !

Le résultat du grep est :

Code :
1
2
 
/etc/php.d/pgsql.ini:extension=pgsql.so
Donc, selon tes indiquations :

Code :
1
2
3
4
 
/usr/bin/php -c /etc/php.d/pgsql.ini -f /www/cron.job.inc.php
PHP Warning:  Unknown(): Unable to load dynamic library '/usr/lib/php4/pgsql.so' - libpq.so.3: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  Unknown(): Unable to load dynamic library '/usr/lib/php4/pgsql.so' - libpq.so.3: cannot open shared object file: No such file or directory in Unknown on line 0
Alors que le fichier /usr/lib/php4/pgsql.so existe

Encore une idée
Teufboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 20h25   #6
Membre émérite
 
Inscription : mai 2004
Messages : 709
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : mai 2004
Messages : 709
Points : 852
Points : 852
Mets le chemin complet de pgsql.so, celui qui devrait se trouver dans extension_dir de ton .ini

Il cherche également libpq.so.3 apparemment. Regarde de ce côté aussi.
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
:quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
Jabber: ripat at im.apinc.org
ripat est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 07h16   #7
Membre à l'essai
 
Inscription : juillet 2005
Messages : 67
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 67
Points : 22
Points : 22
Par défaut pfff

Salut,
voici les résultats ce que j'ai fait suite à tes conseils :

Modification du fichier /etc/php.d/pgsql.ini :

Code :
1
2
3
 
; Enable pgsql extension module
extension=/usr/lib/php4/pgsql.so
Mais je crois que ce n'est pas la bonne piste car il semble déjà connaître le chemin, car quand je retente :

Code :
1
2
3
4
/usr/bin/php -c /etc/php.d/pgsql.ini -f /www/cron.job.inc.php      
PHP Warning:  Unknown(): Unable to load dynamic library '/usr/lib/php4//usr/lib/php4/pgsql.so' - /usr/lib/php4//usr/lib/php4/pgsql.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning:  Unknown(): Unable to load dynamic library '/usr/lib/php4//usr/lib/php4/pgsql.so' - /usr/lib/php4//usr/lib/php4/pgsql.so: cannot open shared object file: No such file or directory in Unknown on line 0
Quand au fichier libpq.so.3, il est introuvable sur la machine.

Que faire ensuite docteur ?
Teufboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/08/2006, 12h20   #8
Membre à l'essai
 
Inscription : juillet 2005
Messages : 67
Détails du profil
Informations forums :
Inscription : juillet 2005
Messages : 67
Points : 22
Points : 22
Par défaut Enfin bref...

Bon finalement,
Ces warnings ne sont pas si important, et je n'ai plus de temps à investir dessus, alors je vais les laisser ainsi, en espèrant qu'ils ne remplissent pas trop mes fichiers de logs.

Un immense merci pour ton aide ripat
Teufboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h58.


 
 
 
 
Partenaires

Hébergement Web