[PHP] Erreur requete SQL

Voila je m’entraine à maitriser les requete de base du php vers mySQL.
( J’ai une table jeux_video qui contient plusieur champ dont le nom du mec à qui il appartient et le noms du jeu video )

Et j’ai ecris cette ligne :


$reponse = mysql_query("SELECT nom,possesseur FROM  jeux_videos ORDER BY nom DESC WHERE possesseur = 'Patrick'")or die(mysql_error());

Je peux soit utiliser ORDER BY nom soit WHERE mais quand je veux combiner les deux ca marche pas, j’ai essayé de mettre une virgule , de mettre AND , mais rien ne pass :S comment faire ? ou pourquoi ?

merci d’avance

order by doit se placer apres le where :slight_smile:

deja ce que je te conseille de faire c’est mettre tes requetes dans des variables c’est plus facile a corriger apres

ensuite un order by se met tjr a la fin d’un requete

$requete = "SELECT nom,possesseur
FROM  jeux_videos
WHERE possesseur = 'Patrick'
ORDER BY nom DESC";

$reponse = mysql_query($requete) or die(mysql_error();

vala elle est plus correcte ainsi =)

Super , it works , je savais pas que c’etait en dernier ^^

Et merci du conseil, c’est vrai que ca plus sympa avec la variable.

Je m’y suis mis hier au php , mais c’est cool, ca ressemble comme 2 goutes d’eau au C ^^

Par contre si j’ai bien compris, les variable pas besoin de les déclarer, on les créées quand on veut . . ? c’est ca ?

Par contre , lorsque qu’on ajoute une info dans la table a l’aide de INSER INTO, l’information va se mettre en tete ou en queue ?

Genre l’indice 0 est la derniere info rentré ou alors la premiere ( donc la plus vieille )

Pour faire une analogie avec le langage C : est ce qu’on ajouter en FIFO ou LIFO ?

à ce que je sais (cad pas grand chose) après un ‘INSERT INTO’ l’info est mise en queue, genre la dernière data d’un tableau.

Le probleme c’est que dans un TP il y a ca :

// Maintenant on doit récupérer les 10 dernières entrées de la table
// On se connecte d'abord à MySQL :
mysql_connect("localhost", "sdz", "mot_de_passe");
mysql_select_db("coursphp");

// On utilise la requête suivante pour récupérer les 10 derniers messages :
$reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10");

Vu qu’on doit récup les 10 derniere > donc les 10 plus récente il faudrait qu’on parte de la fin si INSERT INTO inserait en queue. Sauf que la on part de l’indice 0 et on en prend 10 , donc ca sera les 10 plus anciens ( message en l’occurence ) . . .

Edit : A non c’est bon , j’ai pigé > ORDER BY ID DESC donc on part bien de la fin, j’avait pas vu ca :riva: