Crontab execute la moitié d'un srcipt php

Fermé
begermis2011 Messages postés 3 Date d'inscription mardi 22 septembre 2009 Statut Membre Dernière intervention 14 septembre 2010 - Modifié par begermis2011 le 14/09/2010 à 18:16
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 14 sept. 2010 à 18:42
Bonjour,

g veux executer un script via crontab ( * * * * /var/script.sh), ce qui fonctionne bien.
notons que srcipt.sh contient script.php et le problème est que contrab execute la première requête du script, toute la suite du code n'est plus executé . alors que l'execution directe du code (./script.php) marche correctement en console.
Je recois aussi un message " you have a new mail in /var/spool/mail/berenger"

aidez moi svp, merci

A voir également:

3 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
14 sept. 2010 à 18:17
Salut,

Sans voir le script dans sa totalité ça va être dur de se prononcer... ;-(

Peut être une histoire de PATH ?
0
begermis2011 Messages postés 3 Date d'inscription mardi 22 septembre 2009 Statut Membre Dernière intervention 14 septembre 2010
14 sept. 2010 à 18:38
ok, voici script.sh : php /var/www/html/lag_scripts/vasp_old/vasp_periode.php
et quelques lignes de srcipt.php :
$link=@mysql_connect('localhost','root','') or die("Erreur de connexion");
@mysql_select_db('db_divers_stats',$link) or die("Erreur de connexion");

@mysql_query(" INSERT INTO test (date0) VALUES (NOW()) ");

$req=@mysql_query(" SELECT * , DATE_FORMAT( datfin, '%d/%m/%Y' ) AS sdatefin FROM vasp_periode WHERE ( (TO_DAYS(datfin)-TO_DAYS(NOW()) <=3) AND (TO_DAYS(datfin)-TO_DAYS(NOW()) >=0) ) AND etat2=1 ");

// SELECT * FROM vasp_periode WHERE DATEDIFF(datfin,NOW())<= 60 AND DATEDIFF(datfin,NOW())>= 0 AND etat2=1;

// Idvasp nom_vasp cpt_vasp appli_vasp datdeb datfin nbjour
$n = 0;
$n = mysql_num_rows($req);
//echo "nombre de ligne $n ";
if ($n>0)
{
$k=1;
while ($row = mysql_fetch_assoc($req))
{ //echo "compteur $k";
$nom_vasp = trim($row['nom_vasp']);
$cpt_vasp = trim($row['cpt_vasp']);
$appli_vasp = trim($row['appli_vasp']);
$datdeb = trim($row['datdeb']);
$datfin = trim($row['sdatefin']);
$short_code1 = trim($row['short_code1']);
$short_code2 = trim($row['short_code2']);
... la suite est un envoi de mail avec les données
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
14 sept. 2010 à 18:42
Et ça bloque où ? A quel moment ?
0
begermis2011 Messages postés 3 Date d'inscription mardi 22 septembre 2009 Statut Membre Dernière intervention 14 septembre 2010
Modifié par begermis2011 le 14/09/2010 à 18:46
Et comme je le disais , le code php ne fait que la requête d'insertion; il n'execute pas la seconde requête et ainsi que la suite
0