Formulaires dans dreamweaver
Fermé
dhannecart
Messages postés
3
Date d'inscription
lundi 21 février 2011
Statut
Membre
Dernière intervention
21 février 2011
-
21 févr. 2011 à 13:10
__construct() - 21 févr. 2011 à 21:55
__construct() - 21 févr. 2011 à 21:55
A voir également:
- Formulaires dans dreamweaver
- Dreamweaver ancienne version gratuite - Forum PHP
- Dreamweaver torrent - Forum Webmastering
- Télécharger Dreamweaver CS4 ✓ - 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
- Http //epreuves.pix.fr/dossier fictif/formulaires/remplir.pdf ✓ - Forum Réseaux sociaux
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 } ?>
dhannecart
Messages postés
3
Date d'inscription
lundi 21 février 2011
Statut
Membre
Dernière intervention
21 février 2011
21 févr. 2011 à 20:08
21 févr. 2011 à 20:08
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é...
dhannecart
Messages postés
3
Date d'inscription
lundi 21 février 2011
Statut
Membre
Dernière intervention
21 février 2011
21 févr. 2011 à 21:41
21 févr. 2011 à 21:41
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