Planifier l'execution d'un script PHP, WAMP

Fermé
Hippo - Modifié par Hippo le 14/04/2011 à 16:03
 ok - 21 août 2015 à 10:55
Bonjour,

(avant toute chose, je tiens a dire aue je suis desole pour la grammaire pauvre de ce message, mais je ne sais pas faire d'accents avec un clavier QWERTY)

J'aimerais solliciter l'aide de "ceux qui savent" pour un probleme un peu particulier:
J'ai actuellement n script PHP qui envoie une serie de SMS selon une serie de donnees recuperees depuis un formulaire. J'aimerais pouvoir ajouter a ce formulaire un champ "date d'envoi" aui permettrait de differer la date de l'envoi des sms en question.
Je fais tourner mon affaire sur Wamp pour le moment, mais prevois de mettre le tout en ligne sur un web server dans quelques temps.

Quelqu'un aurait-il des pistes ?
Est-ce que chercher du cote de Cron ou du Windows Task Scheduler est une bonne idee ?
Ces solutions peuvent-elles etres utilisees sur WAMP ? Sur un "vrai" serveur ?

Bref, si vous avez la moindre info/aide/piste je suis preneur :)

Merci a tous



A voir également:

13 réponses

totofrancois Messages postés 398 Date d'inscription jeudi 19 novembre 2009 Statut Membre Dernière intervention 2 août 2013 44
14 avril 2011 à 16:04
sur les serveur il faudra faire une tache Cron qui lancera un fichier php dans lequel tu fera tes envoi

sous windows il faut faire une tache planifié
0
Merci de la reponse rapide ; ce qui m'embete, c'est de savoir comment creer la tache planifiee ou la Cron tab a partir de mon scipt PHP initial (celui qui recoit les donnes du formulaires).
Une idee ?
0
ok
0
ok
0
Apres quelques recherches, je pensais peut-etre utiliser la fonction "at" (qui ne fonctionne que sous Linux ?) puisqu'il ne s'agit pas d'une tache planifiee regulierement, mais plutot d'une execution differee.

Est-ce coherent ? quelqu'un aurait-il un exemple d'utilisation de cette fonction ? Quelques autres suggestions ? Je suis ouvert a toute aide, merci !
0
Finalement, mon serveur final tournera sous windows, impossible donc d'utiliser la fonction at.
Quelqu'un connaitrait-il son equivalent windows ?
(Desole pour les multiples post, l'edition de mes messages m'est refusee...)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Gremy87 Messages postés 352 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 19 mars 2014 38
15 avril 2011 à 11:53
at existe sous windows.

at heure "commande"

;)
0
mpmp93 Messages postés 6652 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
15 avril 2011 à 14:11
Bonjour,

faire un "autocron"....

j'esplique....

Si le serveur est très régulièrement visité, mettre un ch'tit bout d'script quelque part qui teste la dernière exécution du code envoi des SMS:
- exemple, date-dernier-envoi et différence avec adte de maintenant > à délai?
* si oui, cherche SMSs à envoyer et envoi des SMS

Fonctionne très bien sans recourir à un CRON ou tâche planifiée...

A+
0
Merci des reponses.
Le probleme est que mon serveur n'est pas consulte regulierement, et l'ideal serait vraiment de faire fonctionner la commande AT.
Je m'y essaie epuis un moment mais il semble aue j'ai un probleme de syntaxe, est-ce que quelqu'un saurait me dire ce qui est incorrect ?

ma commande :

at 09:40 /next:date04/15/11 C:wamp/www/Test/Files/AA000922041511customers.txt.php

Le message d'erreur : The AT scheduled commands and programs to run on a computer at a specified time and date. The schedule service must be running to use the AT command.

J'ai suppose que le probleme venait de la partie sur la date, et j'ai donc fait un test en l'enlevant :

at 09:40 C:wamp/www/Test/Files/AA000922041511customers.txt.php

Cette fois le message d'erreur semble concerner les permissions : "Acces is denied"

Any idea ?
0
Gremy87 Messages postés 352 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 19 mars 2014 38
15 avril 2011 à 15:39
"The schedule service must be running to use the AT command."

ca me parait assez explicite^^

regarde dans les services, le service de scheduler doit être arrête, démarre la
0
En fait, le probleme etait la date : il est apparemment impossible de specifier un mois, le AT ne permet donc pas de planifier une tache plus de 30 jours a l'avance (?)

En revanche, je n'arrive toujours pas a faire fonctionner ma commande at, meme pour des tests tout simples :
j'ai essaye de faire:

at 11:10 echo test > test.txt

ou encore

at 11:10 cmd /c echo test2 > test2.txt

Et le fichier se cree directement au moment ou la commande est tapee, ne contient qu'une ligne du type : Added a new job with job ID = 27 et n'est ensuite jamais edite.

La commande shutdown, elle, fonctionnee avec at.
Si j'affiche la liste des taches plannifiees, mes commandes de creation de texte sont tronquees : au lieu de echo yop > yop.txt, on voit : echo yop

J'en deduis qu'il faut passer les parametres d'une maniere particuliere que je ne saisis pas ?
0
Je ne comprends vraiment pas : si je tape a la main
at 11:40 shutdown -f ca fonctionne parfaitement, mais si je tape
at tt:40 php -f monscript.php ca ne fait rien.
Alors meme que entrer directement php -f monscript.php fonctionne.
0
Probleme resolu !
La fonction AT n'a en fait pas acces aux variables d'environnements et ne connaissait donc pas le chemin vers ma commande php.
En utilisant le chemin absolu, ca fonctionne \o/
0
salut Hippo,je cherche actuellement a developper le meme script pour envoyer des sms en fonction d'un formulaire,pourrait tu me passer le script php?
0
keita1985 Messages postés 30 Date d'inscription dimanche 7 mars 2010 Statut Membre Dernière intervention 17 avril 2012 4
9 juil. 2011 à 05:44
Salut Hippo

j'ai le même problème que toi. Je veux envoyer un mail dans ma boite chaque samedi .Le script de mail fonctionne bien.Cependant je n'arrive pas à trouver la syntaxe adéquate pour la lancer automatiquement avec la commande at. J'ai essayé cette commande :

at 03:18 /Every:s "C:\xampp\PHP\php.exe -f C:\xampp\htdocs\mail.php".

Elle ne fonctionne pas. Quel commande as tu utilisé explicitement?
0