cs_sebalex
Messages postés150Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention 6 janvier 2017
-
25 févr. 2005 à 15:36
fcr_loch
Messages postés27Date d'inscriptionjeudi 13 mai 2004StatutMembreDernière intervention16 février 2008
-
25 févr. 2005 à 18:20
Dans la création d'un site, je veux lister des données récupérées dans une base que j'ai créée selon des critères spécifiques.. J'aimerais que le résultat se fasse sur une page s'il y a un nombre de 10 réponses ou sur plusieurs pages si les réponses sont supérieur avec sur chaque page une présentation comme suit :
Pages 1 - 2 - 3 - 4 - 5 (etc..)
Je n'arrive pas à trouver le code pour cette implémentation.
cs_djagger
Messages postés536Date d'inscriptionlundi 5 mai 2003StatutMembreDernière intervention29 janvier 20091 25 févr. 2005 à 16:41
Salut !
Regarde plutot du coté php que javascript !
Mais l'idée c'est de compter le nombre de réponses.
Si c'est inférieur à 10 no pb.
Si c'est supérieur à 10, il faut que tu ais le numéro de la page en paramètre, et tu met des LIMIT à ta requete sql !
voila ! en espérant que ca te mette sur la voie ;) a+++
cs_sebalex
Messages postés150Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention 6 janvier 2017 25 févr. 2005 à 17:08
Merci pour ton message. Mais si tu vas sur le site www.telecharger.com et tu fais une recherche simple telle que photos. Tu as toute une liste de réponse et les pages sont automatiquement créées selon le nb de réponses. En passant la souris sur l'un des numéros de pages, tu verras que le code est en javascript.
fcr_loch
Messages postés27Date d'inscriptionjeudi 13 mai 2004StatutMembreDernière intervention16 février 2008 25 févr. 2005 à 17:49
Salut je repond a ce poste car je vient a peine (il y a quelque jour de faire ca)
donc vu que je passe par là , ben je donne ma petite contribution en éspérent pouvoir aidé au mieux
je previent, la chose peut trés surement etre optimisé , pour ma part l'optimisation serat faite plus tard car la j'ai pas trop le tmp (et l'envi ) de mis pencher.
donc je le pose comme ça sans trop d'explication, mais je pense que ca devrait y allez...
le code est tirée d'une de mes pages donc a adapté celon l'utilisation
<?
if (isset($_GET['page']))
$page = $_GET['page'];
else
$page=0;
//Pour c'est deux variable il faut les crée en global, session ou autre ou les passé en param ds la fonction javascript, a faire surtout si l'utilisateur peut changer le nbre de ligne/page a affiché
//$Limit_Nbre=//nbre de ligne par page
//$Limit_Debut=//la 1ere ligne a afficher ds le tableau soit 1ere page = 1ere ligne, 2eme page = 2* $Limit_Nbre etc.....
//Pour la var page il faut la considaire comme un tableau l'indice de la 1ere page est 0
//au depart la gestion de la requete s'effectue en deux fois
//la 1ere requete pour recupe le nbre de resulat
$result = mysql_query($query) or die($_POST['Erreur']="Requette non effectue");
if ($_POST['Erreur'] !="") return;
$nb_result=mysql_num_rows($result);
if($Limit_Debut==""){$Limit_Debut=0;}
if($page==""){$page=0;}
$Limit_Debut=$page*$Limit_Nbre;
//puis la 2eme cree la requete avec les limites d'affichage
$result=mysql_query($query." LIMIT $Limit_Debut,$Limit_Nbre");
//Votre code de creation de tableau par exemple
//$i=//nbre de colone contenu ds le tableau, si integration a la fin d'un affichage de tableau (compris entre et
)
//$Table= //variable contenant tout le tableau (ou la page en faite...)
$Table .='<tr><td colspan="'.$i.'"></td><tr><tr><td colspan="'.$i.'"></td><tr>
<tr><td colspan="'.$i.'" align="center">';
if ($page>0)
$Table .= 'Page Précédente ';
$nbre_page = ($nb_result/$Limit_Nbre);
//------determine les extremités (par 10 pages)
$j=floor($page/10)*10;
if ($j+10 <=$nbre_page)
$grp_page=$j+10;
else
$grp_page=$nbre_page;
//groupe -1
if ($j-1>0)
$Table .=' ... ';
//creation de la liste des pages
while ($j < $grp_page)//
{
if ($page == $j)
$Table .= ' '.($j+1).' ';
else
$Table .=' '.($j+1).' ';
$j++;
}
//groupe +1
if ($grp_page<$nbre_page)
$Table .=' ... ';
//------------
if ($nbre_page > ($page+1))
$Table .= ' Page Suivante';
$Table .= '</td></tr>';
?>
Puis pour la fonction javascript
function wActualiser(page)
{
window.open("<Nom de la page>"?page="+page+,<Destination,frame ou page etc...>);
}
voila en esperant que tu comprenne qq chose... j'ai pas le tmp et l'envi comme dit plus pour optimisé ou expliqué la chose , mias si qq chose te géne n'ésite pas a le faire savoir, j'essairais de donnée plus d'explication.
cs_djagger
Messages postés536Date d'inscriptionlundi 5 mai 2003StatutMembreDernière intervention29 janvier 20091 25 févr. 2005 à 17:52
oui le lien est fait en javascript, mais c'est le PHP qui crée la page !
la function changePage() de telecharger.com permet de passer le paramètre "numéro de la page" dont je te parlais plus haut !
(pour pouvoir faire la requete en fonction des limites)
Vous n’avez pas trouvé la réponse que vous recherchez ?
fcr_loch
Messages postés27Date d'inscriptionjeudi 13 mai 2004StatutMembreDernière intervention16 février 2008 25 févr. 2005 à 18:10
oui j'etait justement en train de regarder ca (ta repondu comme superman) lol
et donc re oui c tout a fait ça
le code de telecharger.com et comme suit :
au click
function changePage(intPage)
{
document.pages.suiv.value = (intPage - 1);
setTimeout("document.pages.submit();",1000);
}
je ne sais pas si ca t'avance ou si ca t'embrouille plus qu'autre chose.....
mais tu me mes le doute etait-ce ceci que tu chercher ou pas ?
re bye, je reste a l'ecoute... lol