Aide pour un formulaire qui envoie un mail

Résolu/Fermé
Utilisateur anonyme - 4 oct. 2008 à 13:52
 Utilisateur anonyme - 6 oct. 2008 à 12:02
Bonjour,

je suis en train de développer un formulaire d'inscription en PHP pour ma boite.
Ce formulaire doit envoyer un email.
Le mail part bien. Le problème c'est que quand je reçoit le mail cela met tous les caractères du style é à è etc sous une forme bizarre.
le é devient alors é
voici mon code.

mail("monAdressseMail", "[BREEDGE] inscription : ", " maBoite vous informe que : ".$lastName." ".$firstname."   souhaite s'inscrire à maBoite

						Informations :

						Nom : ".$lastName."
						Prénom : ".$firstname."
						Email : ".$email."
						Mobile : ".$mobile."
						Login : ".$login."
						Password : ".$password."
						Tel : ".$telephoneNumber."
						Societée : ".$compagny."
						Fax : ".$fax."
						Country : ".$country."
						Langue : ".$_POST['language']."
						Activité principale : ".$_POST['mainBusinessCategorie']."
						specialité : ".$_POST['areaSpecies']."
						Formation : ".$_POST['education']."
						Expérience : ".$_POST['yearsInTheBusiness']."

						Il à connu maBoite par :".$_POST['whereHaveYouHeardAboutUs']);
						echo "message envoyé !";


tout est récupéré par des input du style

<input type=text size="34" name="lastName" value="<?php echo $lastName;?>"><br />


sauf pour langue et les champs suivants c'est récupéré de la manière suivante

			<select name="language">
				<option value="yourLanguage"<?php if ($_POST['language']=='yourLanguage') {echo "selected='selected'";}?>>Your language</option>
				<option value="none"<?php if ($_POST['language']=='none') {echo "selected='selected'";}?>>--</option>
				<option value="uk"<?php if ($_POST['language']=='uk') {echo "selected='selected'";}?>>English</option>
				<option value="fr"<?php if ($_POST['language']=='fr') {echo "selected='selected'";}?>>French</option>
			</select><br />


Au passage, quand je reçoit le mail c'est le nom de la valeur sélectionnée et pas la valeur que je reçoit.

Est-ce que quelqu'un peut me venir en aide.

Merci d'avance.

P.S.: Il ne faut pas que j'utilise de javascript. C'est une contrainte que mon chef de projet m'a donnée.
A voir également:

4 réponses

Utilisateur anonyme
4 oct. 2008 à 14:23
bonjour,
le formulaire aiguille vers l'envoi.
au début de l'envoi faites un truc du genre
echo "<pre>;print_r($_POST);echo "</pre>";

pour voir exactement ce que le formulaire envoit.
0
Utilisateur anonyme
6 oct. 2008 à 11:33
Au fait j'ai testé ce que tu m'as dit et j'obtient
print_r(Array)
0
Utilisateur anonyme
4 oct. 2008 à 19:27
Je te l'ai dit cela envoie la valeur de l'id du dropdownlist (ou select en HTML) et pas la valeur selectionnée du dropdownlist
0
Utilisateur anonyme
5 oct. 2008 à 18:20
je regarde mais ..
à force de lire, de relire, de chercher ... il me semble que echo selected=selected devrait s'écrire echo selected seulement.
sans aucun doute rien à voir avec le pb
0
Utilisateur anonyme
6 oct. 2008 à 12:02
C'est bon j'ai trouvé il suffisait que je mette des headers.
mon code ressemble à celui-ci.

mail("monMail", "leSujet ", $content, $headers);


en précisant que dans les header le texte est envoyé en utf8-fr ce qui donne

mes headers comme ceci:

$headers ="From: ".$firstname." ".$lastName."<".$email.">\n";
$headers .="Content-Type: text/plain; charset=\"UTF8_FR\"\n";
$headers .="Content-Transfer-Encoding: 8bit"; 
0