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 :

Vérifier le contenu mysql_fetch_array [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut Vérifier le contenu mysql_fetch_array
    j'ai trouver plein de doc qui explique comment verifié le contenu d'un
    array mais cela ne fonctionne pas a la sortie mysql_fetch_array
    je pense que je doit avoir une erreur d'ecriture

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $recherche_option = mysql_query ("select * from options  where id_auto='$id'")
    or die('Erreur MySQL : '.mysql_error());
    while($result_option = mysql_fetch_array ($recherche_option))
    {
    $recup_option= ($result_option['option_auto']);
    echo "$recup_option";
     
     
    if (in_array ('1', $result_option)) 
    {
    print "Climatisation manuelle<br>";
    }
    }

  2. #2
    Membre expérimenté Avatar de Gaara-Manga
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Avril 2007
    Messages : 247
    Par défaut
    In array est utilisé pour chercher des infos dans un tableau hors toi tu cherches dans un chaine.

    Faudra donc que tu utilises plutôt eregi ce qui donnerais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (eregi('1', $result_option) > 0) 
    {
        print "Climatisation manuelle<br>";
    }

  3. #3
    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
    Si j'ai bien suivi, tu veux afficher le texte correspondant a chaque option.

    Une bonne conception est de créer une table de référence :

    tr_options
    --
    option_id
    option_nom

    Et ensuite tu recuperes le nom par ta requete

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $recherche_option = mysql_query ("select option_nom from options JOIN tr_options USING (option_id) where id_auto='$id'")
    or die('Erreur MySQL : '.mysql_error());
    while($rrow = mysql_fetch_array ($recherche_option))
    {
    echo $row['option_nom'];
    }
    Traiter cela en dur dans le code PHP ne serait pas serieux.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut
    ouép

    j'ai un autre probleme

    je recupere les données apparement de toute les colonnes
    ce qui ne va pas du tout c'est que du coup j'ai plein de 1 celui de l'id puis celui de l'id_auto etc... donc
    plein de climatisation manuelle qui s'affiche
    pourtant je precise bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $recup_option= ($result_option['option_auto']);
    je ne sais pas comment on fait pour recuperé avec une chaine uniquement
    le contenu de option_auto ?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut
    Sabotage si je comprend
    je garde ma table options tel quel qui contien les options en correspondance avec les auto se trouvent dans la table automobile
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     	             id     id_auto option_auto
    	 		1 	1 	6
    	 		2 	1 	15
    	 		3 	1 	18
    	 		4 	1 	21
    	 		15 	2 	8
    	 		16 	2 	11
    	 		17 	2 	15
    	 		18 	2 	16
    	 		19 	2 	17
    je crée une table qui s'appel
    tr_option
    avec 3 champs
    id (autoincrement)
    option_id
    option_nom
    et j'insere les option_id et les noms qui correspondant

  6. #6
    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
    Tout a fait sauf que tu n'as besoin que d'un seul id.
    Tu peux le mettre en autoincrement ou en fixe selon la facon dont sont gerès ces numéros d'options.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut
    la requete je doit avoir un couac quelque part !!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $recherche_option = mysql_query ("select option_auto from options 
    JOIN options_nom USING (id) where id_auto='$id'")
    or die('Erreur MySQL : '.mysql_error());
     
    while($rrow = mysql_fetch_array ($recherche_option))
    {
    echo $rrow['nom'];
    }

    options
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
                        id     id_auto option_auto
    	 		1 	1 	6
    	 		2 	1 	15
    	 		3 	1 	18
    	 		4 	1 	21
    	 		15 	2 	8
    	 		16 	2 	11
    	 		17 	2 	15
    	 		18 	2 	16
    	 		19 	2 	17
    option_nom
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    id                   nom_option
     
    1 	      Climatisation manuelle
    2 	               Abs
    3 	        Quatre roues motrices
    etc................

  8. #8
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $recherche_option = mysql_query ("select nom_option from options 
    JOIN options_nom ON option_auto=option_nom.id where id_auto='$id'")
    Je te conseille cependant d'utiliser des noms plus clairs pour ta base de donnée.
    Avoir une table "option_nom" qui contient un champ "nom_option" c'est
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut
    oué c'est vrai que ca commence a ressemblais a une usine a gaz

    2 chose
    1---Erreur MySQL : Unknown column 'option_nom.id' in 'on clause'
    2--j'ai pas de champs nom_option dans la table options

  10. #10
    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
    Dans la table "option_nom" tu as un bien un champ "id" ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut
    oui , mais j'ai cette erreur !!!

  12. #12
    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
    Il y avait un S farceur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $recherche_option = mysql_query ("select nom_option from options 
    JOIN option_nom ON option_auto=option_nom.id where id_auto='$id'")
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  13. #13
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut


    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in


    un pti question quand la requete commence par
    select nom_option from options cela ne veut pas dire
    sectionne le champs NOM_OPTION dans la table OPTIONS

    a l'ocas Sabotage fait moi svp si ce n'est pas trop demande la requete en francais que je finisse par savoir les lires

  14. #14
    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
    l'erreur vient du fait que la requete n'a rien retourné.
    verifier que tu as bien remplit le nom d'option pour les options de l'id du vehicule que tu interroges.

    select nom_option
    selectionne le champ "nom_option"

    from options JOIN option_nom
    dans l'ensemble de la table "options" croisée à la table "option_nom"

    ON option_auto=option_nom.id
    qu'on fait se rejoindre par leurs champs option_auto et id respectivement
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  15. #15
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut
    je crois qu'il faut que je fasse une pause j'ai du mal a continué de raisonner
    sa fume

    les tables sont toute pleine
    options contien bien les options de deux auto
    options_nom contien bien un id et une colonne nom qui contien le nom de toute les option

    Table OPTIONS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
                        id     id_auto option_auto
    	 		1 	1 	6
    	 		2 	1 	15
    	 		3 	1 	18
    	 		4 	1 	21
    	 		15 	2 	8
    	 		16 	2 	11
    	 		17 	2 	15
    	 		18 	2 	16
    	 		19 	2 	17
    OPTION_NOM

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    id                   nom_option
     
    1 	      Climatisation manuelle
    2 	               Abs
    3 	        Quatre roues motrices

  16. #16
    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
    Non.

    chaque option_auto dans OPTIONS doit correspondre à un id dans OPTION_NOM

    sinon comment veux-tu faire le lien entre les deux tables ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  17. #17
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut
    ba je crois bien que c'est comme ca qu'elle sont faite chaque option_auto dans OPTIONS correspond bien à un id dans OPTION_NOM


    tiens
    table options la g bien id_auto 1 qui a comme option_auto
    6,15,18,21,24, et.... et..
    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
    16
    17
    18
    19
    20
    21
    22
    23
     
      		        id   id_auto 	     option_auto
    			1 	1 		6
    			2 	1 		15
    			3 	1 		18
    			4 	1 		21
    			5 	1 		24
    			6 	1 		28
    			7 	1 		31
    			8 	1 		35
    			9 	1 		37
    			10 	1 		38
    			11 	1 		39
    			12 	1 		40
    			13 	1 		42
    			14 	1 		43
    			15 	2 		8
    			16 	2 		11
    			17 	2 		15
    			18 	2 		16
    			19 	2 		17
    			20 	2 		18
    			21 	2 		24
    et dans la table options_nom l'id N° 6 correspond a ronce de noyer
    le 7 a Vitres électriques etc...


    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
    16
    17
     
    		        id 	 nom_option
     
    			1 	Climatisation manuelle
    			2 	Abs
    			3 	Quatre roues motrices
    			4 	Climatisation automatique
    			5 	Airbag conducteur
    			6 	Ronce de Noyer
    			7 	Vitres électriques
    			8 	Airbag passager
    			9 	Jantes alliage
    			10 	Vitres teintés
    			11 	Suspension piloté
    			12 	Ordinateur de bord
    			13 	Siéges chauffants
    			14 	Lampe xénon
    ta raison deja que j'ai du mal a comprendre les jointures en plus les champs porte presque les meme nom que les tables je suis perdu

  18. #18
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $sql="select nom_option from options 
    JOIN option_nom ON option_auto=option_nom.id where id_auto=$id")
    $recherche_option = mysql_query($sql) or die (mysql_error());
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  19. #19
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 487
    Par défaut
    comme ca c
    Table 'nebilpro.option_nom' doesn't exist
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $sql="select nom_option from options 
    JOIN option_nom ON option_auto=option_nom.id where id_auto=$id";
    mais au dela de cette erreur
    je n'est pas de champs nom_option dans la table OPTIONS

  20. #20
    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
    controle le nom de tes tables.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Vérifier le contenu d'un répertoire
    Par llaffont dans le forum C#
    Réponses: 9
    Dernier message: 05/07/2007, 09h42
  2. [VBA-E]vérifier si contenue de deux cellules est identique
    Par k-eisti dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/05/2007, 18h01
  3. Vérifier le contenu d'un champ
    Par Zebulon777 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/01/2007, 14h28
  4. vérifier le contenu d'un Memo ou RichEDit
    Par smail21 dans le forum Composants VCL
    Réponses: 5
    Dernier message: 14/04/2006, 13h53

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