Formulaire

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 : Formulaire

Re: Formulaire

par xTG » 26 févr. 2011, 15:13

Oula cela devient loufoque là...

Allez...
if ( !isset($_POST['doc']) || (isSet($_POST['doc']) && $_POST['doc'] == "Choisissez un document") )
  $temp = "";
else
  $temp = $_POST["doc"];

Re: Formulaire

par Atomic34 » 26 févr. 2011, 13:04

Salut ! Je pense savoir d'où vient ton problème. Normalement, pour caractériser un "if" (éviter de confondre la partie "if" avec la partie "else") il faut mettre des { et }. Pareil pour else.
Exemple avec ton code :
if (isset($doc) == "Choisissez un document")
{
          $temp = "";
}
else
{
          $temp = $_POST["doc"];
}

par Ryle » 17 juil. 2006, 11:27

Bah c'est surtout que la méthode isSet() retourne un booléen et certainement pas une chaine.. donc la comparaison sera toujours fausse et ton $temp sera toujours égal à $_POST["doc"].

Le isSet() aurait du être utilisé avant quand tu récupères les variables pour savoir si elle a bien été envoyée..

par leakcim51 » 17 juil. 2006, 10:13

Bonjour,
pourrais tu ajouter le code source de ta liste déroulante doc (SELECT) afin de pouvoir t'aider.

Je ne comprend pas pourquoi tu as:
isset($doc) == "Choisissez un document") 
alors que ta liste contient: "Choisir une méthode".

@+

Formulaire

par Dom! » 16 juil. 2006, 13:07

Bonjour,

Je suis en train de faire un formulaire pour mon site trés simple.

J'ai dans ce formulaire une liste déroulante "doc" avec des valeurs :

Choisir une méthode
lettre
email
fax

Mon probléme est de lui dire dans la validation du formulaire que si l'utilisateur laisse "doc" sur "Choisir une méthode" il inscrive un message d'erreur.

j'ai donc fait ceci mais ca ne fonctionne pas :
<?
include("config.php");

$nom = $_POST["nom"];
$prenom = $_POST["prenom"];
$sonmail = $_POST["sonmail"];
$doc = $_POST["doc"];
$numero = $_POST["numero"];

if (isset($doc) == "Choisissez un document")
  	$temp = "";
	else $temp = $_POST["doc"];

if (empty($nom) OR empty($prenom) OR empty($sonmail) OR empty($temp) OR empty($numero))
	{
	print '<center><b><font face="verdana" size="4">Erreur , champs manquants :</b></font></center><br><br>';
		if(empty($nom)) { print '<center><font face="verdana" size="2">Vous n\'avez pas saisi votre nom.<br>'; }
		if(empty($sonmail)) { print '<center>Vous n\'avez pas saisi votre Email.<br>'; }
		if(empty($prenom)) { print '<center>Vous n\'avez pas saisi votre prenom.<br>'; }
		if(empty($temp)) { print '<center> Vous n\'avez pas selectionné votre document.<br>'; } 
		if(empty($numero)) { print '<center>Vous n\'avez pas saisi votre numèro de contrat. <br>'; } 
	print '<p align="center"><a href="javascript:history.back()">Retour</a>'; exit;
	}
	else
	{
$sonmail = $_POST['sonmail'];
$copie = $_POST["copie"];
$point = strpos($sonmail,".");
$arobas = strpos($sonmail,"@");
if($point == '')
{
echo '<center><br>Votre adresse email est invalide<br><p align="center"><a href="javascript:history.back()">Retour</a><br>'; include("include/footer.php"); exit;
}
elseif($arobas == '')
{
echo '<center><br>Votre adresse email est invalide<br><p align="center"><a href="javascript:history.back()">Retour</a><br>'; include("include/footer.php"); exit;
}
else
{
if($copie == "oui" ) {
       Mail("$sonmail","$doc","$m1","from: $from"); 
       Mail("$votremail","$doc","$m2","from: $votremail");
echo "<center>Votre message a bien &eacute;t&eacute; envoyer !<br><br>Un email de confirmation a &eacute;t&eacute; envoyer &agrave; l'adresse : $sonmail<br><br>Merci pour votre message , A bient&ocirc;t . L'&eacute;quipe $votresite";print '<p align="center"><a href="http://www.sagipassurances.com/accueil.php">Retour</a>';exit;
} else {
}
echo "<center>Votre message a bien &eacute;t&eacute; envoyer !<br>Merci pour votre message , A bient&ocirc;t . L'&eacute;quipe $votresite";print '<p align="center"><a href="http://www.sagipassurances.com/accueil.php">Retour</a>';
{
       Mail("$votremail","$doc","$m2","from: $votremail");
}
include("include/footer.php");
}
}
?>
La validation du formulaire se fait sur une nouvelle page : envoi.php
Le message d'erreur est le même malgrés les choix de l'utilisateur.
Merci pour votre aide.