Problème de pagination

goboben Messages postés 11 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 août 2006 - 11 août 2005 à 09:25
goboben Messages postés 11 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 août 2006 - 11 août 2005 à 11:58
Bonjour à tous!

Voila mon problème, qui n'est pas insurmontable mais bien embetant...
J'ai crée un diaporama avec affichage par page (precedente 1 2 3 4 5 ....suivante) et dans tous les script que j'ai vu on utilise un "limit" dans la requete de selection des elements, or je ne peux pas utiliser de limit car j'utilise un lien odbc.
Il existe surement une autre maniere de proceder? Sans utiliser de limit? Puisque pour l'instant quand j'appuie sur suivante, les suivantes n'apparaissent pas...

Voila un petit bout de code:

//----------------------combien de pages-----------------


$query = "select COUNT(HPCDPAT1) as count from CMCOMMUN ";
$result = odbc_do($conection,$query) or die("$query n'a pas pu s'executer");
$val = odbc_fetch_array($result);
$nb_images_tot = $val["COUNT"];

$i = 0; // permet de savoir combien d'images on a mis sur la page;
$j = 0;// nombre d'images mises sur la ligne
$nb_images_page = 9; // Nombre d'images par page
$nb_images_ligne = 3; // Nombre d'images par ligne
[javascript:popup('.$url.') '.$val["HPLOCALITE"].'</td>';
$j++;
$i++;
if ($j==$nb_images_ligne){
echo '</tr><tr>';
$j=0;
}
}
// else echo ne;
}

echo '<tr><td colspan="3">';



//-----------------------nagivation entre les pages-----------------------------


if(isset($ndeb)>0) { //-----Page precedente
$num=$ndeb - $nb_images_page;
echo ']Retour';
}


echo '&nbsp';


// ---N° des pages
for($i = 1;$i<=$nb_pages;$i++) {
// Page courante ?
if($nb_pages == ($i-1)*$nb_images_page) {
echo $i;
echo '&nbsp';
} else {
echo'[?num='.($i-1)*$nb_images_page.' &nbsp'.$i.'&nbsp;]';
}
}


echo '&nbsp';


if(isset($val)) { //-----Page suivante
echo'[?num='.$i.' Suite]';
}


echo'

</td></tr>';

//---------Fin----------

Ce serait vraiment sympa si quelq'un pouvait m'aider un peu . Merci d'avance

7 réponses

goboben Messages postés 11 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 août 2006
11 août 2005 à 10:43
Ah bon personne ne peut m'aider?....
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
11 août 2005 à 11:23
Salut,



Faudrait peut-être pas pousser, si t'as besoin d'une réponse en une heure appelle une société...



Ensuite pour se passer des LIMIT il te faut une clé primaire avec un ID
qui classera les documents comme tu veux les affichers. Ensuite tu fais
un WHERE id BETWEEN début,fin et hop ça t'affiche que les documents que
tu souhaites, le tout rapidement si t'as un index sur le champ id.

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
goboben Messages postés 11 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 août 2006
11 août 2005 à 11:49
Desolé si je t'ai donne l'impression d'attendre qu'un me marche le travail vite fait bien fait...ce n'est pas le cas du tout! En fait ça fait 2 jours que je me prend la tête dessus tout seul....

Tout d'abord merci de t'interesser à mon problème Anthomicro, je vais essayer ta solution qui me parait beaucoup plus facile que ce que j'essayer de faire. J'essayais de faire ça avec un array_slice et j'ai pas mal problèmes avec ça aussi (doit pas etre très doué ), en fait il ne me selectionne qu'un seul objet et sa premiere lettre (ça doit venir des boucles)
Voila je te tiens au courant merci encore!
Bonne journée!
0
goboben Messages postés 11 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 août 2006
11 août 2005 à 11:49
Desolé si je t'ai donne l'impression d'attendre qu'un me mache le travail vite fait bien fait...ce n'est pas le cas du tout! En fait ça fait 2 jours que je me prend la tête dessus tout seul....

Tout d'abord merci de t'interesser à mon problème Anthomicro, je vais essayer ta solution qui me parait beaucoup plus facile que ce que j'essayer de faire. J'essayais de faire ça avec un array_slice et j'ai pas mal problèmes avec ça aussi (doit pas etre très doué ), en fait il ne me selectionne qu'un seul objet et sa premiere lettre (ça doit venir des boucles)
Voila je te tiens au courant merci encore!
Bonne journée!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
goboben Messages postés 11 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 août 2006
11 août 2005 à 11:49
Desolé si je t'ai donne l'impression d'attendre qu'un me mache le travail vite fait bien fait...ce n'est pas le cas du tout! En fait ça fait 2 jours que je me prend la tête dessus tout seul....

Tout d'abord merci de t'interesser à mon problème Anthomicro, je vais essayer ta solution qui me parait beaucoup plus facile que ce que j'essayer de faire. J'essayais de faire ça avec un array_slice et j'ai pas mal problèmes avec ça aussi (doit pas etre très doué ), en fait il ne me selectionne qu'un seul objet et sa premiere lettre (ça doit venir des boucles)
Voila je te tiens au courant merci encore!
Bonne journée!
0
goboben Messages postés 11 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 août 2006
11 août 2005 à 11:58
Ah oui mais en fait, il faudrai que je rajoute un champs dans ma table et je ne peux pas car j'ai access à celle via un lien obdc. En fait je suis en stage et j'ai donne mon mcd au servie info qui m'a crée la base donc je n'y ai pas accés directement...Donc il vaut mieux
0
goboben Messages postés 11 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 août 2006
11 août 2005 à 11:58
Ah oui mais en fait, il faudrai que je rajoute un champs dans ma table et je ne peux pas car j'ai access à celle via un lien obdc. En fait je suis en stage et j'ai donne mon mcd au servie info qui m'a crée la base donc je n'y ai pas accés directement...Donc il vaut mieux
0
Rejoignez-nous