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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [RESOLU] REQUETE SQL AVEC ID ET ORDER

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[RESOLU] REQUETE SQL AVEC ID ET ORDER

n°2219940
hogz
Posté le 17-02-2014 à 15:47:26  profilanswer
 

Bonjour,
 
je voudrai faire un ORDER BY après une récupération de l'ID en GET voici mon exemple...
 
Mon GET:
 
<?php $id=$_GET['RUBRIQUE'];?>
 
Ma requete:
<?
$reponse = mysql_query ("SELECT * FROM $base WHERE RUBRIQUE=".$id);
while ($donnees = mysql_fetch_array ($reponse))
{
?>
 
J'ai essayé de mettre mon ORDER BY à la suite, mais ma récupération de GET ne fonctionne pas.
Merci pour votre aide.
Cordialement


Message édité par hogz le 19-02-2014 à 15:20:57
mood
Publicité
Posté le 17-02-2014 à 15:47:26  profilanswer
 

n°2219984
rufo
Pas me confondre avec Lycos!
Posté le 18-02-2014 à 10:26:14  profilanswer
 

C'est normal "RUBRIQUE" écrit en majuscule dans ton $_GET :??: T'as vraiment une url du genre http://monsite.fr/index.php?RUBRIQUE=5  ???
T'as conscience que le "RUBRIQUE" du GET n'a rien à voir avec celui en base...
 
Par ailleurs, si tu fais un where rubrique = $id, si ton ID est unique, je vois pas à quoi va te servir le order by :/


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2220131
hogz
Posté le 19-02-2014 à 07:41:44  profilanswer
 

Merci pour ta réponse...
Un ID est unique OUI et NON...
Exemple, si dans ta requête SQL tu demande "L'equipe de foot numéro "40", ton $_GET de RUBRIQUE sera "40" mais ton ARRAY sera 11 noms (tous les joueurs de la colonne RUBRIQUE appelé par le $_GET) mais bien sûr je voudrais classer ces joueurs, donc interviendrait ma demande sur l'ORDER BY.
Pour l'instant cette requête marche, simplement je voudrait ordonner un classement. Derrière ".$id pour l'instant je ne trouve pas la solution...


Message édité par hogz le 19-02-2014 à 08:23:12
n°2220134
Yonel
Monde de merde !
Posté le 19-02-2014 à 08:44:57  profilanswer
 

Normalement c'est tout simplement  
 
$reponse = mysql_query ("SELECT * FROM $base WHERE RUBRIQUE=".$id." ORDER BY nom");  
 
Faudra que tu adaptes en utilisant la bonne colonne, pas sûr que ce soit "nom" dans ton cas

n°2220139
hogz
Posté le 19-02-2014 à 09:01:41  profilanswer
 

OK merci c'est ça...
Bonne journnée...

n°2220143
Yonel
Monde de merde !
Posté le 19-02-2014 à 09:30:21  profilanswer
 

Par contre c'est pour faire un site en ligne que tu vas utiliser ça ?
 
Parce que là la SQL injection est hyper simple à faire avec ce code. Si tu connais pas : http://fr.wikipedia.org/wiki/Injection_SQL

n°2220152
hogz
Posté le 19-02-2014 à 10:50:06  profilanswer
 

Non pas du tout...cette partie est inaccessible sauf à celui qui a des codes restreints. Mais merci pour le lien je vais voir ça.

n°2220153
Yonel
Monde de merde !
Posté le 19-02-2014 à 11:01:17  profilanswer
 

Ok fais gaffe parce que même en interne tu dois être conscient de cet aspect et adapter ton code pour l'empêcher

n°2220357
gpl73
Posté le 21-02-2014 à 08:35:52  profilanswer
 

je viens de lire ces posts... et j'ai une question style, le php pour les nuls :)...
Les instructions SQL sont keysensitves en PhP ?
 
$reponse = mysql_query ("SELECT * FROM $base WHERE RUBRIQUE=".$id);  
<>
$reponse = mysql_query ("SELECT * FROM $base WHERE rubrique=".$id);  
?

n°2220359
Yonel
Monde de merde !
Posté le 21-02-2014 à 08:55:51  profilanswer
 

En fait ta question est plus au niveau de mySQL. Et la réponse est non, tu peux l'écrire en majuscules ou non.

mood
Publicité
Posté le 21-02-2014 à 08:55:51  profilanswer
 

n°2220411
gpl73
Posté le 21-02-2014 à 14:37:00  profilanswer
 

Je ne comprends pas alors ce que dis alors Rufo...
(c'est pas bien grave, lol, car c'était vraiement une question de béautien ...)

n°2220418
rufo
Pas me confondre avec Lycos!
Posté le 21-02-2014 à 15:01:48  profilanswer
 

Ce que je voulais dire, c'est que le "RUBRIQUE" qui est écrit dans la variable $_GET['RUBRIQUE'] n'a rien à voir, du point de vue des variables en mémoire ou en base avec le "RUBRIQUE" (champ d'une table en base) qui est écrit dans ta requête SQL.
 
En résumé, c'est pas parce que tu as un champ en base nommé "RUBRIQUE" et que tu veux utiliser dans une requête SQL que le nom de la variable dans $_GET doit porter le même nom.
 
Tu peux faire :
$id = $_GET['Toto'];
$reponse = mysql_query("SELECT * FROM $base WHERE RUBRIQUE = $id" );
 
Ca veut dire que l'url du script sera du genre http://siteweb/script.php?Toto=5
 
C'est plus clair ?


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2220427
gpl73
Posté le 21-02-2014 à 15:28:27  profilanswer
 

okok :)  
Oui, je comprends ... merci :).
l'instruction $_GET['XXXX'] : te permet de te connecter (on va simplifier...)
et vu que tu es connecté après:  
tu fais une requete sql avec le mysql_query ("Chaines de caractères = requête SQL" ).
Si c'est ça: il faut juste que hogz concatene correctement son "order by SON_CHAMP" à la 1er partie de sa requête, non?
 
Encore une petite question est ce que $base est le nom de la table ou une variable? (ou est-ce que je vais acheter un bouquin sur le php? :D)
 

n°2220438
rufo
Pas me confondre avec Lycos!
Posté le 21-02-2014 à 16:01:13  profilanswer
 

Pas du tout. $_GET comme $_POST permet de récupérer une ou plusieurs données provenant d'un formulaire posté avec la méthode "get" ou "post".
 
En "get", les valeurs des champs du formulaire sont transmises dans l'url du script chargé de traiter le formulaire, d'où une url de la forme mentionnée précédemment : http://siteweb/script.php?champ1=T [...] amp2=25...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [RESOLU] REQUETE SQL AVEC ID ET ORDER

 

Sujets relatifs
SqL - requête[SQL] on duplicate key update
Requete SQL en VBA avec ExcelSQL : count multiple, groupby...
requetePont entre ciel gestion commercial et SQL/php - OU Access voir autre..
[RESOLU] syntaxe à utiliser pour une requête composé de variablesProbleme de comptage (SQL Oracle)
Plus de sujets relatifs à : [RESOLU] REQUETE SQL AVEC ID ET ORDER


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