Planifier une tache unix en php ?

jerryone3 Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -  
jerryone3 Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   -
Hello a tous :)

Voila, je cherche à planifier l'exécution d'un script php, via... un autre script php.

Je suppose qu'il y a une commande simple en unix, à utiliser avec exec(), qui me permette de dire "a telle heure tel jour, lance ce fichier php" ou "dans 5 min, lance ce fichier php". Mais je ne suis pas parvenu à trouver laquelle

Une petite question supplémentaire, est-ce possible également de transférer des paramètres en GET de cette façon ?

Merci d'avance !
A voir également:

2 réponses

sudmeteo
 
Salut,

Si ton script est sur ton ordi (en local) et que tu utilises ubuntu:
crontab -e


Ensuite, tu peux écrire un cron:
Je te donne un exemple:
10 00 * * * php /lien/vers/ton/fichier.php


Ce cron exécutera ton fichier "fichier.php" situé dans " /lien/vers/ton/" tous les jours à 10h00

Si ce script n'est pas sur ton ordi, pas de problème j'ai une solution que j'utilise et qui marche très bien :)

41 01 * * * wget --spider --tries=1 http://www.site.com/scripts/fichier.php


Ce cron exécutera la page http://www.site.com/scripts/fichier.php tous les jours à 01h41.

wget permet d'enregistrer et donc d'exécuter la page
l'option --spider permet de supprimé la page directement après sa sauvegarde sur ton ordi
l'option --tries==1 permet d'exécuter la page qu'une seule fois en cas d'erreur si le chargement est trop long

Je te conseille d'approfondir tes recherches sur le cron de linux et wget :)

Cldt
0
jerryone3 Messages postés 55 Date d'inscription   Statut Membre Dernière intervention   1
 
Salut, et merci de ta réponse !

Je connais bien le cron. Seulement, comment créer un cron en ligne de commande, sans devoir confirmer, enregistrer le fichier crontab, ou un truc comme ça ?

est-ce que deux lignes successives, de type :
exec("crontab -e");
exec("10 00 * * * php /lien/vers/ton/fichier.php");

suffiraient ?

Ca m'étonnerait que ça se passe comme ça ^^
0