Bonjour,
j'ai créé un formulaire simple avec envoi des données recueillies par mail. Pour vérifier quelques champs obligatoires, j'ai placé required devant mes noms de champs. Mais il semblerait que cela empèche les données de figurer dans mon mail. Ainsi, les champs sont bien obligatoires, mais je reçois le mail sans les données des champs obligatoires...
Qui a une idée?
Mon script :
<script>function checkrequired(which){
var pass=true
if (document.images){
for (i=0;i<which.length;i++){
var tempobj=which.elements
if (tempobj.name.substring(0,8)=="required"){
if (((tempobj.type=="text"||tempobj.type=="textarea")&&tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&tempobj.selectedIndex==-1)){
pass=false
break
}
}
}
}
if (!pass){
alert("Certains champs de ce formulaire sont obligatoires, merci de bien vouloir les renseigner")
return false
}
else
return true
}
</script>
Mon code formulaire :
form method='post' action='inc_php/contact.inc.php' onSubmit="return checkrequired(this)" >
<table style="float:left; margin-top:20px;">
<tr><td><b>*Nom:</b></td><td><td><input type='text' size='50' name='requirednom' onchange="verif(this.value, 'nom')" id='nom' /></td><td><span id="error_nom"></span></td></td></tr>
<tr><td><b>E-mail:</b></td><td><td><input type='text' size='50' name='mail' onchange="verifmail(this.value, 'mail')" id='mail' /></td><td><span id="error_mail"></span></td></td></tr>
<tr><td><b>*Telephone:</b></td><td><td><input type='text' size='50' name='requiredtelephone' onchange="verif(this.value, 'telephone')" id='telephone' /></td><td><span id="error_telephone"></span></td></td></tr>
<tr><td><b> Objet:</b></td><td><td><input type='text' size='50' name='objet' onchange="verif(this.value, 'objet')" id='objet' /></td><td><span id="error_objet"></span></td></td></tr>
<tr style="text-align:top;"><td><b> Message:</b></td><td><td><TEXTAREA rows='10' onchange="verif(this.value, 'message')" cols='38' id="message" name='message'></TEXTAREA></td><td><span id="error_message"></span></td></td></tr>
<tr><td></td><td></td><td><input type='submit' value='Envoyer' /></td></tr>
</table>
</form>
<b> * Champs obligatoires</b>
et enfin mon petit php :
<?php
$nom = $_POST['nom'];
$mail = $_POST['mail'];
$telephone = $_POST['telephone'];
$sujet = $_POST['objet'];
$message="Un nouveau message est arrivé \n
Nom : $nom \n
Email : $mail \n
Telephone : $telephone \n
Message: $message";
$message .= $_POST['message'];
mail("[email protected]",$sujet,$message);
echo "Message envoyé! Redirection sur la page d'accueil";
echo '<meta http-equiv="refresh" content="1; url=../index.html" />';
?>
Merci de votre aide