parametrage pour que requete ai le temps de s'executer

Invité
Invité n'ayant pas de compte PHPfrance

26 nov. 2008, 11:00

Bonjour,

J'ai une fenêtre qui envoie a tous mes clients un mail, mais le souci c'est que la fenêtre n'a pas le temps de s'exécuter en entier, et donc les mail ne sont pas envoyé a tous les clients. Comment paramétré pour que la fenêtre ai le temps de exécuter en entier. Aucun message ne m'avertit que ça na pas été terminé.

Merci

Invité
Invité n'ayant pas de compte PHPfrance

26 nov. 2008, 11:31

après quelque recherche je viens de trouver max_execution_time, il était a 30, je le passe donc a 90. Il n'y a aucun risque que ça ralentisse le serveur ?

merci

ViPHP
ViPHP | 3607 Messages

26 nov. 2008, 11:41

Une alternatvie, c'est l'envoi de mails par paquets...

Invité
Invité n'ayant pas de compte PHPfrance

27 nov. 2008, 11:57

c'est a dire ?

ViPHP
ViPHP | 3607 Messages

27 nov. 2008, 12:07

Le principe est le suivant, tu selectionnes tes données par "paquets", et tu redirige sur le sciprt d'envoi en changeant à chaque fois de paquet...
Disons comme ça si on imagine que tes mails sont dans une base de donnée, et qu'il y a un champ envoyé à 0 ou 1

Code : Tout sélectionner

Récupération des 50 premiers e-mails, dont le champ envoyé est à 0 (utilisation de LIMIT par exemple) Envoi du mails à ces cinquante là Modification en base de donnée des cinquante entrée selectionnée afin de mettre le champ envoyé à 1 Si le paquet selectionné est le dernier (i.e. il selectionne moins de 50 mails) remettre tout les champs envoyé à 0 pour la prochaine fois arrêter le script sinon on redirige sur cette même page
Voilà ça permet de répartir les envois et donc de ne pas avoir à augmenter les temps limites de php...

Invité
Invité n'ayant pas de compte PHPfrance

04 déc. 2008, 16:48

je n'avais pas eu le temps de me remettre la dessus. Je regardai le poste de jojolapine, je voie vaguement se que je dois realiser, mais etant donné qu ese sera executé sur la même fêtre, il y aura encore un souci de temps pour qu etout s'execute non ?

Sinon après modification de mes valeur sur max_execution_time, j'envoi toujours a peu près le meme nombre de mail, soit environ 35, 40.

merci