[PHP] Naviguer dans la table
crocoscore
Messages postés
165
Date d'inscription
Statut
Membre
Dernière intervention
-
crocoscore Messages postés 165 Date d'inscription Statut Membre Dernière intervention -
crocoscore Messages postés 165 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je possède une table où toutes les entrées sont numéroté par un champ id en auto_increment.
Ce que je souhaite c'est savoir comment créer un code qui permettra de naviguer dans la table d'entrée en entrée avec deux boutons, suivant et précèdent par exemple.
J'ai d'abord essayé ça
Merci d'avance !
Je possède une table où toutes les entrées sont numéroté par un champ id en auto_increment.
Ce que je souhaite c'est savoir comment créer un code qui permettra de naviguer dans la table d'entrée en entrée avec deux boutons, suivant et précèdent par exemple.
J'ai d'abord essayé ça
<a href="article.php?id=<?php echo $ID++; ?>">Suivant</a>et un deuxième lien pour l'entrée précédente. Mais lorsque je supprime un entrée de la table, forcément, ça ne fonctionne plus...
Merci d'avance !
A voir également:
- [PHP] Naviguer dans la table
- Table ascii - Guide
- Table des matières word - Guide
- Comment naviguer en privé sur pc - Guide
- Easy php - Télécharger - Divers Web & Internet
- Table des caractères - Guide
6 réponses
une autre solution:
tu fais une requette sur ta table pour extraire tous les id
par une boucle while, tu les stockes dans un array par ex $array_id
et ton lien deviens
tu fais une requette sur ta table pour extraire tous les id
par une boucle while, tu les stockes dans un array par ex $array_id
et ton lien deviens
$id_suivant=$ID++; if(isset($array_id[$id_suivant])){ echo '<a href="article.php?id='.$id_suivant.'">Suivant</a>'; } //meme principe avec precedent //ainsi tu n'aura le lien que si c'est possible
Salut.
Tu peux créer une fonction qui vérifie si l'enregistrement existe.
Quand ce n'est pas le cas, alors cette fonction décrémente l'ID et réessaye.
Il doit y avoir une méthode plus propre, mais c'est la première qui m'est venue à l'esprit.
Tu peux créer une fonction qui vérifie si l'enregistrement existe.
Quand ce n'est pas le cas, alors cette fonction décrémente l'ID et réessaye.
Il doit y avoir une méthode plus propre, mais c'est la première qui m'est venue à l'esprit.
il te faut faudrait un script qui vérifie si $ID existe bien si il n'existe pas il fait $ID++ et retente et ceux jusqu'à trouvé une id qui existe
<?php //pourquoi COUNT ?? //$reponse = mysql_query('SELECT COUNT(*) AS id FROM v1_lecon'); $reponse = mysql_query("SELECT id FROM v1_lecon"); //je suppose que tes id sont dans un champ id de ta table //init de l'array $array_id=array(); while ($donnees = mysql_fetch_array($reponse)) { $array_id[] = $donnees['id']; // la il faut des crochets } // ou recupères tu cette variable $id ?? $id_suivant = $id++; if(isset($array_id[$id_suivant])) { echo '<a href="article.php?id='.$id_suivant.'">Suivant</a>'; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
voilà qq chose de plus complet:
<?php ////// il faut que ce script se nomme article.php pour que la page s'appelle elle même ///// //connexion serveur, selection base puis... $reponse = mysql_query("SELECT id FROM v1_lecon"); //je suppose que tes id sont dans un champ id de ta table //init de l'array $array_id=array(); //boucle pour empiler les id dans l'array while ($donnees = mysql_fetch_array($reponse)) { $array_id[] = $donnees['id']; // la il faut des crochets, php va automatiquement incrementer les index de l'array } if(isset($_GET['i'] {$i=$_GET['i'];}else{$i=0;} //recup de l'index de l'array en cours passé par l'url, au départ par defaut sera = 0 //affichage de l'id en cours echo 'l\' ID en cours est: '.$array_id[$i].'<br /><br />'; //tu peux utiliser cette valeur $array_id[$i] pour faire tes traitements //liens precedent suivant //on passe par l'url, l'index de l'array if(isset($array_id[$i-1])) { echo '<a href="article.php?i='.($i-1).'">Precedent</a>'; } if(isset($array_id[$i+1])) { echo '<a href="article.php?i='.($i+1).'">Suivant</a>'; }
Même en remplaçant la variable $i par la mienne, $voir, ça ne fonctionne par. Pourtant j'ai bien corrigé ta petite erreur de syntaxe (
if(isset($_GET['i'])) {$i=$_GET['i'];}else{$i=0;}) mais rien ni fait. Le plus étrange c'est que si je fais en dessous
echo $_GET[voir];rien ne s'affiche. Que faire ?
mais rien ne s'affiche, pourriez-vous me dire pourquoi ? Je précise que l'ID suivante existe bien.