ALERTE MAIL

cs_chiktika Messages postés 58 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 23 janvier 2011 - 6 févr. 2008 à 12:18
Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 - 6 févr. 2008 à 12:31
Bonjour,
je suis en train de créer une alerte mail pour un site immobilier.

Dans une premiere requete je recupere tous les mails clients enregistres
dans une deuxieme requete je compare les critères des clients avec la base de donnée.
A
partir de tout ca je rempli une table provisoire dans laquelle j'insere
les informations à envoyer et les mails des clients concernés.

Mon souci est de réussir n'envoyer qu'un seul mail au client qui regroupe toutes les annonces répondants a ses critères.

voici le code :

<?php
include '../admin/connexion.php';

// premiere requete je recupere tous les mails des clients enregistres
$cont_mail = "SELECT * FROM alerte_mail ";

$query_mail = mysql_query($cont_mail);

while($result = mysql_fetch_array($query_mail))
{

$transaction_client = $result['transaction_client'];
$type_client = $result['type_client'];
$surface_min_client = $result['surface_min_client'];
$surface_max_client = $result['surface_max_client'];
$nbpiece_min_client = $result['nb_piece_min_client'];
$nbpiece_max_client = $result['nb_piece_max_client'];
$prix_min_client = $result['prix_min_client'];
$prix_max_client = $result['prix_max_client'];
$ville_client = $result['ville_client'];
$cp_client = $result['cp_client'];
$dpt_client = $result['dept_client'];
$mail_client = $result['mail_client'];

$where =" fkid_transaction = '".$transaction_client."' ";

if ($type_client!=0){$where ."AND fkid_type '".$type_client."'";
}
//
if ($surface_min_client!=0){
$where .=" AND surface_bien >= '".$surface_min_client."' ";
}
if ($surface_max_client!=0){
$where .=" AND surface_bien <= '".$surface_max_client."'";
}
//
if ($nbpiece_min_client!=0){
$where .=" AND nb_piece_bien >= '".$nbpiece_min_client."'";
}
if ($nbpiece_max_client!=0){
$where .=" AND nb_piece_bien <= '".$nbpiece_max_client."'";
}
//
if ($prix_min_client!=0){
$where .=" AND prix_bien >= '".$prix_min_client."'";
}

if ($prix_max_client!=0){
$where .=" AND prix_bien <= '".$prix_max_client."'";
}
//
if ($ville_client!=0){
$where .=" AND ville_bien = '".$ville_client."'";
}
if ($cp_client!=0){
$where .=" AND code_postal_bien LIKE '".$cp_client."%'";
}
if ($dpt_client!=0){
$where .=" AND fkid_departement = '".$dpt_client."'";
}

// deuxieme requete, je selectionne les biens correspondants
$select_alerte = "

SELECT DISTINCT(b.fkid_transaction), surface_bien, nb_piece_bien,
prix_bien, date_dispo_bien, description_bien,date_entree_bien,
ville_bien, code_postal_bien, fkid_type, fkid_departement
FROM
bien as b, alerte_mail as am
WHERE ".$where." AND mail_client ='".$result['mail_client']."'";

$query_alerte = mysql_query($select_alerte);

while($row_alerte = mysql_fetch_array($query_alerte))
{

$email = $result['mail_client'];
$transaction = $row_alerte['fkid_transaction'];
$type = $row_alerte['fkid_type'];
$surface = $row_alerte['surface_bien'];
$nbpiece = $row_alerte['nb_piece_bien'];
$prix = $row_alerte['prix_bien'];
$ville = stripslashes($row_alerte['ville_bien']);
$cp = $row_alerte['code_postal_bien'];
$dpt = $row_alerte['fkid_departement'];

// je rempli la table provisoire
$stock_alerte
= "INSERT INTO stock_alerte (mail_client, transaction_client,
type_client, surface_client, nb_piece_client, prix_client,
ville_client, cp_client, dept_client)
VALUES ('".$email."',
'".$transaction."', '".$type."', '".$surface."', '".$nbpiece."',
'".$prix."', '".$ville."', '".$cp."', '".$dpt."')
;";

$req_stock_alerte = mysql_query($stock_alerte);
//echo $stock_alerte;
}

}

//////////////////// la requete de mail ! on va chercher les infos ds la table provisoire
$destock_alerte = " SELECT * FROM stock_alerte GROUP BY mail_client
";
$req_destock_alerte = mysql_query($destock_alerte);
while ($alerte = mysql_fetch_array($req_destock_alerte)){

$objet ="Message via le formulaire de contact de votre site internet";
$destinataire = $alerte['mail_client'];
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "From: contact@servicimmo.com";
$email2 = $alerte['mail_client'];
$message = "";
$message.= $alerte['transaction_client'].$alerte['ville_client'].$alerte['surface_client'];

//mail($destinataire,$objet,$message,$headers);

}

Voila si quelqu'un pouvait me dépanner.....
Par avance merci de votre aide !!

1 réponse

Teclis01 Messages postés 1423 Date d'inscription mardi 14 décembre 2004 Statut Membre Dernière intervention 29 décembre 2012 4
6 févr. 2008 à 12:31
array_unique...
http://de3.php.net/manual/fr/function.array-unique.php
--------------------------------------------------------------------------------------------------
         Il vaut mieux poser une question et passer pour bête que le rester toute sa vie
0
Rejoignez-nous