Bonsoir,
Voilà mon problème. Je ne suis pas très familier de sql, des tables etc...
J'ai créé une tache cron qui exécute une page web de mon site toute les heures. C'est un script php qui fait ceci, pour résumer simplement :
le script php parse une page web qui dit ou non si il y a une vigilance de fortes pluies dans ma région.
Si le script php renvoie la valeur comme quoi il y a une alerte de fortes pluies, ca m'envoie un email. Le problème, c'est que la tache cron exécutant le script toute les heures, je vais recevoir 1 mail par heure et si l'alerte de fortes pluies dure 3 jours, je vais recevoir XXX emails. J'ai lu à droite à gauche sur le net et sur ce forum qu'il faudrait un script qui charge une table SQL, qui mette la valeur 1 si le mail a déjà été envoyé une fois mais l'inconvénient, je ne comprends rien et je n'arrive pas à trouver un seul exemple qui me guide dans mon script php. Voici le script :
**********************************
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 <? $texte=file_get_contents("http://www.meteo.fr/temps/domtom/La_Reunion/EMD/fortes_pluies/fortes_pluies.html"); $debut="<body"; $texte_a_inserer=strstr($texte,$debut); $texte_a_inserer=explode("</body>",$texte_a_inserer); ?> <? $result=substr($texte_a_inserer[0], 0, 5000000); $trouve1=strpos($result,"N"); if($trouve1==false){ $mon_email = "XXX@orange.fr"; // Headers $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= "From : <".$mon_email.">" ; // Sujet $subject = "VIGILANCE FORTES PLUIES EN COURS"; // Message $message = "ALERTE AUTOMATIQUE DE REUNIONBYSAT.COM : " . $_SERVER['HTTP_REFERER'] . ""; //Destinataire $to = $mon_email; // Envoie de l'email mail($to,$subject,$message,$headers) ;} ?>
Voilà, le script et la tache cron marchent nikel, je reçois mon mail si la condition est remplie, mais plusieurs fois. J'aimerais recevoir le mail une seule fois par jour par exemple. Pouvez-vous m'aider, me guider ? Merci beaucoup.
Christophe from Reunion Island
Partager