problème avec envoi de formulaire php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : problème avec envoi de formulaire php

par Marc-Etienne » 23 sept. 2007, 22:49

Quel idiot je fais !!

Quand tu m'a parlé de la valise enctype, j'ai fait une recherche dans tout mon code pour en trouver une. Je n'en ai pas rouvé. Mais j'avais mal cherché, il y en avait une

Code : Tout sélectionner

enctype="text\plain"
et sans ça, comme tu disais, ça marche !

Je l'ai en fait supprimé sans m'en rendre compte, en remplaçant toute la ligne contenant Method="post" et enctype (...) par :

Code : Tout sélectionner

<FORM method="POST" action="envoi.php">
tout bête, mais c'est dut de débuter !!

merci !!

par zeus » 23 sept. 2007, 22:24

Je n'ai pas compris ce que tu as remplacé par quoi :?

par zeus » 23 sept. 2007, 22:24

Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)

j'ai trouvé

par Marc-Etienne » 23 sept. 2007, 22:12

Re !!

ca y est, j'ai trouvé, en fait c'était tout bête, le script form methode="post" etc.. contenait trop d'informations inutiles

j'ai simplement remplacé par :
<FORM method="POST" action="envoi.php">
et voila, ca marche niquel!

merci pour votre aide

bonne soirée

par Marc-Etienne » 23 sept. 2007, 21:48

Hélas ! j'ai refait cette commande, et il m'affiche toujours array(0) { }

par zeus » 23 sept. 2007, 21:41

et bien quand je met var_dump($_POST) dans le fichier envoi.php, j'ai le détail de ce que j'ai saisi dans le formulaire.

Plutôt que de cumuler les zones d'erreur, il faut commencer par s'assurer que la transmission des données fonctionne avant de vérifier le fonctionnement de l'envoi de mail.

par Marc-Etienne » 23 sept. 2007, 21:22

Oui, j'ai bien vu, j'ai modifié le code pour les balises, rajouté des guillements et mis en minuscule, mais c'est pareil. Concernant le enctype, je n'en ai pas mis puisque tu as dit que ce n'était pas utile.?
Quand tu dis que le formulaire fonctionne, que veut tu dire ??

par zeus » 23 sept. 2007, 21:19

Est-ce que tu as lu cette réponse ?
Et pour quelle raison ? Il n'y a pas de input type="file" dans son code :-k

Par contre, en retirant le enctype, ton formulaire fonctionne :shock:

PS : petit conseil : la syntaxe html, c'est toujours <balise attribut="valeur"></balise> ou <balise attribut="valeur" />

donc, par exemple,

Code : Tout sélectionner

<form name="form11" METHOD=POST action="envoi.php">
doit devenir

Code : Tout sélectionner

<form name="form11" method="post" action="envoi.php">

suite

par Marc-Etienne » 23 sept. 2007, 21:13

Bonsoir !

merci pour votre aide


malheureusement, ca ne marche toujours pas, j'ai suivi vos instructions, j'ai testé des générateurs de formulaires, etc.. mais rien n'y fait, ca ne marche pas avec ce formulaire, et je ne vois pas où est l'erreur !

Dans mon formulaire de test ca marche niquel ( voir plus haut ) mais dans celui ci non, le mail arrive sans les informations.

par Joss850csi » 23 sept. 2007, 19:05

OK je retiens la leçon...
Personnelement j'aime bien ce generateur et comme ça apres je mate un peut le code :lol:
Mais il fonctionne tres bien

Merci

par zeus » 23 sept. 2007, 17:11

Pas de soucis ... tu apportes un élément de réponse.

Quand quelqu'un veut apprendre, nous ne lui donnons pas le résultat tout cuit, mais effectivement, marc-etienne peut éventuellement préférer passer par un générateur de ce genre.

Il n'appartient qu'à lui de choisir entre la rapidité de ta solution, ou d'en baver un peu pour apprendre à le faire seul ;)

par Joss850csi » 23 sept. 2007, 17:06

Ce n'est peut-etre pas conseiller de le faire (que le modo me le dise) mais il existe des generateur de formulaire mail en php !!!

Meme si ce n'est pas tres bien de s'en servir sans comprendre, on peut ensuite regarder et voir un peu le code generer, c'est comme cela pour ma part que je me forme un peu, avec en plus des bouquins biensur

Au cas ou voici l'adresse ici

Au cas ou le modo peu supprimer le lien

par zeus » 23 sept. 2007, 17:00

Et pour quelle raison ? Il n'y a pas de input type="file" dans son code :-k

Par contre, en retirant le enctype, ton formulaire fonctionne :shock:

PS : petit conseil : la syntaxe html, c'est toujours <balise attribut="valeur"></balise> ou <balise attribut="valeur" />

donc, par exemple,

Code : Tout sélectionner

<form name="form11" METHOD=POST action="envoi.php">
doit devenir

Code : Tout sélectionner

<form name="form11" method="post" action="envoi.php">

par nicodiz » 23 sept. 2007, 15:57

Dans ta balise form, rajoutes un enctype...

Code : Tout sélectionner

<form method="post" action="envoi.php" enctype="multipart/form-data"></form>

du nouveau

par marc-etienne » 23 sept. 2007, 15:55

Bon, je me suis bien planté. Je recommence

J'ai refait des test avec les codes précédemment mis, d'un coup ca a marché. a n'y rien comprendre. Maintenant tout est parfait, le mail s'envoi avec les données rentrées par le visiteur, etc.
Bon, mais maintenant, ca c'était juste pour les tests. J'avais fait quelques jours plus tôt tout une page avec un formulaire, plus compliqué cette fois. Et en essayant avec cette page, CA NE MARCHE PLUS !!

Je met le code html ici, désolé je n'ai pas su quoi retirer pour le réduire

Code : Tout sélectionner

<html> <head> <title>Commande</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- body { background-color: #0099FF; } .Style1 { font-size: 36px; font-weight: bold; } .Style7 {color: #FFFFFF} .Style8 {font-size: 15px; color: #FFFFFF; } .Style13 {font-size: 12px} .Style14 {font-size: 12px; color: #FFFFFF; } .Style18 {font-size: 15px} .Style19 {font-size: 18px} .Style20 {color: #FFFFFF; font-size: 20px; } --> </style> <script language="JavaScript" 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+' doit contenir une adresse email valide.\n'; } else if (test!='R') { num = parseFloat(val); if (isNaN(val)) errors+='- '+nm+' doit contenir un code postal.\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+' est obligatoire.\n'; } } if (errors) alert('Une erreur à été trouvé:\n'+errors); document.MM_returnValue = (errors == ''); } //--> </script> </head> <body> <div align="center" class="Style1"> <p align="center" class="Style7">Formulaire de commande </p> <p align="center" class="Style20">Pour commander une s&eacute;rie de CD, merci d'indiquer simplement l'adresse E-Mail qui avait servi pour les commandes pr&eacute;c&eacute;dentes, suivi de vos choix </p> <form name="form11" METHOD=POST ENCTYPE="text/plain" action="envoi.php"> <p>&nbsp;</p> <table width="38%" border="1"> <tr> <td width="35%"><span class="Style13">Email*</span></td> <td width="65%"> <input name="email" type="text" id="email" size=50></td> </tr> </table> <p align="center" class="Style8">&nbsp;</p> <p align="center" class="Style8"><img src="../cd/parolesdevie.jpg" width="225" height="225"> </p> <p align="center" class="Style8 Style19">Merci d'indiquer la quantit&eacute; souhait&eacute;e en face de chaque langue</p> <table width="70%" border="0"> <tr> <th nowrap scope="col"><div align="right"><span class="Style8">Albanais <input name="Albanais" type="text" id="Albanais"> </span></div></th> <th nowrap scope="col"><div align="right"><span class="Style8">Allemand <input name="Allemand" type="text" id="Allemand"> </span></div></th> <th nowrap scope="col"><div align="right"><span class="Style8"> <label>Arabe Standard <input name="Arabe Standard" type="text" id="Arabe Standard"> </label> </span></div></th> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Arabe Alg&eacute;rien <input name="Arabe Algerien" type="text" id="Arabe Algerien"> </span></div></td> <td nowrap><div align="right"> <span class="Style18"> <label><span class="Style7">Créole Guyane et Antilles</span> <input name="Creole guyane antilles" type="text" id="Creole guyane antilles"> </label> </span> </div></td> <td nowrap><div align="right"> <span class="Style8"> <label>Créole Haiti <input name="Créole Haiti" type="text" id="Créole Haiti"> </label> </span> </div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Arabe Marocain <input name="Arabe Marocain" type="text" id="Arabe Marocain"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Arabe Tunisien <input name="Arabe Tunisien" type="text" id="Arabe Tunisien"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Arm&eacute;nien <input name="Armenien" type="text" id="Armenien"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Bambara <input name="Bambara" type="text" id="Bambara"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Berberes <input name="Berberes" type="text" id="Berberes"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Anglais <input name="Anglais" type="text" id="Anglais"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Bosniaque <input name="Bosniaque" type="text" id="Bosniaque"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Espagnol <input name="Espagnol" type="text" id="Espagnol"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Fran&ccedil;ais <input name="Français" type="text" id="Français"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">H&eacute;breu <input name="hébreu" type="text" id="hébreu"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Hongrois <input name="Hongrois" type="text" id="Hongrois"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Italien <input name="Italien" type="text" id="Italien"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Japonais <input name="Japonais" type="text" id="Japonais"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Khmer <input name="Khmer" type="text" id="Khmer"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Laotien <input name="Laotien" type="text" id="Laotien"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Lingala <input name="Lingala" type="text" id="Lingala"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Macedonien <input name="Macedonien" type="text" id="Macedonien"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Mandarin <input name="Mandarin" type="text" id="Mandarin"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Polonais <input name="Polonais" type="text" id="Polonais"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Portuguais <input name="Portuguais" type="text" id="Portuguais"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Roumain <input name="Roumain" type="text" id="Roumain"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Russe <input name="Russe" type="text" id="Russe"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Serbe <input name="Serbe" type="text" id="Serbe"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Swahili <input name="Swahili" type="text" id="Swahili"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Turc <input name="Turc" type="text" id="Turc"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Ukrainien <input name="Ukrainien" type="text" id="Ukrainien"> </span></div></td> <td nowrap><div align="right"><span class="Style8">Vietnamien <input name="Vietnamien" type="text" id="Vietnamien"> </span></div></td> </tr> <tr> <td nowrap><div align="right"><span class="Style8">Zarma <input name="Zarma" type="text" id="Zarma"> </span></div></td> <td nowrap><div align="right" class="Style8"> <label>Grec <input name="Grec" type="text" id="Grec"> </label> </div></td> <td nowrap><div align="right" class="Style8"> <label>Malgache <input name="Malgache" type="text" id="Malgache"> </label> </div></td> </tr> <tr> <td nowrap><div align="right" class="Style8"> <label>Mongol <input name="Mongol" type="text" id="Mongol"> </label> </div></td> <td nowrap><div align="right" class="Style8"> <label>More <input name="More" type="text" id="More"> </label> </div></td> <td nowrap><div align="right" class="Style8"> <label>Sangho <input name="Sangho" type="text" id="Sangho"> </label> </div></td> </tr> <tr> <td nowrap><div align="right" class="Style8"> <label>Tshiluba <input name="Tshiluba" type="text" id="Tshiluba"> </label> </div></td> <td nowrap><div align="right" class="Style8"> <label>Urdu <input name="urdu" type="text" id="urdu"> </label> </div></td> <td nowrap><div align="right" class="Style8"> <label>Yacouba <input name="Yacouba" type="text" id="Yacouba"> </label> </div></td> </tr> <tr> <td nowrap><div align="right"></div></td> <td nowrap><div align="right"> <span class="Style8"> <label>Autre <input name="autre" type="text" id="autre"> quantité <input name="quantité" type="text" id="quantité"> </label> </span> </div></td> <td nowrap><div align="right"></div></td> </tr> </table> <p align="center" class="Style8">&nbsp;</p> <p align="center" class="Style8"><img src="../cd/dieuvousaime.jpg" width="225" height="225"></p> <p align="center" class="Style8"> <label>Quantité <input name="dieuvousaime" type="text" id="dieuvousaime"> </label> </p> <p align="center" class="Style8">&nbsp;</p> <p align="center" class="Style8"><img src="../cd/lagneaudedieu.jpg" width="225" height="225"> </p> <p align="center" class="Style8"> <label>Quantité <input name="agneaudedieu" type="text" id="agneaudedieu"> </label> </p> <p align="center" class="Style8">&nbsp;</p> <p align="center" class="Style8"><img src="../cd/johnglass.JPG" width="225" height="225"> </p> <p align="center" class="Style8"> <label>Quantité <input name="johnglass" type="text" id="johnglass"> </label> </p> <p align="center" class="Style8">&nbsp;</p> <p align="center" class="Style8"><img src="../cd/bonnenouvelle.jpg" width="225" height="225"> </p> <p align="center" class="Style8"> <label>Format A4 Quantit&eacute; <input name="A4bonnenouvelle" type="text" id="A4bonnenouvelle"> </label> </p> <p align="center" class="Style8"> <label>Format A5 Quantit&eacute; <input name="a5bonnenouvelle" type="text" id="a5bonnenouvelle"> </label> </p> <p align="center" class="Style8">Format carte de cr&eacute;dit Quantit&eacute; <input name="cartecr&eacute;ditbonnenouvelle" type="text" id="cartecr&eacute;ditbonnenouvelle"> </p> <p align="center" class="Style8">&nbsp;</p> <p align="center" class="Style8"><img src="../cd/christvivant.jpg" width="225" height="225"> </p> <p align="center" class="Style8"> <label>Quantité <input name="Christvivant" type="text" id="Christvivant"> </label> <label> </label> </p> <p align="center" class="Style8">&nbsp;</p> <p align="center" class="Style8">Message: </p> <p align="center" class="Style8"> <TEXTAREA NAME=Message rows=10 cols=90></TEXTAREA> </p> <p align="center" class="Style8"> <INPUT name="SUBMIT" TYPE=SUBMIT onClick="MM_validateForm('email','','RisEmail');return document.MM_returnValue" VALUE=Envoyer> </p> <p align="center" class="Style8"> <INPUT name="RESET" TYPE=RESET VALUE=Effacer> </p> <div align="center"> <pre align="left" class="Style13">&nbsp; </pre> <pre align="left" class="Style13">&nbsp; </pre> </div> <p align="center" class="Style14">&nbsp;</p> </form> <p align="center" class="Style8">&nbsp;</p> <p align="center" class="Style14">&nbsp;</p> </div> </body> </html>
AU SECOURS