Page 1 sur 1

L'enregistrement qui suit

Posté : 06 févr. 2011, 16:01
par Fredy07
Bonjour,

Je voudrais savoir c'est quoi l'ID de l'enregistrement qui suit dans une table, par exemple:

table avec id, nom
1, jack
2, john
5, james
6, michael

si par exemple j'affiche les informations de john, et je voudrais afficher profil suivant, je peux pas utiliser:
$suivant = $id + 1
parce que dans ce cas serait 3, alors que 3 et 4 sont supprimes, comment faire afin de reconnaitre celui qui suit.

Merci

Re: L'enregistrement qui suit

Posté : 06 févr. 2011, 17:45
par BaLiSTiK
Avec une requete SQL comme ça :
SELECT 
	id
FROM matable
WHERE 
id = ( SELECT MIN( id ) FROM matable WHERE id_article > " . $id . " )

Re: L'enregistrement qui suit

Posté : 06 févr. 2011, 17:46
par xTG
Ceci suffit amplement :
SELECT MIN( id ) FROM matable WHERE id_article > " . $id . "
;)

Re: L'enregistrement qui suit

Posté : 06 févr. 2011, 21:27
par Fredy07
<?php

	$snextprev = 'SELECT MIN(id_vid) FROM vids WHERE id_vid > "'. $menu.'"';
    echo $snextprev.'<br>';
    $qnextprev = mysql_query($snextprev) OR DIE ('Unable to select videos: '.mysql_error());
    $tnextprev = mysql_num_rows($qnextprev);
    
    if ($tnextprev) {
    
    $shnextprev = mysql_fetch_array($qnextprev);
    extract($shnextprev);
    
    echo $id_vid;
    }
?>
Ca me retourne id_vid = 1

Sachant que:

menu est la variable de l'id_vid en cours de lecture.
id_vid dans la table qui suit est 1000.

Re: L'enregistrement qui suit

Posté : 06 févr. 2011, 21:55
par moogli
Heu c'est con mais pourquoi utiliser min ?

Select id from table where id > id_en_cours limit 1 devrais suffir poir donner l'id suivant de la table.

@+

Re: L'enregistrement qui suit

Posté : 07 févr. 2011, 13:04
par Fredy07
Merci ca marche