[AJAX] Script d'un formulaire de contact de base
35 messages
• Page 3 sur 3 • 1, 2, 3
- suppr_18032010
Salut !
Pourquoi tu ne récupères pas l'IP dans la page contact.php ($ip = getenv("REMOTE_ADDR"); ) et tu la passes dans le contact.js dans la fonction function valeurCheck() {
contact.js (je n'ai repris que la fonction valeurCheck()
contact.php
contact-check.php
Pourquoi tu ne récupères pas l'IP dans la page contact.php ($ip = getenv("REMOTE_ADDR"); ) et tu la passes dans le contact.js dans la fonction function valeurCheck() {
contact.js (je n'ai repris que la fonction valeurCheck()
- Code: Tout sélectionner
function valeurCheck() {
var name = document.getElementById('name').value;
var email = document.getElementById('email').value;
var comment = document.getElementById('comment').value;
var societe = document.getElementById('societe').value;
var ip = document.getElementById('ip').value;
// CHECK MESSAGE -- on commence par en bas pour que le onfocus replace la page au bon niveau d'erreur
if(comment == "" ){ // si champ comment vide
document.getElementById('comment').focus(); // focus dans le champ
document.getElementById('comment').style.border = '1px solid #D41919'; // on change la couleur du border du INPUT
document.getElementById('commentbox').innerHTML = '<font style="color:#cc0000"><img src="images\/no.gif" alt="" \/> Veuillez entrer votre message.<\/font>'; // on affichage le message dans le div ID
}else{ // si champ comment rempli
document.getElementById('comment').style.border = '1px solid #CFD8E0'; // on remet la couleur du border du INPUT
document.getElementById('commentbox').innerHTML = ' <img src="images\/yes.gif" alt="" \/>'; // on affiche une image OK
}
// CHECK EMAIL
if(email == "" ){
document.getElementById('email').focus();
document.getElementById('email').style.border = '1px solid #D41919';
document.getElementById('emailbox').innerHTML = '<font style="color:#cc0000"><img src="images\/no.gif" alt="" \/> Veuillez entrer votre email.<\/font>';
}else if (!validEmail(email)) {
document.getElementById('email').focus();
document.getElementById('email').select();
document.getElementById('email').style.border = '1px solid #D41919';
document.getElementById('emailbox').innerHTML = ' <img src="images\/no.gif" alt="" \/> <font color="#FD1813">Votre email n\'est pas valide<\/font>';
}else{
document.getElementById('email').style.border = '1px solid #CFD8E0';
document.getElementById('emailbox').innerHTML = ' <img src="images\/yes.gif" alt="" \/>';
}
// CHECK NOM
if(name == "" ){
document.getElementById('name').focus();
document.getElementById('name').style.border = '1px solid #D41919';
document.getElementById('namebox').innerHTML = '<font style="color:#cc0000"><img src="images\/no.gif" alt="" \/> Veuillez entrer votre nom.<\/font>';
}else{
document.getElementById('name').style.border = '1px solid #CFD8E0';
document.getElementById('namebox').innerHTML = ' <img src="images\/yes.gif" alt="" \/>';
}
// CHECK FINAL
if ( (name == "") || (email == "") || (!validEmail(email) )|| (comment == "") ) {
return false;
}
url = 'contact-check.php?name=' + escape(name) + '&email=' + escape(email) + '&societe=' + escape(societe) + '&comment=' + escape(comment) + '&ip=' + escape(ip);
ajax_get (url, 'result');
}
contact.php
- Code: Tout sélectionner
<?php
$ip = getenv("REMOTE_ADDR");
?>
<script type="text/javascript" src="contact.js"></script>
<dl>
<dt>Votre nom <div id="namebox" style="display:inline;"><font class='maj job bold size10'>|Obligatoire|</font></div></dt>
<dd><input type="text" name="name" id="name" value="" size="60" /></dd>
<dt>Votre société </dt>
<dd><input type="text" name="societe" id="societe" value="" size="60" /></dd>
<dt>Votre email <div id="emailbox" style="display:inline;"><font class='maj job bold size10'>|Obligatoire|</font></div></dt>
<dd><input type="text" name="email" id="email" value="" size="60" /></dd>
<dt>Votre message <div id="commentbox" style="display:inline;"><font class='maj job bold size10'>|Obligatoire|</font></div></dt>
<dd><textarea name="comment" id="comment" cols="90" rows="8" /></textarea></dd>
<dd><input type="button" name="Envoyer" value=" Envoyer votre message " class="submit" onClick="valeurCheck()">
<input type="hidden" name="ip" id="ip" value="<?php echo $ip; ?>" />
<div id="result" style="display:inline;"> </div></dd>
</dl>
contact-check.php
- Code: Tout sélectionner
<?php
include "conf.php";
// INTERDIRE LE CACHE IE
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
// ENCODAGE
header("Content-Type: text/html; charset=iso-8859-1");
$date = date("d M Y Ã H:i:s");
//pour éviter les injections
if (eregi("\r",$_GET['email']) || eregi("\n",$_GET['email'])){
$email = "";
}else{
$email = $_GET['email'];
}
$recipient = "votreemail@email.fr";
$subject = "Formulaire de contact";
$mailheaders = "From: <".$email."> \r\n";
$mailheaders .= "Reply-To: <".$email."> \r\n";
$mailheaders .= "Bcc: ".$adminemail2." \r\n";
$mailheaders .= "Return-Path: <".$adminemail."> \n";
$mailheaders .= "X-Sender: <".$adminemail."> \n";
$mailheaders .= "X-Mailer: PHP \n";
$mailheaders .= "X-Priority: 1 \n";
$mailheaders .= "MIME-Version: 1.0 \n";
$mailheaders .= "Content-Type: text/html; charset=iso-8859-1 \n";
$msg = " <br>\n";
$msg .= "$date | ".htmlspecialchars(stripslashes($_GET['name']))." ".htmlspecialchars(stripslashes($_GET['societe']))." ".htmlspecialchars(stripslashes($_GET['ip']))." <br>\n";
$msg .= " <br>\n";
$msg .= htmlspecialchars(stripslashes($_GET['comment']))." <br>\n";
$msg .= " <br>\n";
$msg .= " <br>\n";
mail($recipient, $subject, $msg, $mailheaders) or die("Impossible d'envoyer le mail...");
// on renvoie le message de confirmation...
echo "<br><font style=\"color:#1A7917; line-height:13px;\"><img src='/images/yes.gif' alt='' /> Votre email a été envoyé avec succès...<br/>Nous prendrons contact avec vous dans les meilleurs délais.</font><br>";
?>
- gbourgeo
- Nouveau WRInaute

- Messages: 1
- Inscription: 22 Oct 2008
Bonjour,
Je suis tombé sur ce fil en cherchant les mots clé suivant dans google "contact formulaire ajax", et je trouve le script très chouette. J'ai juste rencontré un petit problème :
Le email que je recevais n'était pas affiché correctement, j'avais le header dans le corps du email. La solution a été de modifier le fichier contact-check.php de la manière suivante
en fait je ne sais pas si c'est le fait de remplacer \r\n par \n ou bien si j'avais oublié de mettre un espace avant \n qui a résolu le problème.
La deuxième remarque concerne la mise en page du email qui supprimait les retours à la ligne et mettait tout en un gros bloc, la solution a été de modifier la ligne suivante :
en
Voila j'espère que cela pourra servir.
Gil Bourgeois
Je suis tombé sur ce fil en cherchant les mots clé suivant dans google "contact formulaire ajax", et je trouve le script très chouette. J'ai juste rencontré un petit problème :
Le email que je recevais n'était pas affiché correctement, j'avais le header dans le corps du email. La solution a été de modifier le fichier contact-check.php de la manière suivante
- Code: Tout sélectionner
$mailheaders = "From: <".$email."> \n";
$mailheaders .= "Reply-To: <".$email."> \n";
$mailheaders .= "Bcc: ".$adminemail2." \n";
$mailheaders .= "Return-Path: <".$adminemail."> \n";
$mailheaders .= "X-Sender: <".$adminemail."> \n";
$mailheaders .= "X-Mailer: PHP \n";
$mailheaders .= "X-Priority: 1 \n";
$mailheaders .= "MIME-Version: 1.0 \n";
$mailheaders .= "Content-Type: text/html; charset=iso-8859-1 \n";# Mime type
en fait je ne sais pas si c'est le fait de remplacer \r\n par \n ou bien si j'avais oublié de mettre un espace avant \n qui a résolu le problème.
La deuxième remarque concerne la mise en page du email qui supprimait les retours à la ligne et mettait tout en un gros bloc, la solution a été de modifier la ligne suivante :
- Code: Tout sélectionner
$msg .= htmlspecialchars(stripslashes($_GET['comment']))." <br>\n";
en
- Code: Tout sélectionner
$msg .= nl2br(htmlspecialchars(stripslashes($_GET['comment'])))." <br>\n";
Voila j'espère que cela pourra servir.
Gil Bourgeois
35 messages
• Page 3 sur 3 • 1, 2, 3
Lectures recommandées sur ce thème :
- base whois, transfert de domaine et contact de facturation
- script formulaire de contact
- Script PHPMailer pour formulaire de contact
- insertion dans une base avec AJAX , php
- Quelques question sur mon script contact.
- Cherche Script : MSN Contact list Grabber
- script pop-in en ajax
- Script de recommandation en ajax.
- Script de newsletter en AJAX
- Script de sondage en ajax
Consultez la description détaillée des produits ou services de Google suivants : Google Web Toolkit, Google API
- Suggestions Google Suggest
Cet outil vous permet d'obtenir une liste de 10 mots ou expressions suggérés par Google sur la base d'un mot que vous fournissez.
Qui est en ligne
Utilisateurs parcourant ce forum: Google [Bot] et 0 invités


