Pour que la vigilance météo reste à jour, il faut qu'un fichier index.php s'exécute automatiquement. Ce fichier appel un fichier VigilanceMeteo.class.php et XmlDomConstruct.class.php qui mettent à jour le fichier: carte_vigilance_meteo.xml
Pour cela j'ai penser à utiliser crontab. Cependant, le script ne s'exécute pas.
Quand tu dis il ne s'exécute pas tu le sais comment ? car via un cron tes echo vont où à ton avis ???
Le cron peut s'exécuter sans qu'aucune console soit ouverte et même si une console est ouverte le cron ne va pas rediriger "spontanément" sur la console ouverte.
Donc si tu veux une trace il te faut rediriger la sortie standard et d'erreur dans un fichier.
Le chemin à indiquer pour le programme est le chemin complet sur le serveur Linux et non le chemin relatif par rapport au doc root du serveur web.
Es-tu sûr du chemin du fichier ? Car en cli ou en mode serveur, certaines variables surper-globales changent. Le chemin racine n'est pas non plus le même.
Donc ce que je disais il faut aussi via crontab que tu rediriges la sortie standard et la sortie erreur dans un fichier.
Tu peux faire la redirection soit dans le lancement de la commande (le crontab) soit dans le script commande en remplaçant tes echo par des écriture fichier (fwrite par exemple).
Ba oui c'est justement ca que je ne comprend pas. Si je lance moi même le script index.php le fichier carte_vigilance_meteo.xml se met bien à jour. Du coup le script fonctionne bien.
Alors que quand le crontab lance le script index.php le fichier carte_vigilance_meteo.xml ne se met pas à jour.
on te dit que les PATHs du terminal et de cron ne sont pas les mêmes. tu sembles ne pas vouloir l'entendre...
pour être tranquille, il faut faire précéder tous les fichiers utilisés dans ton script par leur chemin absolu depuis la racine du système de fichier de la machine.
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
on te dit que les PATHs du terminal et de cron ne sont pas les mêmes. tu sembles ne pas vouloir l'entendre...
pour être tranquille, il faut faire précéder tous les fichiers utilisés dans ton script par leur chemin absolu depuis la racine du système de fichier de la machine.
Ce n'est pas que je ne voulais pas l'entendre. C'est surtout que je ne comprenais pas...
Effectivement il s'agissait bien d'un problème de path.
pourquoi ../var/www...? il y a quelque chose au-dessus de /var ? a priori, le répertoire var est à la racine du système de fichier de la machine.
- Edité par dantonq 21 janvier 2019 à 12:49:16
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Gérer crontab pour script PHP
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique