PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 20-01-2010 16:28:41

fred_21
Membre
Inscription : 08-01-2010
Messages : 7

[débutant] Récupération de valeur dans mysql

Bonjour,

dans une base de donnée, une table preference a été créée pour contenir un certain nombre de paramètres et d'options comme suit:

pref_nom     pref_option       pref_activation
tarif1           1,68                 o
tarif2           1,69                 o
tarif3           1,80                 o
etc...
des tarifs qui sont amenés à être modifiés chaque année.
J'aimerais récupérer la valeur correspondant au nom
j'ai essayé comme ça mais ça ne donne rien.


$query="SELECT pref_option FROM TABLE WHERE pref_activation='o'";
    $result=mysql_query($query);
    while ($val=mysql_fetch_array($result));{
     $tarif1=$val["tarif1"];
     $tarif2=$val["tarif2"];
     $tarif3=$val["tarif3"];
     }
 

En faisant ça je pense que je récupère l'entrée de la colonne pref_nom. Convaincu que ce n'est pas la bonne méthode, si quelqu'un peut prendre deux ou troi minutes pour m'expliquer, j'en serais ravi.

Un grand merci d'avance.

Fred_21

Hors ligne

#2 20-01-2010 17:59:20

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

Re : [débutant] Récupération de valeur dans mysql

salut,

SELECT pref_nom FROM TABLE WHERE pref_activation='o' ?

@+


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

#3 20-01-2010 18:00:00

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : [débutant] Récupération de valeur dans mysql

En fait tu ne récupères que le champs que tu passes dans ton select.
Chaque enregistrement sera numéroté avec mysql_fetch_array

Donc si les enregistrements sont dans l'ordre de ton exemple la variable $val aura les valeurs suivantes :

Première entrée dans la boucle : $val['pref_option'] = 1,68
Seconde entrée dans la boucle : $val['pref_option'] = 1,69
Troisième entrée dans la boucle : $val['pref_option'] = 1,80

Donc si tu souhaites récupérer aussi le champs pref_nom il te faut l'ajouter dans le select.

Hors ligne

#4 21-01-2010 08:29:12

fred_21
Membre
Inscription : 08-01-2010
Messages : 7

Re : [débutant] Récupération de valeur dans mysql

Bonjour et merci pour vos réponses.
en fait, l'ordre et les nom des différents enregistrements de pref_nom sont tous différents (les trois tarifs sont les seuls qui se ressemblent).
Ce que je souhaite récupérer, c'est la valeur y de pref_option quand pref_nom vaut x.

Hors ligne

#5 21-01-2010 08:42:46

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : [débutant] Récupération de valeur dans mysql

fred_21 a écrit :

Ce que je souhaite récupérer, c'est la valeur y de pref_option quand pref_nom vaut x.

Saluton,

$query='SELECT pref_option
         FROM nom_de_la_table
         WHERE pref_activation="o"
         AND pref_nom="x"'
;

Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#6 21-01-2010 09:24:44

fred_21
Membre
Inscription : 08-01-2010
Messages : 7

Re : [débutant] Récupération de valeur dans mysql

Ok, c'est bien ce que j'utilisais comme code avant, pour chacune des valeurs à récupérer, mais j'espérais pouvoir réduire un peu le code et ne faire plus qu'une requête sur la base.
Tant pis.

Merci encore

Hors ligne

#7 21-01-2010 10:12:24

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : [débutant] Récupération de valeur dans mysql

C'est possible, mais il te faut filtrer (clause WHERE) la requête sur une plage de valeurs pour pref_nom, et mettre cette colonne dans la projection (clause SELECT) pour pouvoir distinguer une ligne de résultat d'une autre lors du parcours (fetch)

$query='SELECT pref_nom, pref_option
              FROM nom_de_la_table
              WHERE pref_activation="o"
              AND pref_nom IN ("tarif1","tarif2","tarif3")'
;

Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

Pied de page des forums