Bonjour,
Dans le cadre de mon travail, je dois réaliser contrôler l'ouverture des emailings. Nous avons une liste de personnes inscrites à nos envois d'emailings pour chaque campagne effectuée. Donc je part d'une table dans laquelle je rentre toutes mes adresses emails avant l'envoi de l'emailing dans lequel je met ce code :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part <img src="trackingEmail.php?email=$email" />
Voici ma table :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 CREATE TABLE IF NOT EXISTS `connectes_total` ( `id` int(11) NOT NULL AUTO_INCREMENT, `ip` varchar(15) NOT NULL, `email` varchar(50) NOT NULL, `nombre` int(11) NOT NULL, `timestamp` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
Et le code de ma page trackingEmail.php
Je suis partie de mon code dans lequel je récupère l'ip du visiteur et le timestamp que je convertie après en heure exacte mais c'est pour une page présente sur le site. Je ne sais pas trop comment construire le code avec la variable en GET $email pour récupérer l'email du visiteur et l'envoyer dans la base en fait. Est-ce que vous pouvez m'aider ? Merci
Code php : 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 <?php // Connexion à MySQL mysql_connect("localhost", "root", ""); mysql_select_db("connectes"); // Si un email est renseigné dans l'URL if (!empty($_GET['email'])) { $mail = $_GET['email']; //Requête sur l'adresse mail $req=mysql_query("select nombre from connectes_total where email='".$email."'"); $res=mysql_num_rows($req); if($res > 0) { //Si l'email est connu... mysql_query("update connectes set nombre=nombre+1 where email='".$email."'"); } $retour = mysql_query('SELECT COUNT(*) AS nbre_entrees_total FROM connectes_total WHERE ip=\'' . $_SERVER ['REMOTE_ADDR'] . '\''); $donnees2 = mysql_fetch_array($retour); if ($donnees2['nbre_entrees_total'] == 0) // L'IP ne se trouve pas dans la table, on va l'ajouter. { mysql_query('INSERT INTO connectes_total VALUES(\'' . $_SERVER['REMOTE_ADDR'] . '\', ' . time() . ')'); } else // L'IP se trouve déjà dans la table, on met juste à jour le timestamp. { mysql_query('UPDATE connectes_total SET timestamp=' . time() . ' WHERE ip=\'' . $_SERVER['REMOTE_ADDR'] . '\''); } $retour = mysql_query('SELECT COUNT(*) AS nbre_entrees_total FROM connectes_total'); $donnees2 = mysql_fetch_array($retour); echo '<p>Il y a actuellement ' . $donnees2['nbre_entrees_total'] . ' visiteurs connectés sur mon site !</p>'; } ?>
Partager