8768 sujets

Développement web côté serveur, CMS

Salut à tous,

J'aurais besoin de votre aide car je bloque depuis des heures, alors merci d'avance Smiley smile

-> j'ai mis en place un système de pagination (inspiré d'un tutoriel existant) qui fonctionne très bien avec l'url réelle. Mais dès que j'utilise les urls réécrites de l'url rewrittting, cela me renvoie toujours à la première page.

Alors voici mon code :


(...)
    if ($pagenum > 1) {
        $previous = $pagenum - 1;
        $paginationCtrls .= '<a class="previous" href="/annuaire/'.$dpt.'/'.$category.'/'.$ville.'_'.$cp.'?pn='.$previous.'">Previous</a> &nbsp; &nbsp; ';
        // Render clickable number links that should appear on the left of the target page number
        for($i = $pagenum-4; $i < $pagenum; $i++){
            if($i > 0){
                $paginationCtrls .= '<a class="pag" href="/annuaire/'.$dpt.'/'.$category.'/'.$ville.'_'.$cp.'?pn='.$i.'">'.$i.'</a> &nbsp; ';
            }
        }
    }
    // Render the target page number, but without it being a link
    $paginationCtrls .= ''.$pagenum.' &nbsp; ';
    // Render clickable number links that should appear on the right of the target page number
    for($i = $pagenum+1; $i <= $last; $i++){
        $paginationCtrls .= '<a class="pag" href="/annuaire/'.$dpt.'/'.$category.'/'.$ville.'_'.$cp.'?pn='.$i.'">'.$i.'</a> &nbsp; ';
        if($i >= $pagenum+4){
            break;
        }
    }
    // This does the same as above, only checking if we are on the last page, and then generating the "Next"
    if ($pagenum != $last) {
        $next = $pagenum + 1;
        $paginationCtrls .= ' &nbsp; &nbsp; <a class="previous" href="/annuaire/'.$dpt.'/'.$category.'/'.$ville.'_'.$cp.'?pn='.$next.'">Next</a> ';
    }
     
(...)


Pour info, à l'origine, le début de l'url était sous cette forme :

$paginationCtrls .= '<a href="'.$_SERVER['PHP_SELF'].'?pn='.$previous.'">Previous</a> &nbsp; &nbsp; ';


et mes urls réelles sont du type :

annuaire/dpt=?&category=?&ville=?$cp=?


Merci !
@plus
Zed