Planifier l'execution d'un script PHP, WAMP

Hippo -  
 ok -
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 420 Statut Membre 44
 
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
Hippo
 
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
 
ok
0
ok
 
ok
0
Hippo
 
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
Hippo
 
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 360 Statut Membre 38
 
at existe sous windows.

at heure "commande"

;)
0
mpmp93 Messages postés 7217 Statut Membre 1 340
 
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
Hippo
 
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 360 Statut Membre 38
 
"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
Hippo
 
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
Hippo
 
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
Hippo
 
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
Maurice B
 
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 35 Statut Membre 4
 
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