Je suis en train de créer un petit forum et j'y inclue la possibilité de recevoir par email un message automatique indiquant une nouvelle réponse au sujet posté.
Le problème c'est que je n'arrive pas à récupérer l'id du sujet en question.
Un petit exemple.
Je poste mon sujet (il prend comme valeur id=5) et je coche la case "recevoir par email les réponses" (reception_mail=1) et comme c'est un sujet et non une réponse, id_reponse=0
Une personne répond, son message prend la valeur id=6 et id_reponse=5 (id du sujet).
je désire donc récupérer l'id=5 et l'inclure dans l'adresse internet qui se trouve dans le corps de l'email
Voici mon code:
// Gestion des envois par email
if ($envoiParMail && function_exists('mail')) {
$emails = '';
// Récupération des emails pour l'envoi
$sql = 'SELECT DISTINCT(email) as mail FROM '.$cat1.' WHERE (reception_mail=1) AND (email<>"'.mysql_real_escape_string($email).'")';
$sql.= ' AND (id='.mysql_real_escape_string($id_reponse).' OR id_reponse='.mysql_real_escape_string($id_reponse).')';
$res = mysql_query($sql) or die(showError('3', mysql_error()));
if (mysql_num_rows($res)>0) {
// Contenu du mail
$sujet = 'Vous avez une réponse en attente. ';
$corps = 'Bonjour,'."\n\n";
$corps.= $nom;
$corps.= ' a apporté une réponse à votre sujet "';
$corps.= $titre;
$corps.= '". Vous pouvez consulter le message en cliquant sur l\'adresse ci-dessous: '."\n\n";
$corps.= 'http://www.nom_de_domaine.fr/forum/'.$cat1.'/read_mess.php?id='. $id;
$corps.= "\n\n\n";
// Envoi des emails
while($r = mysql_fetch_array($res)) {
mail($r['mail'], $sujet, $corps,'From: '.$cat1.' '.$nomsite.' <'.$webmail.'>'."\n");
}
}
}
mysql_close();
Si quelqu'un a une idée...