Bonsoir à tout le monde.
Voilà je suis un retraité bénévole qui m’occupe d’un projet d’association régionale pour aider des personnes à mobilité réduite.
J’ai en charge le projet d’un tout petit site de 3/4 pages sur lequel je travaille tout seul dans mon coin.
Il sera en HTML5, CSS3, accessible et responsive.
Ca se passe bien côté HTML et CSS mais je rencontre un problème avec le formulaire.
Je vous donne le code d’abord et j’expose le problème ensuite.
Le formulaire d’abord.
Là (mais je peux me tromper) je crois qu’il n’y a pas de problème. Vous me direz le cas échéant.
Dans ce formulaire il y a un bout Javascript pour traiter en Ajax le message et le retour d’information.
Ce sont ces lignes :
Autant vous prévenir tout de suite c’est un code que j’ai écrit en tentant de comprendre la doc de jQuery.
Il me semble bon, mais ça ne marche pas et c’est très incomplet.
C’est peut être alors le fichier ancillaire (email.php) qui bloque quelque part…
Soit ça part et je ne reçois pas le contenu du message,
soit ça ne part pas.
De manips en manips je suis perdu.
Voici son code :
Outre les problèmes d’envoi que je viens d’évoquer j’ai réalisé après coup que je n’avais pas pensé à 2 choses importantes:
1) quand le visiteur envoi son message, le formulaire n’est pas vidé et moi, comme un idiot, je croyais que ça se faisait tout seul.
Il me faut donc régler ça aussi.
2) une autre chose auquelle je n’avais pas pensé non plus c’est que le serveur peut être en panne et que le message ne peut être traité. Il faut donc aussi que je traite l’erreur en la signalant à l’usager pour lui dire de recommencer.
Or, là, je ne traite que le succès de l’envoi.
(Non ce n’est pas vrai : que ça échoue ou réussisse c’est toujours "Votre message a bien été envoyé." qui apparaît.)
J’espère que vous pourrez m’aider parce qu’après 2 jours d’acharnement je dois me rendre à l’évidence. Tout seul je n’y arriverai pas.
Merci d’avance.
supprime86.
Modifié par Felipe (09 Nov 2012 - 17:23)
Voilà je suis un retraité bénévole qui m’occupe d’un projet d’association régionale pour aider des personnes à mobilité réduite.
J’ai en charge le projet d’un tout petit site de 3/4 pages sur lequel je travaille tout seul dans mon coin.
Il sera en HTML5, CSS3, accessible et responsive.
Ca se passe bien côté HTML et CSS mais je rencontre un problème avec le formulaire.
Je vous donne le code d’abord et j’expose le problème ensuite.
Le formulaire d’abord.
<form id='contact' method='post'>
<h2>Envoyer un message...</h2>
<form id="contact" method="post">
<ul>
<li>
<label for="senderName">Votre nom ?</label>
<input type="text" name="form_name" id="form_name" placeholder="Votre nom" type="text" required='required' />
</li>
<li>
<label for='senderEmail'>Votre adresse mail ?</label>
<input name="form_email" id="form_email" type="email" placeholder="Votre mail" required='required' />
</li>
<label for="telephone">Votre téléphone</label>
<input type="text" name="form_tel" id="telephone" placeholder="Votre n° de téléphone." required='required' />
</li>
</ul>
<input type="submit" value="ENVOI" name="submit" class="button">
</form>
<p class="okey" style="hidden">Votre message a bien été envoyé.</p>
Là (mais je peux me tromper) je crois qu’il n’y a pas de problème. Vous me direz le cas échéant.
Dans ce formulaire il y a un bout Javascript pour traiter en Ajax le message et le retour d’information.
Ce sont ces lignes :
<script>
$(function() {
$("#contact .button").click(function() {
var name = $("#form_name").val();
var email = $("#form_email").val();
var tel = $("#form_tel").val();
var dataString = 'name='+ name + '&email=' + email + '&tel=' + tel;
$.ajax({ type: "POST", url: "email.php", data: dataString,
success: function(){ $('.success').fadeIn(1000); }});
return false;
});
});
</script>
Autant vous prévenir tout de suite c’est un code que j’ai écrit en tentant de comprendre la doc de jQuery.
Il me semble bon, mais ça ne marche pas et c’est très incomplet.
C’est peut être alors le fichier ancillaire (email.php) qui bloque quelque part…
Soit ça part et je ne reçois pas le contenu du message,
soit ça ne part pas.
De manips en manips je suis perdu.
Voici son code :
<?php if($_POST)
{
$name = $_POST['name'];
$email = $_POST['email'];
$tel = $_POST['tel']
$to = "supprime86@aaa.org";
$subject = "Me contacter";
$message = "Nom : ".$name."\n";
$message .= "Mail : ".$email."\n";
$message .= "Tel : ".$tel."\n";
$headers ='From: "Message du site"<supprime86@aaa.org>'."\n";
$headers .='Reply-To: supprime86@aaa.org'."\n";
mail($to, $subject, $message , $headers)
} ?>
Outre les problèmes d’envoi que je viens d’évoquer j’ai réalisé après coup que je n’avais pas pensé à 2 choses importantes:
1) quand le visiteur envoi son message, le formulaire n’est pas vidé et moi, comme un idiot, je croyais que ça se faisait tout seul.
Il me faut donc régler ça aussi.
2) une autre chose auquelle je n’avais pas pensé non plus c’est que le serveur peut être en panne et que le message ne peut être traité. Il faut donc aussi que je traite l’erreur en la signalant à l’usager pour lui dire de recommencer.
Or, là, je ne traite que le succès de l’envoi.
(Non ce n’est pas vrai : que ça échoue ou réussisse c’est toujours "Votre message a bien été envoyé." qui apparaît.)
J’espère que vous pourrez m’aider parce qu’après 2 jours d’acharnement je dois me rendre à l’évidence. Tout seul je n’y arriverai pas.
Merci d’avance.
supprime86.
Modifié par Felipe (09 Nov 2012 - 17:23)