Requête d'une donnée dans BDD - PHP - Programmation
Marsh Posté le 19-10-2014 à 14:06:02
sparadra1 a écrit : Bonjour à tous, je souhaiterais récupérer la valeur d'une seule case dans ma BDD. Voici mon code :
Mais j'obtient la titre de ma 3 et 4 ème ligne. |
!
Si tu veux des réponses à ta question, regarde la syntaxe de la commande SELECT en MySQL : http://dev.mysql.com/doc/refman/5.7/en/select.html
Et surtout la syntaxe de l'option LIMIT : [LIMIT {[offset,] row_count | row_count OFFSET offset}]
Quand tu écris "LIMIT 2,3", tu prends en réalité les 3 enregistrements qui se trouvent à partir du 3e : l'offset commence en effet à partir de 0.
Marsh Posté le 19-10-2014 à 16:06:09
Comme je ne comprend pas très bien l'anglais j'ai traduit avec google.
c'est bien ce code là qu'il me faut ?
SET @ skip = 1; SET @ numrows = 5;
PRÉPARATION DE STMT 'SELECT * FROM tbl LIMITE,?';
EXECUTE STMT UTILISATIONskip,numrows;
Marsh Posté le 19-10-2014 à 16:29:32
sparadra1 a écrit : Comme je ne comprend pas très bien l'anglais j'ai traduit avec google. |
Tout dépend de ce que tu veux faire aussi : tu as écrit que tu voulais récupérer la valeur d'une seule case. C'est une seule ligne que tu veux récupérer ? Si oui, laquelle ? Celle avec une date la plus récente ? Dans ce cas, une simple requête du style devrait suffire :
Code :
|
Marsh Posté le 19-10-2014 à 17:15:34
Dans une page la valeur 1 dans une autre la valeur 2 ....
ps : la valeur 3 ne comprend pas la colonne date_heure. Juste lien
Marsh Posté le 19-10-2014 à 18:51:27
Après le SELECT tu as une étoile * qui veut dire que tu récupères tous les champs, il suffit de spécifier le champ que tu veux récupérer au lieu de mettre une étoile. Et comme dit, spécifier les limites :
Code :
|
Cela veut dire que tu sélectionnes les valeurs de Nom_De_La_Colonne dans la table Nom_De_La_Table de la ligne 1+0 et des 1 suivantes.
Marsh Posté le 19-10-2014 à 19:46:54
Cela ne marche tjrs pas car je ne souhaite pas la valeur de la premiere ligne ... ce qui fait que j'ai toujours 2 resultats
Marsh Posté le 19-10-2014 à 20:51:45
Si tu as les résultats des 2 premières lignes c'est que tu as mis en limite : 0,2.
C'est à dire : commencer à la ligne 1+0 et prendre 2 lignes en tout.
Ou : prendre les 2 lignes qui suivent la ligne 0.
Un exemple : si tu veux les lignes 7, 8 et 9 il faut mettre : LIMIT 6,3
Marsh Posté le 20-10-2014 à 12:23:15
Code :
|
je vous laisse voir par vous même ---> http://the-division.96.lt/The%20Division/test.php
Marsh Posté le 20-10-2014 à 17:16:32
Bonjour,
Sur ta page d'exemple, tu aurais voulu quoi exactement ?
Marsh Posté le 21-10-2014 à 17:58:08
Nouveaux screenshots ( le deuxième en partant du haut )
Marsh Posté le 26-10-2014 à 13:29:28
Je ne comprends pas la difficulté, là tu prends les lignes 3, 4 et 5 car tu as mis en offset 2 donc ça commence à prendre à la ligne 2+1 et tu as mis que tu voulais sélectionner 3 lignes.
Si tu veux juste la deuxième ligne il faut mettre un offset à 1 et un nombre de ligne à 1 soit LIMIT 1, 1.
Pour la troisième ligne faut un offset de 2 : LIMIT 2, 1
Pour la 4ème, un offset de 3 : LIMIT 3, 1
etc.
Autrement je doute que tu souhaites trier tes lignes par leur titre mais plus par rapport à leur date_heure : ORDER BY date_heure DESC
Marsh Posté le 19-10-2014 à 11:13:07
Bonjour à tous, je souhaiterais récupérer la valeur d'une seule case dans ma BDD. Voici mon code :
Mais j'obtient la titre de ma 3 et 4 ème ligne.