Je suis en cours d'exécution d'un script PHP qui utilise file_get_contents afin de poster une liste avec ce qu'il est à l'intérieur de ce fichier distant.
Si j'exécute le script manuellement, tout fonctionne bien, mais quand je le laisse et attends que le cron fonctionne, il ne reçoit pas ce contenu à distance ..... est-ce possible?
Je copie ici un peu du code où je pense que le problème est le suivant:
4 Réponses :
Le chemin du fichier est différent lorsque le cron exécute p>
Essayez p>
ou spécifiez le chemin vous-même p> $ flyer = fichier_get_contents (__ dir__. '/flyer.html'); code> p>
Le cron ne charge pas le code à partir du "dossier" dans lequel vous vous trouvez, vous devrez donc spécifier un chemin complet p>
$ flyer = fichier_get_contents (DirName (__ file__). Directory_Separator. "Flyer.html"); Code> P>
Je vais essayer cela, merci, Flyer est local, alors je vais changer le chemin.
@Sebastian j'aime mettre CHDIR (DIRNAME (__ fichier __)); code> en haut de tous les scripts à exécuter par cron pour empêcher ce problème.
Vous devez vous assurer que la sortie et les erreurs sont redirigées dans un fichier, vous pouvez donc avoir une idée de ce qui se passe avec votre script lorsqu'il est exécuté par cron.
La commande dans le crontab ressemblerait à ceci: < / p>
En regardant votre code, je vous suggère que vous utilisiez un chemin absolu pour ouvrir le fichier flyer.html code>. Votre script fonctionne même s'il est lancé à partir d'un autre répertoire que celui contenant ce fichier. P > p>
Essayez comme ceci:
Où est-ce que
flyer.html code> réside? S'il est local, vous devez utiliser un chemin absolu pour le cron.