Formulaires dans dreamweaver
dhannecart
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
__construct() -
__construct() -
Bonjour,
J'ai un petit problème, je crée un site web, avec un petit formulaire, mais je ne les reçois lorsque le visiteur l'envoie.
J'ai fait le tour des forums pour vérifier les codes, mais je ne trouve pas mon erreur...
Quelqu'un pourrait m'aider ??
Merci d'avance.
Voici mon code :
<?php if ($_POST['message'] == "") { ?>
<form name="envoiemail" id="envoiemail" method="post" action="">
<p>Votre nom :<br />
<input name="nom" type="text" id="nom" />
</p>
<p>Votre ville :<br />
<input name="sujet" type="text" id="sujet" />
</p>
<p>Votre e-mail :<br />
<input name="email" type="text" id="email" />
</p>
<p>Message :<br />
<textarea name="message"></textarea>
</p>
<p>
<input name="Submit" type="submit" onclick=
"MM_validateForm('nom','','R','sujet','','R','email','','NisEmail');MM_validateForm('email','','NisEmail');MM_validateForm('nom','','R','sujet','','R','email','','R','message','','R');MM_popupMsg('Merci !');return document.MM_returnValue" value="Envoyer" />
</p>
</form>
<?php } else {
mail("info@monmail.com", $_POST['sujet'], $_POST['message'],"From: ".$_POST['nom']."<".$_POST['email'].">
<p></p>
<?php } ?>
J'ai un petit problème, je crée un site web, avec un petit formulaire, mais je ne les reçois lorsque le visiteur l'envoie.
J'ai fait le tour des forums pour vérifier les codes, mais je ne trouve pas mon erreur...
Quelqu'un pourrait m'aider ??
Merci d'avance.
Voici mon code :
<?php if ($_POST['message'] == "") { ?>
<form name="envoiemail" id="envoiemail" method="post" action="">
<p>Votre nom :<br />
<input name="nom" type="text" id="nom" />
</p>
<p>Votre ville :<br />
<input name="sujet" type="text" id="sujet" />
</p>
<p>Votre e-mail :<br />
<input name="email" type="text" id="email" />
</p>
<p>Message :<br />
<textarea name="message"></textarea>
</p>
<p>
<input name="Submit" type="submit" onclick=
"MM_validateForm('nom','','R','sujet','','R','email','','NisEmail');MM_validateForm('email','','NisEmail');MM_validateForm('nom','','R','sujet','','R','email','','R','message','','R');MM_popupMsg('Merci !');return document.MM_returnValue" value="Envoyer" />
</p>
</form>
<?php } else {
mail("info@monmail.com", $_POST['sujet'], $_POST['message'],"From: ".$_POST['nom']."<".$_POST['email'].">
<p></p>
<?php } ?>
A voir également:
- Formulaires dans dreamweaver
- Les formulaires remplis - Guide
- Macromedia dreamweaver ✓ - Forum Webmastering
- Une ou plusieurs erreurs sont présentes dans le formulaire. merci de rectifier votre saisie en vous aidant des aides disponibles. - Forum Facebook
- Télécharger dreamweaver - Forum Webmastering
- Telecharger dreamweaver cs6 - Forum Logiciels
5 réponses
Bonsoir,
Tu devrais également exécuter les vérifications PHP des données provenant du formulaire côté serveur et pas uniquement côté client (javascript).
Tu devrais également exécuter les vérifications PHP des données provenant du formulaire côté serveur et pas uniquement côté client (javascript).
<?php if($_POST['message'] == "") { ?> <form name="envoiemail" id="envoiemail" method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>"> <p>Votre nom :<br /> <input type="text" id="nom" name="nom" value="" /> </p> <p>Votre ville :<br /> <input type="text" id="sujet" name="sujet" value="" /> </p> <p>Votre e-mail :<br /> <input type="text" id="email" name="email" value="" /> </p> <p>Message :<br /> <textarea id="message" name="message"></textarea> </p> <p> <input type="submit" name="Submit" value="Envoyer" onclick="MM_validateForm('nom','','R','sujet','','R','email','','NisEmail');MM_validateForm('email','','NisEmail');MM_validateForm('nom','','R','sujet','','R','email','','R','message','','R');MM_popupMsg('Merci !');return document.MM_returnValue" /> </p> </form> <?php } else { mail("info@monmail.com", $_POST['sujet'], $_POST['message'], "From: ".$_POST['nom']."<".$_POST['email'].">"); <?php } ?>
Bonsoir !
Merci pour ta réponse, mais en utilisant ton code, je ne reçois toujours pas les formulaires, et maintenant après la fenêtre "Merci", le visiteur va sur une page introuvable ...
En fait mon formulaire reprend aussi ces codes (j'y connais rien au PHP, seulement un peu d'Html...):
Plus haut sur ma page, j'avais inséré ce code:
<script type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
function MM_popupMsg(msg) { //v1.0
alert(msg);
}
//-->
</script>
****************
Et puis j'ai ton code :
<?php
if($_POST['message'] == "") { ?>
<form name="envoiemail" id="envoiemail" method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<p>Votre nom :<br />
<input type="text" id="nom" name="nom" value="" />
</p>
<p>Votre ville :<br />
<input type="text" id="sujet" name="sujet" value="" />
</p>
<p>Votre e-mail :<br />
<input type="text" id="email" name="email" value="" />
</p>
<p>Message :<br />
<textarea id="message" name="message"></textarea>
</p>
<p>
<input type="submit" name="Submit" value="Envoyer" onclick="MM_validateForm('nom','','R','sujet','','R','email','','NisEmail');MM_validateForm('email','','NisEmail');MM_validateForm('nom','','R','sujet','','R','email','','R','message','','R');MM_popupMsg('Merci !');return document.MM_returnValue" />
</p>
</form>
<?php } else {
mail("info@monmail.com", $_POST['sujet'], $_POST['message'], "From: ".$_POST['nom']."<".$_POST['email'].">
<?php } ?>
Il n'y a pas une méthode plus simple ? Ou alors l'erreur est toute petite ???
Merci pour ton temps !
Merci pour ta réponse, mais en utilisant ton code, je ne reçois toujours pas les formulaires, et maintenant après la fenêtre "Merci", le visiteur va sur une page introuvable ...
En fait mon formulaire reprend aussi ces codes (j'y connais rien au PHP, seulement un peu d'Html...):
Plus haut sur ma page, j'avais inséré ce code:
<script type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
function MM_popupMsg(msg) { //v1.0
alert(msg);
}
//-->
</script>
****************
Et puis j'ai ton code :
<?php
if($_POST['message'] == "") { ?>
<form name="envoiemail" id="envoiemail" method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<p>Votre nom :<br />
<input type="text" id="nom" name="nom" value="" />
</p>
<p>Votre ville :<br />
<input type="text" id="sujet" name="sujet" value="" />
</p>
<p>Votre e-mail :<br />
<input type="text" id="email" name="email" value="" />
</p>
<p>Message :<br />
<textarea id="message" name="message"></textarea>
</p>
<p>
<input type="submit" name="Submit" value="Envoyer" onclick="MM_validateForm('nom','','R','sujet','','R','email','','NisEmail');MM_validateForm('email','','NisEmail');MM_validateForm('nom','','R','sujet','','R','email','','R','message','','R');MM_popupMsg('Merci !');return document.MM_returnValue" />
</p>
</form>
<?php } else {
mail("info@monmail.com", $_POST['sujet'], $_POST['message'], "From: ".$_POST['nom']."<".$_POST['email'].">
<?php } ?>
Il n'y a pas une méthode plus simple ? Ou alors l'erreur est toute petite ???
Merci pour ton temps !
J'avais mis un point-virgule à cette ligne, tu l'as supprimé?
Le code javascript ne m'intéresses pas, il n'empêche pas le mail d'être envoyé...
mail("info@monmail.com", $_POST['sujet'], $_POST['message'], "From: ".$_POST['nom']."<".$_POST['email'].">
Le code javascript ne m'intéresses pas, il n'empêche pas le mail d'être envoyé...
Oups... je l'ai remis.
Mais sur ma page web, sous le bouton envoyer, j'ai ça qui apparait : ");
C'est pas très esthétique ...
Je ne reçois toujours pas le formulaire par email, et je quitte le site après avoir appuyer sur "envoyer".
merci d'avance pour ton aide!
Mais sur ma page web, sous le bouton envoyer, j'ai ça qui apparait : ");
C'est pas très esthétique ...
Je ne reçois toujours pas le formulaire par email, et je quitte le site après avoir appuyer sur "envoyer".
merci d'avance pour ton aide!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question