IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Affichage caractère spéciaux formulaire php mail


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Affichage caractère spéciaux formulaire php mail
    Bonjour à tous !

    Je me permets de vous contacter car nous avons fait appel à un prestataire pour créer notre site internet : http://www.sotrem.com Inutile de vous dire que nous sommes déçu du résultat...

    En plus de cela, le formulaire devant servir aux candidats à poster leurs candidatures me pose bien des soucis.

    En effet, les caractères spéciaux comme les accents ne sont pas pris en compte.

    Ex :
    Suite à votre annonce concernant le recrutement de technicien et d'ingénieur diffusée à travers le site Stillincontact, je m'oriente vers vous pour quelques renseignements.
    Etant actuellement employé par RENAULT S.A.S en ingenierie véhicule en tant que analyste fiabilité de la prestation Echappement suite à mon recrutement par RENAULT en 2004 avec un DUT Mesures physiques option TI en tant que technicien d'essai banc. Je reste de près intéressé à l'électronique et l'informatique(générale et de programmation). Curieux des opportunités que votre entreprise pourrait me fournir, pourriez vous me faire parvenir les différentes offres dont vous disposez fonction de mon profil.
    Je reste à votre disposition pour toutes informations complémentaire à mon sujet.
    Autant vous dire que c'est grandement gênant...

    Cela fait deux heures que je suis sur le code source de la page à me triturer l'esprit... Et vraiment je bloque...

    Pourriez vous me venir en aide ?

    Voici le code source

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    <?php
    require_once 'info.php'; 
    ?>
    <?php
    //\\ ParamËtres - A mettre en haut de page
     
    //Pour tous les paramËtres -> 1 = oui ; 0 = non
    $email_admin = 'jnlegregam@sotrem.com'; // Votre email
    $nom_site = 'Sotrem SEO'; // Le nom du site o˘ sera installÈ le script
    $sujets = array('Demande de renseignements','Candidature','Autre'); // Sujets possibles aux messages (pour en rajouter prenez exemple sur les 3 premiers)
    $choix_urgent = 0; // Vous pouvez choisir d'activer ou non la fonction "urgent", ainsi l'internaute pourra signaler que son mail est urgent ou non
    $choix_nom = 1; // Nom obligatoire ?
    $votre_mail = 0; // Afficher votre adresse email directement ?
     
    //
    // Ne pas modifier ci-dessous
    //
     
    if(isset($_POST['envoyer']) && $_POST['envoyer'] == 'ok')
    // Si l'on envoye quelque chose
    {
    	$reponse = '';
    	$mail = htmlentities($_POST['mail']); // On rÈcupËre l'email
    	$nom = htmlentities($_POST['nom']); // Le nom
    	$prenom = htmlentities($_POST['prenom']);//Le prenom
    	$tel = htmlentities($_POST['tel']);
    	$adresse = htmlentities($_POST['adresse']);//L'adresse
    	$sujet = htmlentities($_POST['sujet']); // Le sujet
    	$message = nl2br(htmlentities($_POST['message'])); // Le message
    	$urgent = htmlentities($_POST['urgent']); // On rÈcupËre le type du message
     
     
    	if($choix_nom == 1)
    	// Si le nom est obligatoire
    	{
    		if(!empty($nom))
    		// Si le champ est bien rempli on met 1
    		{
    			$Snom = 1;
    		}
    		elseif(empty($nom))
    		// Sinon on met 0
    		{
    			$Snom = 0;
    		}
    	}
    	else
    	// Si le champ n'est pas activÈ on met 1
    	{
    		$Snom = 1;
    	}
     
     
     
    	if(!empty($mail) && !empty($message) && $sujet != '' && $Snom == 1)
    	// On vÈrifie que l'email, le message et le sujet sont bien prÈsent et on vÈrifie si tout est correct avec le nom
    	{
     
    		// L'entete du message
    		$entete = "MIME-Version: 1.0\r\n";
    		$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
    		$entete .= "From: <$mail>\r\n";
    		$entete .= "Reply-To: $mail\r\n";
     
    		$email = ''; // La variable du message a envoyer
     
    		if($urgent == 1) // Si le message est urgent on le signal
    			$email .= '<strong>Message urgent !!</strong><br /><br />';
     
    		if(empty($nom))
    			$nom = 'NON INDIQUE';
     
    		// On crÈÈe le message	
    		$email .= 'Message provenant du formulaire Contact, ayant pour sujet : <strong>' .$sujets[$sujet]. '</strong>.<br /><br />Les informations de la personne sont :<br /> <br /> <b>E-mail :</b> ' .$mail. '<br /><br /> <b>Nom :</b> ' .$nom.'<br /> <br /> <b>Pr&eacute;nom : </b>' .$prenom.'<br /> <br /> <b>Adresse :</b> ' .$adresse.'<br /><br /> <b>T&eacute;l&eacute;phone :</b> ' .$tel.'<br /> <br /><br />';
    		$email .= '<b>Message :</b> <br /><br />' .$message;
    		$email = stripslashes($email);
     
    		mail($email_admin, 'Message Internaute: ' .$sujets[$sujet], $email, $entete); // Et on envoye le tout
     
    		$reponse .= 'Votre message a bien &eacute;t&eacute; transf&eacute;r&eacute;. Nous vous remercions.'; // on indique que tout s'est bien dÈroulÈ.
    	}
    	else
    	{
    		$reponse .= 'Merci de bien completer tous les champs.<br />'; // On indique une erreur
    	}
    }
     
    //\\ Fin - Le texte commenÁant par "<form..." et finissant par "</form>" peut Ítre placÈ partout dans la page
     
    ?>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <title>Sotrem SEO <? echo $rec['titre'];?></title>
    <meta http-equiv="Content-Type"
    	content="text/html; charset=iso-8859-1" />
    	<meta name="description" content="La vocation de SOTREM est díaccompagner les grands groupes industriels dans la rÈalisation de leurs projets. Pour ce faire SOTREM intervient durant tout le cycle de rÈalisation díun produit aux travers de diffÈrentes Èquipes spÈcialisÈes en conception, industrialisation, fabrication, validation, installation sur site et assistance." />
    		<meta name="author" content="Caractere-Design"  />
    		<meta name="keywords" content="" />
    		<meta name="revisit-after" content="7 days" />
    		<meta name="distribution" content="global" />
    		<meta name="robots" content="all" />
    		<meta name="generator" content="TextMate" />
    		<meta http-equiv="content-language" content="fr" />
    		<meta name="identifier-url" content="http://www.sotrem.com" />
    	<style type="text/css"> 
    	@import url(alltest.css);
    	  </style>
     
    </head>
    <body>
    	<div id="page">
    		<img id="header" src="<?php echo $header['img']; ?>" />
    		<div id="col_left">	
    			<?php echo $rec['col']; ?>
    		</div>
    		<div id="pagecontent">
    			<div id="menu"><ul id="menu">
    				<li id="btn-home"><a href="index.php"><br />Qui sommes-nous?</a></li>
    				<li id="btn-act"><a href="activites.php"><br />Activit&eacute;s</a></li>
    				<li id="btn-rec_hi"><a href="recrutement.php"><br />Recrutement</a></li>
    				<li id="btn-con"><a href="contact.php"><br />Contact</a></li>
    			</ul></div>
    			<br />
    			<div id="content_act">
     
    				<fieldset id="recrut">
     
    					<form name="form1" method="post" action="" id="form">
    				<?php 
    				if($votre_mail == 1) 
    					{echo '<p>Adresse email du webmaster : <u>' .$email_admin. '</u></p>';} 
    				?>
    				<p>
    					<label>Nom* : <br /><input class="zone" type="text" name="nom">
    						<?php if($choix_nom == 1)  ?>
    					</label>
    					<br />
    					<br />
    					<label>Pr&eacute;nom* : <br /><input class="zone" type="text" name="prenom">
    						<?php if($choix_nom == 1)  ?>
    					</label>
    					<br />
    					<br />
    					<label>Votre email* : <br /><input class="zone" type="text" name="mail">
    					</label>
    					<br />
    					<br />
    					<label>T&eacute;l&eacute;phone* : <br /><input class="zone" type="text" name="tel">
    						<?php if($choix_nom == 1)  ?>
    					</label>
    					<br />
    					<br />
    					<label>Adresse : <br /><textarea class="zone" name="adresse" cols="20" rows="2"></textarea>
    						<?php if($choix_nom == 1)  ?>
    					</label>
    				</p>
    				<p>Votre message concerne* : <br />
    					<select name="sujet">
    						<?php
    						for($i = 0; $i < count($sujets); $i++)
    							{echo '<option value="' .$i. '">' .$sujets[$i]. '</option>';}
    						?>
    					</select>
    				</p>
    				<?php
    				if($choix_urgent == 1)
    					{echo '<p>Votre message est-il urgent ? :&nbsp;&nbsp;&nbsp;&nbsp;';
    				echo '<label><input type="radio" name="urgent" value="1"> Oui</label>&nbsp;&nbsp;&nbsp;&nbsp;';
    				echo '<label><input type="radio" name="urgent" value="0" checked> Non</label>&nbsp;&nbsp;&nbsp;&nbsp;';
    				echo '</p>';}
    				?>
    				<p>
    					Votre message* : 
    					<br />
    					<textarea name="message" class="zone" cols="50" rows="5"></textarea>
    				</p>
    				<p>
    					<input type="hidden" name="envoyer" value="ok">
    					<input type="submit" name="Submit" value="Envoyer">
    					<input type="reset" name="Submit2" value="R&eacute;initialiser">
    				<h5>* Champs obligatoires.</h5>
    				</p>
     
    				<strong><?php echo $reponse; ?></strong>
    			</form>
    			</fieldset>
     
     
    			</div>
    		</div>
    	</div>
     
    </body>
    </html>

    Peut être que l'erreur vous semblera stupide...

    Je vous remercie d'avance pour votre aide,

    Jean-Nicolas

  2. #2
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 135
    Points : 83
    Points
    83
    Par défaut manque
    il me manque quelque chose, car le code source cite me donne ca:
    http://essay.hy.cz/dev.php
    et la pas de caractere non pris en compte.

    je suis pas bon webmaster, mais je pencherai pour un probleme de configuration du core php de votre serveur, attendez l'avi d'un menbre plus experimenter.

    Mais si vous avez l'adresse du site internet ou l'on peut voire:
    Suite à votre annonce concernant le recrutement de technicien et d'ingénieur diffusée à travers le site Stillincontact, je m'oriente vers vous pour quelques renseignements.
    Etant actuellement employé par RENAULT S.A.S en ingenierie véhicule en tant que analyste fiabilité de la prestation Echappement suite à mon recrutement par RENAULT en 2004 avec un DUT Mesures physiques option TI en tant que technicien d'essai banc. Je reste de près intéressé à l'électronique et l'informatique(générale et de programmation). Curieux des opportunités que votre entreprise pourrait me fournir, pourriez vous me faire parvenir les différentes offres dont vous disposez fonction de mon profil.
    Je reste à votre disposition pour toutes informations complémentaire à mon sujet.
    ca pourai peu etre m'aider

    (on a pas le info.php)

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Bonjour, merci pour ta réponse.

    Concernant le message tu ne peux pas le visionner puisqu'il arrive directement sur ma boite mail.

    Concernant le fichier info, c'est un fichier où sont stockés toutes les pages du site. Ensuite, chaque fichier fait appel à ce info.php pour prendre ses données.

    J'espère avoir répondu à ta question.

    Merci,

    Jean-Nicolas

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2
    Points : 4
    Points
    4
    Par défaut
    Bonjour,
    je pense que le problème vient de cette partie:
    // L'entete du message
    $entete = "MIME-Version: 1.0\r\n";
    $entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $entete .= "From: <$mail>\r\n";
    $entete .= "Reply-To: $mail\r\n";

    vous devez pemplacer
    charset=iso-8859-1\r\n";
    par
    charset=\"UTF-8\"\r\n";

    Voila j'espère que ça fonctionnera
    A bientôt

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Je viens d'effectuer la modif, et j'ai le regret de vous annoncer que ca ne marche pas mieux...

    Merci beaucoup pour votre aide.

    Je commence à désespérer...

  6. #6
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 135
    Points : 83
    Points
    83
    Par défaut per
    je suis perplex voici le resultat de l'envoi sur mon mail:

    http://essay.hy.cz/ucc.jpg

    et a par certaint accent tcheque,les accent francais s'affiche

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta réponse. Le problème ne vient donc pas du codage du formulaire d'envoi de mail.

    Je vous copie ci dessous le fichier info.php, fichier auquel fait appel le fichier recrutement.php

    En espérant que ca vous permette d'y voir plus clair...

    Merci à tous pour votre précieuse aide.
    Fichiers attachés Fichiers attachés

  8. #8
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 135
    Points : 83
    Points
    83
    Par défaut
    le message envoyer sur le mail contient des caractère spéciaux code en iso, et des $iaecut, ce qui ressemble fort a des variable php

    alors que entet de mon webmail:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    ceresse cela???

  9. #9
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    le charset=UTF-8 a été rajouté toute à l'heure en remplacement de l'iso-8859 selon les conseils de thomed.

    Meme avant ce changement, le message ne me parvenait pas correctement.

    J'ai l'impression que le problème provient du fichier info.php

  10. #10
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 135
    Points : 83
    Points
    83
    Par défaut
    hmm en remplacant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $message = nl2br(htmlentities($_POST['message'])); // Le message
    du code que vous avez transmis par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $message = $_POST['message']; // Le message
    j§obtien:
    http://essay.hy.cz/ucc2.JPG

    info> je n'intègre pas le fichier info.php

  11. #11
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    est ce que cela marche en intégrant le fichier info ?

    Pour info, je vous mets les deux fichiers joints.

    Merci,

    Jean-Nicolas

    Pour info, cela ne marche pas avec le fichier info.

    Je pense que le probleme se situe à l'intérieur de celui ci...
    Fichiers attachés Fichiers attachés

  12. #12
    Membre régulier
    Inscrit en
    Août 2008
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 135
    Points : 83
    Points
    83
    Par défaut
    pourtant avec le fichier principale et info.php, j§ai plus de "mauvais" caractere:

    http://essay.hy.cz/ucc3.JPG

    http://essay.hy.cz/ucc4.JPG

    http://essay.hy.cz/dev.php

    http://essay.hy.cz/info.php

  13. #13
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    C'est à ne plus rien y comprendre...

Discussions similaires

  1. les caractères spéciaux et PHP
    Par Pallas4 dans le forum Flash
    Réponses: 6
    Dernier message: 14/09/2006, 19h58
  2. Affichage caractère spéciaux
    Par nicoaix dans le forum Langage
    Réponses: 9
    Dernier message: 19/05/2006, 13h09
  3. Affichage caractéres spéciaux dans une alert.
    Par nebule dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 05/05/2006, 14h51
  4. [FLASH MX2004] Caractères spéciaux et PHP
    Par Sun3clipse dans le forum Flash
    Réponses: 3
    Dernier message: 24/11/2004, 11h33
  5. [Delphi+Access] Pb affichage caractère spéciaux
    Par fred64 dans le forum Bases de données
    Réponses: 6
    Dernier message: 02/06/2004, 11h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo