Formulaire Contact avec caractères spéciaux impossible à résoudr
                    
        
     
             
                    flo4020
    
        
    
                    Messages postés
            
                
     
             
            62
        
            
                                    Statut
            Membre
                    
                -
                                     
mpmp93 Messages postés 7217 Statut Membre -
        mpmp93 Messages postés 7217 Statut Membre -
        Bonjour,
J'essaie de créer un formulaire de contact avec php et ajax.
Mais j'ai un problème avec les accents, cela fait qq heures que je usis dessus en ayant essayé pas mal de choses....(encodage UTF-8...)
Soit ça me donne des "?" à la place des "é,à,è..." siot des ?...
Je vous donne mes codes :
Fichier contacts.php :
Fichier contact.php
Fichier getfile.php
Merci de votre aide. Je patauge un peu...
                
            
                
    
    
    
        J'essaie de créer un formulaire de contact avec php et ajax.
Mais j'ai un problème avec les accents, cela fait qq heures que je usis dessus en ayant essayé pas mal de choses....(encodage UTF-8...)
Soit ça me donne des "?" à la place des "é,à,è..." siot des ?...
Je vous donne mes codes :
Fichier contacts.php :
<script type="text/javascript">
url = document.location.href;
xend = url.lastIndexOf("/") + 1;
var base_url = url.substring(0, xend);
var ajax_get_error = false;
function ajax_do (url) {
if (url.substring(0, 4) != 'http') {
url = base_url + url;
}
var jsel = document.createElement('SCRIPT');
jsel.type = 'text/javascript';
jsel.src = url;
document.body.appendChild (jsel);
return true;
}
function ajax_get (url, el) {
if (typeof(el) == 'string') {
el = document.getElementById(el);
}
if (el == null) { return false; }
if (url.substring(0, 4) != 'http') {
url = base_url + url;
}
getfile_url = base_url + 'getfile.php?url=' + escape(url) + '&el=' + escape(el.id);
ajax_do (getfile_url);
return true;
}
function submit_form() {
// on set les variables
var name = document.getElementById('name').value;
var email = document.getElementById('email').value;
var comment = document.getElementById('comment').value;
//on envoie vers le fichier contact_forum-check.php
url = 'contact.php?name=' + escape(name) + '&email=' + escape(email) + '&comment=' + escape(comment);
// on renvoie les résultats dans le div id result
ajax_get (url, 'result');
}
</script>
<div class="padding">
<div class="wrapper margin-bot">
<div class="col-3">
<div class="indent">
<h2 class="p0">Formulaire de contact</h2>
<dl>
<dt>Votre nom :</dt>
<dd><input type="text" name="name" id="name" value="" size="60" /></dd><br>
<dt>Votre email :</dt>
<dd><input type="text" name="email" id="email" value="" size="60" /></dd><br>
<dt>Votre message :</dt>
<dd><textarea name="comment" id="comment" cols="70" rows="8" /></textarea></dd><br>
<dd><input type="button" name="Envoyer" value=" Envoyer" onClick="submit_form();"><br />
<div id="result"> </div>
</dd>
</dl>
Fichier contact.php
<?php
// date du jour
$date = date("d M Y à H:i:s");
// fonction verif format email
function CheckEmail($email_auteur){
$motif1 = "^[[:alnum:]]([[:alnum:]\._-]{0,})[[:alnum:]]";
$motif1 .= "@";
$motif1 .= "[[:alnum:]]([[:alnum:]\._-]{0,})[\.]{1}([[:alpha:]]{2,})$";
$motif2 = "[\.]{2,}";
return (ereg($motif1, $email_auteur) && !ereg($motif2, $email));
}
if (empty($_GET['name'])) { // SI PAS DE NOM
die ("<br/><font style=\"color:#cc0000\"><img src='no.gif' alt='' /> Veuillez entrer votre nom...</font><br/>");
}
if (empty($_GET['email'])) { // SI PAS D'EMAIL
die ("<br/><font style=\"color:#cc0000\"><img src='no.gif' alt='' /> Veuillez entrer votre email...</font><br/>");
}
if(preg_match('#^[\w.-]+@[\w.-]+\.[a-z]{2,6}$#i',($_GET['email'])&&($_GET['email']))){ // VERFIFE LE FORMAT DE l'EMAIL
die ("<br/><font style=\"color:#cc0000\"><img src='no.gif' alt='' /> Le format de votre adresse e-mail n'est pas valide...</font><br/>");
}
if (empty($_GET['comment'])) { // SI PAS COMMENTAIRE
die ("<br/><font style=\"color:#cc0000\"><img src='no.gif' alt='' /> Veuillez entrer votre message...</font><br/>");
}
// SI TOUT EST BON
echo "<br><font style=\"color:#1A7917\"><img src='yes.gif' alt='' /> Votre email a été envoyé avec succès...<br>Nous prendrons contact avec vous dans les meilleurs délais.</font><br/>";
$recipient = "info@xxx";
$subject = "Formulaire de contact";
$mailheaders = "From: <".$_GET['email']."> \r\n";
$mailheaders .= "Reply-To: <".$_GET['email']."> \r\n";
$mailheaders .= "Bcc: ".$adminemail2." \r\n";
$mailheaders .= "Return-Path: <info@xxx> \n";
$mailheaders .= "X-Sender: <info@xxx> \n";
$mailheaders .= "X-Mailer: PHP \n";
$mailheaders .= "X-Priority: 1 \n";
$mailheaders .= "MIME-Version: 1.0 \n";
$mailheaders .= "Content-Type: text/html; charset=utf-8 \r\n";
$msg = "<br>\n";
$msg = "Vous avez reçu un message du site C3D :<br><br>\r\n";
$msg .= "$date | M ".stripslashes($_GET['name'])." <br>\r\n";
$msg .= " <br>\n";
$msg .= stripslashes($_GET['comment'])." <br>\n";
$msg .= "<br>\n";
$msg .= "<br>\n";
mail($recipient, $subject, $msg, $mailheaders) or die("Impossible d'envoyer le mail...");
?>
Fichier getfile.php
<?php
// Get URL and div
if (!isset($_GET['url'])) { die(); } else { $url = $_GET['url']; }
if (!isset($_GET['el'])) { die(); } else { $el = $_GET['el']; }
// Make sure url starts with http
if (substr($url, 0, 4) != 'http') {
// Set error
echo 'alert(\'Security error; incorrect URL!\');';
die();
}
// Try and get contents
$data = @file_get_contents($url);
if ($data === false) {
// Set error
echo 'alert(\'Unable to retrieve "' . $url . '"\');';
die();
}
// Escape data
$data = str_replace("'", "\'", $data);
$data = str_replace('"', "'+String.fromCharCode(34)+'", $data);
$data = str_replace ("\r\n", '\n', $data);
$data = str_replace ("\r", '\n', $data);
$data = str_replace ("\n", '\n', $data);
?>
el = document.getElementById('<?php echo $el; ?>');
el.innerHTML = '<?php echo $data; ?>';
Merci de votre aide. Je patauge un peu...
        A voir également:         
- Formulaire Contact avec caractères spéciaux impossible à résoudr
- Whatsapp formulaire opposition - Guide
- Caractère spéciaux - Guide
- Caractères spéciaux - Guide
- Caractères spéciaux mac - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
1 réponse
                        
                    Bonjour,
Le plus simple est d'avoir une architecture HTML PHP CSS MySQL JS en full-UTF8:
https://html5.immo-scope.com/article/general_applisFullUtf8
A+
 
                
                
    
                Le plus simple est d'avoir une architecture HTML PHP CSS MySQL JS en full-UTF8:
https://html5.immo-scope.com/article/general_applisFullUtf8
A+
