Olivier Miakinen wrote:
> Le 06/10/2007 00:12, yoyo@invalid.fr a écrit :
>>>
>>>> finalement le seul controle indispensable d'un formulaire c'est de
>>>> vérifier qu'il soit pas envoyé vide et de verifier que les élements
>>>> saisie soit cohérant avec ce qui est demandé.
>>> Avant de savoir s'il est vide, il faut savoir s'il existe, et s'il est
>>
>> justement est ce que si une variable esst vide est ce qu'elle existe dans
>> la cas ou l'internaute validerait un post vide.
>
> Je viens de me torturer l'esprit pendant 5 bonnes minutes en essayant de
> comprendre ta phrase, mais je n'y arrive pas. Dans le doute, je vais
> répondre quelque chose en espérant que ce sera la réponse à ta question.
>
> 1) La première chose à faire est de vérifier par isset si le tableau
> $_REQUEST contient bien une entrée du nom qui t'intéresse.
>
> 2) Si le premier résultat est positif, la seconde chose à faire *peut*
> être de regarder si la valeur est une chaîne vide, mais ce n'est pas
> forcément obligatoire. Vérifier directement que la valeur est bien
> de la forme que tu attends peut suffire (par exemple, pour un entier
> positif, vérifier qu'elle contient un chiffre ou plus et aucun autre
> caractère).
>
>
> P.-S. : Ton adresse n'est toujours pas conforme aux recommandations pour
> les adresses invalides. Ça t'ennuie de mettre le .invalid à la fin ?
désolé je me suis peux être mal exprimé.
j'ai eu le cas sur un script ou j'ai essayé de faire une isset suivi d'un
empty imbriqué dans le premier if.
je me demandais si le formulaire est posté vide est ce que les variables
testé par isset existe quand même,
ci joint un exemple de code.
if(isset($_POST['sexe']) && (isset($_POST['nom'])) &&
(isset($_POST['prenom'])) && (isset($_POST['code_postal']))
&&(isset($_POST['adresse'])) && (isset ($_POST['ville'])) &&(
isset($_POST['telephone'])) &&(isset($_POST['courriel'])) &&
(isset($_POST['message']))){
$sexe=$_POST['sexe'];
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$cp=$_POST['code_postal'];
$adresse=$_POST['adresse'];
$ville=$_POST['ville'];
$telephone=$_POST['telephone'];
$mail=$_POST['courriel'];
$demande=$_POST['message'];
$erreur = 0;
$message_erreur="Veuillez compléter";
if (empty($_POST['nom']))
{
echo "<br/><p style= \"color:red;\"> $message_erreur votre nom <br>";
$erreur = 1;
}
if (empty($_POST['prenom']))
{
echo "<br/><p style= \"color:red;\"> $message_erreur votre prénom
<br> ";
$erreur = 1;
}
if (empty($_POST['adresse']))
{
echo "<br/><p style= \"color:red;\"> $message_erreur votre adresse
<br>";
$erreur = 1;
}
if (empty($_POST['code_postal']))
{
echo "<br/><p style= \"color:red;\"> $message_erreur votre code postal
<br>" ;
$erreur = 1;
}else
if(!preg_match("!^[0-9]{5}$!",$_POST['code_postal']))
{
echo "<br/>veuillez saisir un Code Postal correct <br>";
$erreur = 1;
}
if (empty($_POST['ville']))
{
echo "<br/><p style= \"color:red;\"> $message_erreur votre ville <br>";
$erreur = 1;
}
if (empty($_POST['telephone']))
{
echo "<br/><p style= \"color:red;\"> $message_erreur votre téléphone
<br>";
$erreur = 1;
}
else
if (!preg_match("!^0[1-48][0-9]{8}$!", $_POST['telephone']))
{
echo "<br/>veuillez saisir un numéro téléphone correct <br>";
$erreur = 1;
}
if(empty($_POST['courriel']))
{
echo "<br/><p style= \"color:red;\"> $message_erreur votre mail <br>";
$erreur = 1;
}else
/*if (!preg_match("!^[a-z0-9.-_]+@[a-z.]+.[a-z]{2,3}$!"
$_POST['mail']))
{
echo "<br/>veuillez saisir une adresse email correct <br>";
$erreur = 1;
}*/
if ($erreur == 0){
erreur == 0){
$sql=pg_query($conn, "INSERT INTO contact(sexe, nom, prenom, adresse,
code_postal, ville, telephone, courriel, message)
VALUES('$sexe', '$nom', '$prenom', '$adresse', '$cp','$ville', '$telephone', '$mail','$demande')");
//echo "\n \n".$sexe.' ' .$nom.' ' .$prenom . ' '. "Votre demande a
bien été enregistrer nous la traiterons avec le plus grand soin";
}
}