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
| <?php
session_start();
include 'headerauto.php';
$bdd=bdd();
// Récupérer les données de l'email ouvert
$pixelId = $_GET['pixel_id'] ?? '0'; // Récupérer l'identifiant du pixel
$pixelClicked = $_SERVER['PIXEL_CLICKED'] ?? '0'; // Récupérer le statut du lien cliqué (1 ou 0)
$recipient_email = $_GET['email'] ?? '';
$user_agent = $_SERVER['HTTP_USER_AGENT'] ?? '';
$ip_address = $_SERVER['REMOTE_ADDR'] ?? '';
$hash = sha1($recipient_email . time());
$date = date("Y-m-d");
// Vérifier si l'email a déjà été ouvert
$sql_select = "SELECT ouverture FROM suivimails WHERE email = ?";
$req_select = $bdd->prepare($sql_select);
$req_select->execute([$recipient_email]);
$result = $req_select->fetch(PDO::FETCH_ASSOC);
if ($result) {
// L'email existe déjà dans la base de données, mettre à jour le compteur d'ouvertures
$nb_ouvertures = $result['ouverture'] + 1;
$sql_update = "UPDATE suivimails SET ouverture = ? WHERE email = ?";
$req_update = $bdd->prepare($sql_update);
$req_update->execute([$nb_ouvertures, $recipient_email]);
} else {
// L'email n'existe pas dans la base de données, ajouter une nouvelle entrée
$nb_ouvertures = 1;
$sql_insert = "INSERT INTO suivimails (date, email, ip_addresse, user_agent, clique, ouverture, identifiant_mail) VALUES (?, ?, ?, ?, ?, ?, ?)";
$req_insert = $bdd->prepare($sql_insert);
$req_insert->execute([$date, $recipient_email, $ip_address, $user_agent, $pixelClicked, $nb_ouvertures,$hash]);
} |
Partager