8791 sujets

Développement web côté serveur, CMS

Bonjours, je voulais faire une barre de navigation pour faire suivant précédent, alors j'ai fait un petit calcule:
<a href="film.php?id=<?php $id = $_GET['id']; $id = $id + 1; echo $id; ?>">Suivant</a>

Ca marche, mais le problème c'est que j'ai ranger ma table par ordre alphabétique, donc ca fait 1, 10, 12,...(exemple) sauf que la ça juste ajouter a l'id +1. Donc si je fait "suivant" c'est pas dans le bon ordre.
Comment faire pour respecter l'ordre ???

Ou comment faire ce système: << 1 - 2 - 3 - 4 - 5 - 6 >>
Au moins j'affiche qu'une 40 de résultat a chaque fois.
Modifié par loixi (27 Jul 2010 - 13:19)
Simplifies ton code !

<a href="film.php?id=<?php echo $_GET['id'] +1; ?>">Suivant</a>
// fin bon, faut tester le isset() aussi



ensuite, tu veux faire quoi exactement ? Tu voudrais que sur la page avec comme id '1', le bouton 'suivant' pointe vers la page '10' ?
Bonjour,

a ce que j'ai compris non ..

en gros il a rangé des éléments : 1:" salut" , 2:"ca" , 3:"va" , 4:"bien " dans cette ordre la par exemple ( id :"l'élément" rangé ) et ensuite il les sort par ordre alphabétique ,
du coup ca dois sortir ca : 4:"bien" , 2:"ca" , 1:"salut" , 3:"va"


donc quand il clique sur suivant , si il était sur 2 par exemple , ca va lui sortir 3 au lieu de 1 .

J'ai pas trop d'idée sur comment résoudre se problème .

je suppose que ca sort d'une bdd derrière ? faudrait savoir comment ca sort pour pouvoir t'aidai efficacement

Je pense que tu dois peut être pouvoir en même temps que tu sors tes films trié par ordre alphabétique , stocké dans un tableau php l'ordre de tes id une fois trié , et te servir du tableau Smiley smile ( au lieu de passé l'id , tu passera le numéro de la case du tableau pour obtenir l'id de ton film Smiley smile )
En faite au lieux de prendre l'id et de rajouter +1, il faudrait que quand je clique sur suivant ca prenne le champs: "titre" et fasse suivant par ordre alphabétique et je ne sais pas comment faire.

Sinon, j'ai une autre question comment on fait pour faire ca: << 1 - 2 - 3 - 4 - 5 - 6 >>
Afficher par exemple 100 titre et faire suivant et afficher les 100suivant mais sur la même page en deux collone.
J'essaye plein de truck mais rien ne marche.
Salut,

hop je me re répète un pti peu xD

Quand tu fais ta requête a ta base de donnée , tu sors tous les films que tu veux par ordre alphabétique , et tu les stock dans un tableau .. comme ca dans ton tableau tu aura :
| film1 | film2 | machin | truc | trucmuche | ....

ensuite je sais pas comment tu t'en sers , tu aura peut être juste besoin de l'id des films .
| id3 | id8 | id5 | id22 | id12 | ....

Du coup pour allé voir le film suivant , au lieu de faire id+1 , tu ira voir dans ton tableau la case d'après .

Voila j'espère que c'est un peu plus clair .
Voila tu as compris, les noms des films sont afficher dans l'ordre, grasse a une option de "phpmyadmin", mais pas quand je fais suivant comme ça fait que faire +1, car je suis dans un film qui commence par "A" et tu passe a "Z".
Donc comment faire pour que ca soit pas ordre alphabétique ? car les ID ce suivent pas. comment faire pour que ça soit le titre suivant qui soit sélectionner et que ca prennent sont id pour l'afficher ?
Bonjour,
je crois que je dois pas être clair ..

une option de phpmyadmin ?
tu fais pas des requêtes sur ta bdd en mysql ?

dans le principe tu fais une requete en mysql , ou ca te sort la liste par ordre alphabétique , la au passage tu récupère les ids en même temps que les titres , tu les stock dans un TABLEAU : comme ca tu aura la suite des ids dans l'ordre alphabétique des films , et ensuite tu a plus qu'a te déplacé dans le TABLEAU , pour obtenir l'id du film que tu veux .

Voila j'ai écris tableau en gros parce que j'ai l'impression que ca se voyais pas avant ..
je sais pas trop comment expliqué différemment l'algo ..
Bon je laisse tomber et passe a autre chose, ca a l'aire si simple pourtant mais je n'arrive pas a y faire Smiley fache .