Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2278 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Mauvaise requete MySQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Mauvaise requete MySQL

n°629998
freed102
Arayashiki
Posté le 03-02-2004 à 18:08:42  profilanswer
 

voici le contenu de ma table MySQL :
 

nb_pages_total  prix  temps  
Modifier  Effacer  20 0.70 2.50  
Modifier  Effacer  40 1.02 1.25  
Modifier  Effacer  55 1.26 0.92  
Modifier  Effacer  80 1.67 0.63  
Modifier  Effacer  95 1.92 0.53  
Modifier  Effacer  115 2.29 0.43  
Modifier  Effacer  140 2.74 0.35  
Modifier  Effacer  165 3.14 0.30  
Modifier  Effacer  190 3.53 0.27  
Modifier  Effacer  220 4.00 0.23  
Modifier  Effacer  240 4.27 0.22  
Modifier  Effacer  290 5.37 0.17  
Modifier  Effacer  330 5.91 0.15  
Modifier  Effacer  390 6.58 0.13


 
voici ma requete :
 
 

Code :
  1. $sqlconnect = "SELECT prix,temps FROM $tarifs_finitions WHERE nb_pages_total >= $nb_pages_coul_nb ORDER BY nb_pages_total ASC LIMIT 1";
  2.       $res = mysql_query($sqlconnect) or die(mysql_error());
  3.       $hop=mysql_fetch_array($res);
  4.        $prix_reliure_unite=$hop["prix"];
  5.  $temps_reliure_minutes=$hop["temps"];


 
le prob c'est que quand je par exemple $nb_pages_coul_nb = "47"
... il me reponds que le $prix_reliure_unite="2.29" !!!
 
C pas tres logique... I did a mistake... but WHERE ????
 
Merci
 
Freed

mood
Publicité
Posté le 03-02-2004 à 18:08:42  profilanswer
 

n°630022
freed102
Arayashiki
Posté le 03-02-2004 à 18:37:12  profilanswer
 

bouhhhhh !! ya personne qui veut m'aider !! :((( (ouiiiiiiiin!)

n°630075
mrbebert
Posté le 03-02-2004 à 19:37:25  profilanswer
 

Tu aurais la structure de la table (par la commande "EXPLAIN nom_de_la_table" ) ?
(en particulier le type de la colonne "nb_pages_total" :ange: )

n°630081
freed102
Arayashiki
Posté le 03-02-2004 à 19:40:22  profilanswer
 

requête SQL
 
requête SQL : [Modifier]
EXPLAIN tarifs_finitions_plastique  
 
 
 
 
Field  Type  Null  Key  Default  Extra  
nb_pages_total varchar(8)     0    
prix varchar(8)          
temps varchar(8)     0    

n°630084
freed102
Arayashiki
Posté le 03-02-2004 à 19:41:53  profilanswer
 

j'ai ça aussi :
 

Citation :


# Structure de la table `tarifs_finitions_plastique`
#
 
CREATE TABLE tarifs_finitions_plastique (
  nb_pages_total varchar(8) NOT NULL default '0',
  prix varchar(8) NOT NULL default '',
  temps varchar(8) NOT NULL default '0'
) TYPE=MyISAM COMMENT='tarif finitions plastique';
 
#
# Contenu de la table `tarifs_finitions_plastique`
#
 
INSERT INTO tarifs_finitions_plastique VALUES ('20', '0.70', '2.50');
INSERT INTO tarifs_finitions_plastique VALUES ('40', '1.02', '1.25');
INSERT INTO tarifs_finitions_plastique VALUES ('55', '1.26', '0.92');
INSERT INTO tarifs_finitions_plastique VALUES ('80', '1.67', '0.63');
INSERT INTO tarifs_finitions_plastique VALUES ('95', '1.92', '0.53');
INSERT INTO tarifs_finitions_plastique VALUES ('115', '2.29', '0.43');
INSERT INTO tarifs_finitions_plastique VALUES ('140', '2.74', '0.35');
INSERT INTO tarifs_finitions_plastique VALUES ('165', '3.14', '0.30');
INSERT INTO tarifs_finitions_plastique VALUES ('190', '3.53', '0.27');
INSERT INTO tarifs_finitions_plastique VALUES ('220', '4.00', '0.23');
INSERT INTO tarifs_finitions_plastique VALUES ('240', '4.27', '0.22');
INSERT INTO tarifs_finitions_plastique VALUES ('290', '5.37', '0.17');
INSERT INTO tarifs_finitions_plastique VALUES ('330', '5.91', '0.15');
INSERT INTO tarifs_finitions_plastique VALUES ('390', '6.58', '0.13');

n°630090
freed102
Arayashiki
Posté le 03-02-2004 à 19:49:38  profilanswer
 

j'ai essayé directement dans PHPMyAdmin :
 

Citation :


requête SQL
 
requête SQL : [Modifier]
SELECT prix,temps FROM tarifs_finitions_plastique WHERE nb_pages_total >= 47 ORDER BY nb_pages_total ASC LIMIT 1  
 
 
 
 
 prix  temps  
Modifier  Effacer  2.29 0.43


 
INCROYABLE ! lol !
 
... logiquement il aurait du me repondre :  
Prix : 1.26
Temps : 0.92
 
!!! ... non ???


Message édité par freed102 le 03-02-2004 à 19:52:10
n°630096
mrbebert
Posté le 03-02-2004 à 20:03:42  profilanswer
 

le nombre de pages, c'est un entier, pourquoi tu le définis en VARCHAR() ? :pfff:  
 
(idem pour le prix et le temps, faut prendre un type de données qui correspond aux données [:proy] )

n°630110
freed102
Arayashiki
Posté le 03-02-2004 à 20:18:52  profilanswer
 

je pensais pas que ça avait une reelle importance... je connais pas trop ces parametres là... là j'ai mis "FLOAT"... je sais pas si c bien... mais en tous cas ça a l'air de mieux fonctionner !! :))))) c Keeeeewl !!! Thanx !

n°630114
mrbebert
Posté le 03-02-2004 à 20:21:20  profilanswer
 

C'est un entier -> mets INT [:spamafote]

n°630115
freed102
Arayashiki
Posté le 03-02-2004 à 20:22:26  profilanswer
 

quand je mais INT il me supprime ma virgule !! :(( ! j'ai essayé plusieurs trucs.... ça fait pareil ! avec Float ça marche... mais je sais pas ce que ça veut dire !

mood
Publicité
Posté le 03-02-2004 à 20:22:26  profilanswer
 

n°630124
mrbebert
Posté le 03-02-2004 à 20:34:38  profilanswer
 

je parlais du nombre de pages en fait.
Pour les flottants, je crois qu'il existe un type "DECIMAL", plus adapté que FLOAT qui peut provoquer des problèmes d'arrondi.
Pour le temps -> TIME


Message édité par mrbebert le 03-02-2004 à 20:34:56
n°630141
Master p
My new cock ring :D
Posté le 03-02-2004 à 20:42:47  profilanswer
 

freed102 a écrit :

quand je mais INT il me supprime ma virgule !! :(( ! j'ai essayé plusieurs trucs.... ça fait pareil ! avec Float ça marche... mais je sais pas ce que ça veut dire !


 
Le INT est un entier et le FLOAT est un flottant (une décimale)  :sleep:

n°630145
freed102
Arayashiki
Posté le 03-02-2004 à 20:44:17  profilanswer
 

bien ! donc je vais laisser FLOAT pour mon champ "prix"... et pour "temps" aussi d'ailleurs ! car ce sont finament que des valeurs avec decimales !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Mauvaise requete MySQL

 

Sujets relatifs
[PHP] comment tester si une requête ne donne pas de résultatIIS et mysql
[PHP - MYSQL] Connexion difficile chez free :(besoin d'infos pour requete SQL particuliere !
[MySQL] Pourquoi il n'utilise pas l'index sur cet order by ?comment accéder a une bdd mySQL avec visual c++ 6 et odbc ?
[MySQL] moyenne pondérée, j'y arrive pas ! (help me please)[PHP-MySQL] Récupérer la date de dernière modif. de la DB ??
[résolu] aide sur une requete sql toute conneMySQL : pb de ram perdue + requetes "sub select"
Plus de sujets relatifs à : Mauvaise requete MySQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR