Centrer une requete mysql [Résolu]

Signaler
Messages postés
13
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
23 avril 2005
-
Messages postés
13
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
23 avril 2005
-
Bonjour,

bon le titre est un peu tiré par les cheveux mais bon...

Pour simplifier, j'ai une table user (ID_USER, PSEUDO)

depuis une page, je séléctionne un ID_USER

J'aimerai (sans être obligé de faire une usine à gaz) pouvoir retrouver le ID_USER suivant et précedent si je classe ma table par PSEUDO.
Et donc par la même occasion, savoir s'il existe un précédent et un suivant.

Le but est bien évidement de faire un systeme de navigation simple.

Je me dis qu'il doit bien y avoir moyen de faire une petite requete toute simple, mais la je bloque un peu...

Merci pour votre aide et vos idées

4 réponses

Messages postés
13
Date d'inscription
jeudi 16 octobre 2003
Statut
Membre
Dernière intervention
23 avril 2005

Bon alors merci à tous les deux vos deux idées sont (presque) bonnes

petit glob avait oublié les $
et JoJo738 avait oublié la condition = = $id
la solution retenue est donc :

$resultat=mysql_query($sql,$base_id);
while( $row = mysql_fetch_array($resultat) ) {
$tab[] = $row['ID_USER']; //ca c'est le champ de ma table
}


foreach( $tab as $key=>$val ) {
if ($tab[$key]==$ID) // et ca c'est le ID que j'ai sélectionné
{
$id_precedent = isset($tab[$key-1]) ? $tab[$key-1] : '' ;
$id_suivant = isset($tab[$key+1]) ? $tab[$key+1] : '' ;
}
}
Messages postés
53
Date d'inscription
jeudi 2 décembre 2004
Statut
Membre
Dernière intervention
3 juillet 2006

le ptit gob y se demande



Salut martiall,




Tu place tous tes id_users dans un tableau comme ceci tab[]==id_user



Puis tu fais :



for(i=0;i<sizeof(tab);i++)

{

if(tab[i]==id_users)

if(i!=0) id_user_prec=tab[i-1];

if(i!=sizeof(tab)-1) id_user_sui=tab[i+1];

}

Voilà j'espère que cela pourra t'aider.



A+
Messages postés
1267
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
29 juin 2010
1
Salut,

Ptit gob, ne fait pas du javascript mais du php, tu oublis le $ !

Ou encore :



While( $row = mysql_fetch_array($query) ) {

$tab[] = $row['id_user'];

}



foreach( $tab as $key=>$val ) {

$id_precedent = isset($tab[$key-1]) ? $tab[$key-1] : '' ;

$id_suivant = isset($tab[$key+1]) ? $tab[$key+1] : '' ;

}


<hr size="2" width="100%">
Si ma reponse te convient, merci de l'accepter !
Messages postés
53
Date d'inscription
jeudi 2 décembre 2004
Statut
Membre
Dernière intervention
3 juillet 2006

le ptit gob y se demande

Salut JoJo738,

Oui pardon j'avais oublié les $ entre nous c'est pas forcément du javascript, mais c'est vrai que c'est innadmissible de ma part.

Merci à toi je penses qu'avec ça tu devrais trouver ton bonheur martiall alors n'oublie pas de valider la réponse.
Si ça ne suffit pas demande plus de détails on t'aidera.

A+