8797 sujets

Développement web côté serveur, CMS

Bonjour,
Je suis coincé depuis maintenant quelque heures sur un truc qui parait tout bête.

Voilà j'aimerais afficher une entré de ma table mais une seule.
J'ai essayer des trucs divers tel que:

mysql_query('SELECT * FROM event LIMIT 2, 2');


Mais ça n'a jamais marcher...

En gros j'aimerai qu'en cliquant sur un lien "2" cela affiche l'entrée 2.
Un ptit coup de main ? Smiley lol
Merci d'avance.
Modérateur
Salut Groseille et bienvenue sur le forum,

Je pense que tu cherches à faire ce genre de chose par exemple :


$sql="SELECT * FROM event";
$resultat_sql=mysql_query($sql,$connect);
 while($data=mysql_fetch_array($resultat_sql)){
   echo "<p><a href=\"ma_page.php?id=".$data['id']."&action=modifier\" target=\"_self\">modifier</a></p>";
}


EDIT :
« id » est une clef primaire dans Mysql

++
Modifié par Nolem (14 Jul 2008 - 21:49)
Hello,

pour revenir sur ce qu'a dit Nolem, il est très fortement conseillé d'avoir un identifiant unique (ici id) pour chaque enregistrement de ta table ce qui permet de sélectionner très facilement.
<Edit>comme Nolem a modifié son message je parlais de faire une requête sous la forme
SELECT * FROM event WHERE id=1
</Edit>

Et voici quelques explications complémentaires concernant l'utilisation de LIMIT :

SELECT * FROM matable LIMIT 3 -> revient à faire :
SELECT * FROM matable LIMIT 0, 3

SELECT * FROM matable LIMIT x, y -> retourne y enregistrements (s'ils existent) après avoir ignoré les x premiers.

Et si j'ai bien compris, tu voudrais afficher le n-ième enregistrement (avec n = 2 dans ton exemple). Pour cela il faudrait faire :
SELECT * FROM matable LIMIT (n-1), 1

Donc pour le "lien" 2 :
SELECT * FROM matable LIMIT 1, 1

A+
Modifié par Heyoan (14 Jul 2008 - 21:53)
Merci à vous deux,
@ Nolem je dois avouer être un peu perdu dans ton code Smiley langue
@ Heyoan Le probleme c'est que je souhaite en fait afficher seulement les cinq dernières entrées mais une par une.

Le but étant d'avoir le titre de la news et en cliquant dessus le contenu de la news s'affiche dans une pop-up ajax.
EDIT:Après refléxion je pense avoir trouver,
Par exemple pour afficher la derniere entrée:
mysql_query('SELECT * FROM event ORDER BY id DESC LIMIT 0, 1')


MErci Beaucoup ton (n-1) m'a beaucoup aidé Smiley langue
Modifié par Groseille (14 Jul 2008 - 22:27)