Bonjour !!
Je suis entrain de faire un site de campagne d'emailing.
J'ai mis en place un bouton play/pause pour l’envoie et l’arrêt de l'envoie des mails.
Quand j'appuie sur play, l'id de la campagne choisie est envoyé à mon script php (envoie.php)
mon script envoie.php récupère l'id et tout les mails correspondant à cet id et envoie les mails via un boucle while.
Jusque la tout va très bien ! Le problème et le bouton stop !
en effet, je voudrais interrompre l'envoie des mails puis reprendre lorsque j'appuie sur play
ma question est donc comment puis je interrompre le script envoie.php ?? car une fois lancer il ne s'arrette qu'une fois tout les mails envoyer.
Voici ma conf :
la fonction qui est exécuté lorsque je clique sur le bouton play :
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function lancerCampagne(idCampagne,idr,idx){ compteur[idr] = setInterval("rafraichir("+idr+")", 1000); var url = 'consulter_campagne_lancer.php?id_camp='+idCampagne; xhr_object.open("GET",url, true); xhr_object.send(null); //filtre(); }
la fonction exécuter lorsque je clique sur le bouton pause :
donc à ce niveau tout se stop grâce au setinterval mais le script php continue en arrière plan.
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 function arreterCampagne(idCampagne,idr){ clearInterval(compteur[idr]); var url = 'consulter_campagne_arreter.php?id_camp='+idCampagne; xhr_object.open("GET",url, true); xhr_object.send(null); }
mon script envoie.php :
Merci d'avance
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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93 <?php if(isset($_GET['id_camp'])){ $connect = mysqli_connect('localhost', 'root', '', 'test') or die(mysql_error()); $id = $_GET['id_camp']; $sql = "select * from newcampagne where id = ".$id." "; $req = mysqli_query($connect,$sql) or die ("ERROR SQL 2" .mysql_error()); $aff = mysqli_fetch_assoc($req); $nbr66 = $aff['id']; $nbr6 = 'copy'.$nbr66; //echo $nbr6.'<br/>'; $sql4 = "select * from ".$nbr6." "; $req4 = mysqli_query($connect,$sql4)or die ("ERROR SQL 4".mysql_error()); while ($resultat = mysqli_fetch_assoc($req4)) { //sleep(10); //$toto = $resultat['email']; //echo $toto.'<br/>'; /*$nom = $resultat['nom']; $segment = $resultat['segment']; $message = $resultat['message']; $sql2 = "select nom from segment where id = '".$nom."' "; $req2 = mysqli_query($db,$sql2) or die ("ERROR SQL 2" .mysql_error()); $aff2 = mysqli_fetch_assoc($req2) $nom_segment = $aff2; $sql3 = "SELECT editeurtxt FROM newmess2 where objet = 'chat' "; //ORDER BY newmess2.id DESC"; $req3 = mysqli_query($connect,$sql3) or die("SQL Error 3: " . mysql_error()); $aff3 = mysqli_fetch_assoc($req3); $pub = $aff3; */ $mail = "".$resultat['email'].""; // Déclaration de l'adresse de destination. //echo $mail.'<br/>'; if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $mail)) // On filtre les serveurs qui rencontrent des bogues. { $passage_ligne = "\r\n"; } else { $passage_ligne = "\n"; } //=====Déclaration des messages au format texte et au format HTML. $message_txt = "Salut à tous, voici un e-mail envoyé par un script PHP."; $message_html = "qsdqqqdqdqdqdqdqdqdpub"; //========== //=====Création de la boundary $boundary = "-----=".md5(rand()); //========== //=====Définition du sujet. $sujet = "Hey mon ami !"; //========= //=====Création du header de l'e-mail. $header = "From: \"toto\"<toto@gmail.com>".$passage_ligne; $header.= "Reply-to: \"toto\" <toto@gmail.com>".$passage_ligne; $header.= "MIME-Version: 1.0".$passage_ligne; $header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne; //========== //=====Création du message. $message = $passage_ligne."--".$boundary.$passage_ligne; //=====Ajout du message au format texte. $message.= "Content-Type: text/plain; charset=\"ISO-8859-1\"".$passage_ligne; $message.= "Content-Transfer-Encoding: 8bit".$passage_ligne; $message.= $passage_ligne.$message_txt.$passage_ligne; //========== $message.= $passage_ligne."--".$boundary.$passage_ligne; //=====Ajout du message au format HTML $message.= "Content-Type: text/html; charset=\"ISO-8859-1\"".$passage_ligne; $message.= "Content-Transfer-Encoding: 8bit".$passage_ligne; $message.= $passage_ligne.$message_html.$passage_ligne; //========== $message.= $passage_ligne."--".$boundary."--".$passage_ligne; $message.= $passage_ligne."--".$boundary."--".$passage_ligne; //========== //=====Envoi de l'e-mail. //mail($mail,$sujet,$message,$header); //========== //sleep(1); $sql5 = "delete from ".$nbr6." where email = '".$mail."'"; $req5 = mysqli_query($connect,$sql5) or die ("ERROR SQL 5".mysql_error()); } //$sql5 = "delete from ".$nbr6." where email = '".$mail."'"; //$req5 = mysqli_query($connect,$sql5) or die ("ERROR SQL 5".mysql_error()); } ?>
Partager