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

PHP & Base de données Discussion :

[SQL] Requête et WHERE


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Aube (Champagne Ardenne)

    Informations forums :
    Inscription : Août 2007
    Messages : 16
    Par défaut [SQL] Requête et WHERE
    Bonjour à tous. J'ai un problème avec la requête WHERE, en fait j'ai un formulaire recherche_joueur, quand je tape le nom d'un joueur ( de foot ) dans l'un des champs et que je clique sur recherche, cela me renvoie sur la page confirm_recherche_joueur ( ce qui est normal) mais rien n'est affiché à l'écran, pas de nom de joueur ni de prénom ( si je change de champs ). je pense que cela vient de la requête WHERE mais j'ai passé une après-midi à chercher , sans trouvé ... De quoi cela peut-il venir d'après vous ? Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    mysql_connect('serveur','login','pass') ;
    mysql_select_db('nom_db');
    $reponse = mysql_query(
    "SELECT * FROM football_players
    WHERE (lastname=' . $lastname . '
    AND firstname=' . $firstname . '
    AND country=' . $country . '
    AND birthday=' . $birthday . '
    AND birthcity=' . $birthcity . '
    AND international=' . $international . '
    AND height=' . $height . '
    AND weight=' . $weight . '
    AND position=' . $position . '")
    or die(mysql_error()) ;
    while ($donnees = mysql_fetch_array($reponse) )

  2. #2
    Membre confirmé
    Inscrit en
    Décembre 2004
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 116
    Par défaut
    as tu essayer de faire un affichage de la requete générée?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Aube (Champagne Ardenne)

    Informations forums :
    Inscription : Août 2007
    Messages : 16
    Par défaut
    Oula... Désolé je ne suis que débutant en sql, je n'ai que les bases. Peut tu m'expliquer ce que c'est si ça te dérange pas ?

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Aube (Champagne Ardenne)

    Informations forums :
    Inscription : Août 2007
    Messages : 16
    Par défaut
    J'ai déjà essayer de remplacer AND par OR mais rien n'y fait, cela ne fonctionnais toujours pas

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2004
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 116
    Par défaut
    Si une seule des variables est renseignée, c'est normal que la requête ne retourne rien... Remplace les AND par des OR et reteste...
    il a raison trop de "and" tue le "and"

  6. #6
    Membre confirmé
    Inscrit en
    Décembre 2004
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 116
    Par défaut
    "SELECT * FROM football_players
    WHERE (lastname=' . $lastname . '
    AND firstname=' . $firstname . '
    AND country=' . $country . '
    AND birthday=' . $birthday . '
    AND birthcity=' . $birthcity . '
    AND international=' . $international . '
    AND height=' . $height . '
    AND weight=' . $weight . '
    AND position=' . $position . '")


    Ou se ferme cette parenthese? car celle a la fin est hors des ""

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Aube (Champagne Ardenne)

    Informations forums :
    Inscription : Août 2007
    Messages : 16
    Par défaut
    Voilà j'ai remplacé AND par OR et j'ai déplacé la " ( " devant SELECT mais rien n'y fait, toujours pas de joueur à l'écran, alors que si j'enlève la requête WHERE, cela affiche tous les joueurs répertorié dans ma BDD ?!?!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ("SELECT * FROM football_players
    WHERE lastname=' . $lastname . '
    OR firstname=' . $firstname . '
    OR country=' . $country . '
    OR birthday=' . $birthday . '
    OR birthcity=' . $birthcity . '
    OR international=' . $international . '
    OR height=' . $height . '
    OR weight=' . $weight . '
    OR position=' . $position . '")

  8. #8
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 134
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 134
    Par défaut
    Si une seule des variables est renseignée, c'est normal que la requête ne retourne rien... Remplace les AND par des OR et reteste...
    Citation Envoyé par orafrance Voir le message
    Ce forum est dédié au langage SQL, merci donc de bien vouloir vous limiter à celui-ci lors de la citation de votre code. Notamment le code PHP, étant difficilement lisible pour les profanes veuillez l'éviter
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

Discussions similaires

  1. [MySQL] Requête SQL avec clause where max
    Par younes371 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/12/2009, 09h21
  2. [SQL] Requête sql où la condition where ne sert pas
    Par gRaNdLeMuRieN dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 16/05/2007, 09h26
  3. probleme requête insert.... where
    Par Amandine62 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 21/02/2005, 14h26
  4. [PL/SQL]requête imbriquée
    Par Nadine dans le forum Oracle
    Réponses: 6
    Dernier message: 01/02/2005, 16h21
  5. [SQL] Requête à jointure qui ne fonctionne pas
    Par Bensor dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/12/2004, 16h10

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