remplir un tableau de mail dynamiquement

VaN
Mammouth du PHP | 1107 Messages

21 nov. 2005, 15:38

Bonjour à tous,

je souhaiterais envoyer un mail à toutes les inscrits de ma base données dont le champ 'send_mail' est egal à 1. Et j'aimerais envoyer ce mail en une seule fois, pas 1 par personne. Il faudrait donc que je crée un tableau qui inscrit les mail à la suite les uns des autres, et ensuite, j'envoie ce mail au contenu de la ligne du tableau. Mais je n'arrive pas à créer cette ligne.
$sql_mailing = "SELECT user_email FROM frm_users WHERE send_mail=1";
			$query_mailing = mysql_query($sql_mailing);
			while ($result_mailing = mysql_fetch_array($query_mailing))
			{
				$tab[] = array(	"mail"=>$result_mailing['user_email']);
			}
		echo $tab;
m'écrit Array; : /
Je souhaiterais en fait que cette ligne de tableau ressemble à ça :
mail1; mail2, mail3, etc.

Eléphant du PHP | 153 Messages

21 nov. 2005, 17:15

je pense que si ton champ mail est du type chaine tu peux
$liste_mail="";
$sql_mailing = "SELECT user_email FROM frm_users WHERE send_mail=1"; 
            $query_mailing = mysql_query($sql_mailing); 
            while ($result_mailing = mysql_fetch_array($query_mailing)) 
            { 
                $liste_mail.="{$result_mailing},";
            } 
        //envoi
mail($liste_mail,$objet,$corps);

Tu devras peut etre supprimer la derniere virgule avec substr mais je n'en suis pas sur

VaN
Mammouth du PHP | 1107 Messages

21 nov. 2005, 17:36

le echo renvoie :

Array,Array,

erreur trouvée, c'etait
$liste_mail.="{$result_mailing['user_email']},";
par contre, pour enlever la dernier virgule, je ne sais pas trop comment faire, vu que je ne connais pas la longueur de ma chaine, qui est variable. Peut etre qu'il n'y en a pas besoin, mais je prefere faire ça proprement.

Eléphant du PHP | 153 Messages

21 nov. 2005, 17:57

on va faire plus simple

$liste_mail=""; 
$sql_mailing = "SELECT user_email FROM frm_users WHERE send_mail=1"; 
            $query_mailing = mysql_query($sql_mailing); 
            while ($result_mailing = mysql_fetch_array($query_mailing)) 
            { 
                $liste_mail.=",{$result_mailing['user_email']}"; 
            } 
        //envoi 
$liste=substr($liste_mail,1);
mail($liste,$objet,$corps);