IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

If avec plusieurs conditions


Sujet :

Langage PHP

  1. #1
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    584
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 584
    Points : 235
    Points
    235
    Par défaut If avec plusieurs conditions
    Bonjour,
    J'utilise ce code pour récupérer toutes les données d'un formulaire et renvoyer au formulaire lorsqu'il manque un champ. hors j'ai 1 champs qui peuvent rester vide.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    foreach($_POST as $key=>$val) 
    			{
    			 $$key = $val; 
    			 if(empty($$key) and $key != 'imgjeuxexiste' )
    			{
    			echo 'le formulaire n\'est pas rempli';
    			echo '<a href="javascript:history.back()">Retour</a>';
    			exit();
    			}
    			 $$key = htmlentities($$key, ENT_QUOTES);
     
    			}
    Aprés avoir modifier mon script, j'ai rajouté un champ dans le formulaire qui n'est pas obligatoire non plus.
    Je voudrai rajouté dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(empty($$key) and $key != 'imgjeuxexiste' )
    le nom du textbox essai.

    Je ne sais pas comment le rajouter dans la condition if.

    est ce que vous pourriez m'aider.

    Je vous remercie par avance.

  2. #2
    Membre expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Points : 3 344
    Points
    3 344
    Par défaut
    Bonjour,

    Si on restait sur la même logique, cela donnerait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($key != 'essai' and empty($$key) and $$key != 'imgjeuxexiste')
    Je trouve assez bizarre de vérifier que les valeurs de tous les champs sont différentes de 'imgjeuxexiste'...

    Mais attention : ce contrôle des paramètre est inefficace si le client essaie de contourner le formulaire.

    Il suffit de ne pas envoyer une donnée obligatoire pour qu'elle ne soit pas testée, et que le reste du script s'exécute...

    Il serait préférable de créer un tableau des champs obligatoires et de vérifier que tous ces champs ont bien une valeur.

  3. #3
    Membre actif
    Inscrit en
    Juin 2006
    Messages
    584
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 584
    Points : 235
    Points
    235
    Par défaut
    ce script est dans la partie administration c'est juste au cas ou j'oublie un champt pour ne pas l'insérer, je ne vais en aucun cas essayé de 'pirater'

    Mais merci pour le conseil, car je n'y avais pas penser pour les parties visiteurs

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Somme si avec plusieurs conditions et plage de données variables.
    Par arnold95 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 12/10/2007, 14h19
  2. Réponses: 1
    Dernier message: 27/06/2007, 16h01
  3. Having avec plusieurs conditions ?
    Par jchatard dans le forum Requêtes
    Réponses: 2
    Dernier message: 05/04/2007, 15h58
  4. Si je fais un if() avec plusieurs conditions ..
    Par Pauli dans le forum Langage
    Réponses: 2
    Dernier message: 25/01/2007, 16h47
  5. like avec plusieur condition
    Par wayak3 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/01/2007, 11h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo