Problème avec formulaire d'envoi de newsletter très basic

Broack Dincht Messages postés 22 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 5 juin 2005 - 9 avril 2005 à 12:41
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 9 avril 2005 à 13:09
bonjour


J'ai écri un formulaire d'envoi de newsletter très basique. Grace à un formulaire, on inscrit l'objet et le contenu du message. Les adresses des destinataires sont réccupérées à partir d'une base de donnée (database:CTinscrip ; table: inscrip avec 2 champs: nom et mail)





lorsque je teste mon corde, le formulaire s'affiche, mais lorsque je valide y'a un message d'erreur qui s'affiche:


Warning: mail() expects parameter 1 to be string, resource given in c:\program files\easyphp\www\simon\ct_envoi3.php on line 25


voila mon code php. Si quelqu'un vois ce qui ne va pas... :


merci d'avance


________________________________


<html>


<?


// = ========================== connexions à la base
if (mysql_connect("localhost","root","") == false) {
echo "ya un pb avec mysql";
} else {


// selection et création dedatabase
if (mysql_select_db("CTinscrip") == false) {
echo"problème avec la base";
};


// if ($bt"ok") { // on est en retour du formulaire de prépa news
$adr_mail = mysql_query ("SELECT mail from inscrip");
$titre = "$objet_f";
$tete = "de: [mailto:$broack@voila.fr $broack@voila.fr]";
$tete .= "Content-Type: text/html;";
$corps .= "$message_f";


$lettre = mail($adr_mail, $titre, $corps, $tete);



}else{ //afficher le formulaire de prépa news
echo '<form method="post" action="ct_envoi3.php">';
echo 'objet :
';
echo 'message :
';
echo '</form>';
echo '</form>';
echo '';
}
};


?>
</html>

1 réponse

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
9 avril 2005 à 13:09
Salut,



ça signifie que le paramètre 1 doit être une chaîne de caractères.



Donc syntaxe de la fonction mail() :



mail('destinataire@fai.com','sujet','message');



et tu peux rajouter un argument en dernier, les headers :



mail('destinataire@fai.com','sujet','message',$headers);



Tes headers sont incorrects. Voici un exemple de headers :



$headers = 'From: "Anthony"<mail_expediteur@fai.com>'."\n";

$headers .= 'Return-Path: <mail_expediteur@fai.com>'."\n";

$headers .= 'Content-Type: text/html; charset=iso-8859-1'."\n";

$headers .= 'Content-Transfer-Encoding: 8bit';


a +
<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
0
Rejoignez-nous