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 :

Test d'égalité avec if


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 207
    Par défaut Test d'égalité avec if
    Bonjour.

    Dans un de mes tests je fait ceci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (($val['nom'] == "$NOM") && ($val['adresse1'] == "$ADRESSE1_RECUP" ......))
    Si un des champs qui est dans le if n'est pas rempli dans ma base du coup on ne rentre pas dans la boucle alors qu'il faudrait y rentrer car par exemple $ADRESSE1_RECUP = "" .

    Comment s'y prendre?

    Merci.

  2. #2
    Membre Expert Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Par défaut
    Je pense que ton problème est plutôt au niveau de la façon de rédiger ta requête sur ta base.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 207
    Par défaut
    Non.

    Je fais cette requête.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT nom,adresse1,adresse2,cp,localite FROM util WHERE id = '$ID'
    On va parler uniquement du cas qui m'embette.

    Imaginons que le champs adresse2 ne soit pas renseigné pour un de mes enregistrements.

    Voici mon if
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (($val['nom'] == "$NOM") && ($val['adresse1'] == "$ADRESSE1_RECUP") && ($val['adresse2'] == "$ADRESSE2_RECUP") ...)
    En gros on devrait rentrer dans ma boucle car le nom et l'adresse1 correspondent et $val['adresse2'] dans mon cas vaut null car le champs n'est pas renseigné dans ma BDD et $ADRESSE2_RECUP = ""

    A cause de cela on ne rentre pas dans la boucle.

    J'espère que cela est plus clair.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 207
    Par défaut
    Je précise que $NOM, $ADRESSE1_RECUP ... sont récupérés par lecture dans un fichier texte.

    J'ai essayé comme cela aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strcasecmp($val['adresse2'], $ADRESSE2) == 0
    Et ben ca me dit qu'il n'y a pas égalité alors que $adresse2 n'existe pas dans mon txt n'y dans ma bdd donc ça devrait être égal!!!!!

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    '$ADRESSE2' comme tu le mets ici et "$ADRESSE2" comme tu le mets au début, ca ne vaut pas la meme chose.

    Les variables ne sont pas interpretées dans les guillemets simples.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 207
    Par défaut
    Citation Envoyé par sabotage Voir le message
    '$ADRESSE2' comme tu le mets ici et "$ADRESSE2" comme tu le mets au début, ca ne vaut pas la meme chose.

    Les variables ne sont pas interpretées dans les guillemets simples.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strcasecmp($val['adresse2'], $ADRESSE2) == 0
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (($val['nom'] == $NOM) && ($val['adresse1'] == $ADRESSE1_RECUP' && ($val['adresse2'] == $ADRESSE2_RECUP) ...)
    meme comme cela ca ne satisfait pas mon test.
    Je suis à cours de solution ....

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

Discussions similaires

  1. [Python 3.X] test d'égalité avec des lancers de dés
    Par bosskev62 dans le forum Général Python
    Réponses: 2
    Dernier message: 07/03/2015, 19h45
  2. [Tests] Quels Benchmark avec rapports chiffrés ?
    Par morph12345 dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 30/11/2005, 18h20
  3. Test sur formulaire avec liste des erreurs
    Par Nicos77 dans le forum Langage
    Réponses: 37
    Dernier message: 17/11/2005, 10h22
  4. Test PostgreSQL v8 avec NAMEDATALEN = 128 caracteres
    Par hondjack dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 13/10/2004, 00h32
  5. Test d'éxistence avec un RecordSet
    Par matt63 dans le forum Langage SQL
    Réponses: 10
    Dernier message: 21/04/2004, 12h23

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