PhpBB : Prob de rewriting sur les topics de plusieurs pages

Nouveau WRInaute
Bon j'ai testé l'URL rewriting sur mon forum phpBB, tout marche presque bien sauf un problème tout de même majeur : Quand un forum ou un topic s'étale sur plusieurs pages, ca reste sur la 1ère page quand je clique sur suivante ! D'ou est-ce que ca peut venir ??

En fait sur "suivante" il me mets ca en lien : forum1.php&topicdays=0&start=50
au lieu de mettre viewforum...

Pourtant j'ai bien recopié le code du mod (j'ai fait copié coller au bon endroit sans rien changer), je viens de vérifier ....

J'ai retiré le mod en attendant d'avoir une solution pour ne pas handicaper les utilisateurs de mon forum.

Merci d'avance pour votre aide précieuse

Michael
 
WRInaute discret
Déjà install easyphp sur ton pc, ça t'aideras beaucoup pour travailler sur ton forum sans modifier celui qui est en ligne.

Pour ton probleme je ne sais pas, moi je l'ai fais avec l'aide d'un topic sur phpbb-fr qui reprends les explications de ce site et ça marche tres bien !
 
Nouveau WRInaute
Content de voir que je ne suis pas le seul concerné par ce problème. Pourrais-tu me dire DREK quelles sont les modifications que tu as apportées au code pour que cela fonctionne chez toi ?

Merci d'avance,

Michael
 
WRInaute occasionnel
RewriteEngine on
Options +FollowSymlinks
RewriteRule ^viewforum_([0-9]+)_([0-9]+)_([0-9]+)\.html$ viewforum.php?f=$1topicdays=$2&start=$3 [L]
RewriteRule ^viewforum_([0-9]+)\.html$ viewforum.php?f=$1 [L]
RewriteRule ^viewtopic_([0-9]+)_([0-9]+)_(asc|desc)_([0-9]+)\.html$ viewtopic.php?t=$1&postdays=$2&postorder=$3&start=$4 [L]
RewriteRule ^viewtopic_([0-9]+)_([0-9]+)\.html$ viewtopic.php?t=$1&start=$2 [L]
RewriteRule ^viewtopic_([0-9]+)_newest\.html$ viewtopic.php?t=$1&view=newest [L]
RewriteRule ^viewtopic_([0-9]+)_previous\.html$ viewtopic.php?t=$1&view=previous [L]
RewriteRule ^viewtopic_([0-9]+)_next\.html$ viewtopic.php?t=$1&view=next [L]
RewriteRule ^viewtopic_([0-9]+)\.html$ viewtopic.php?t=$1 [L]
RewriteRule ^viewprofile_([0-9]+)\.html$ profile.php?mode=viewprofile&u=$1 [L]
RewriteRule ^viewmessage_([0-9]+)\.html$ viewtopic.php?p=$1 [L]
 
Nouveau WRInaute
Le .htaccess :
Code:
RewriteEngine On

RewriteRule ^forums.* /index.php

RewriteRule ^mforum([0-9]*)\.* /viewforum.php?f=$1&mark=topics

RewriteRule ^viewforum([0-9]*)-([0-9]*)-([0-9]*)\.* /viewforum.php?f=$1&topicdays=$2&start=$3

RewriteRule ^forum([0-9]*)\.* /viewforum.php?f=$1

RewriteRule ^ptopic([0-9]*)\.* /viewtopic.php?t=$1&view=previous

RewriteRule ^ntopic([0-9]*)\.* /viewtopic.php?t=$1&view=next

RewriteRule ^ftopic([0-9]*)-([0-9]*)-([a-zA-Z]*)-([0-9]*)\.* /viewtopic.php?t=$1&postdays=$2&postorder=$3&start=$4

RewriteRule ^ftopic([0-9]*)-([0-9]*)\.* /viewtopic.php?t=$1&start=$2

RewriteRule ^ftopic([0-9]*)\.* /viewtopic.php?t=$1

RewriteRule ^ftopic([0-9]*)\.* /viewtopic.php?t=$1&start=$2&postdays=$3&postorder=$4&highlight=$5

RewriteRule ^sutra([0-9]*)\.* /viewtopic.php?p=$1

ErrorDocument 404 http://www.cartomancie.org/404.html

Et le page_header.php

Code:
ob_start();
function replace_mod_rewrite($s)
{
$urlin = array(
"'(?<!/)viewforum.php\?f=([0-9]*)&topicdays=([0-9]*)&start=([0-9]*)'",
"'(?<!/)viewforum.php\?f=([0-9]*)&mark=topics'",
"'(?<!/)viewforum.php\?f=([0-9]*)'",

"'(?<!/)viewtopic.php\?t=([0-9]*)&view=previous'",
"'(?<!/)viewtopic.php\?t=([0-9]*)&view=next'",
"'(?<!/)viewtopic.php\?t=([0-9]*)&view=newest'",
"'(?<!/)viewtopic.php\?t=([0-9]*)&postdays=([0-9]*)&postorder=([a-zA-Z]*)&start=([0-9]*)'", "'(?<!/)viewtopic.php\?t=([0-9]*)&start=([0-9]*)&postdays=([0-9]*)&postorder=([a-zA-Z]*)&highlight=([a-zA-Z0-9]*)'",
"'(?<!/)viewtopic.php\?t=([0-9]*)&start=([0-9]*)'",
"'(?<!/)viewtopic.php\?t=([0-9]*)'",
"'(?<!/)viewtopic.php\?p=([0-9]*)'");

$urlout = array(
"viewforum\\1-\\2-\\3.php",
"mforum\\1.php",
"forum\\1.php",

"ptopic\\1.php",
"ntopic\\1.php",
"newtopic\\1.php",
"ftopic\\1-\\2-\\3-\\4.php",
"ftopic\\1-\\2-\\3-\\4-\\5.php",
"ftopic\\1-\\2.php",
"ftopic\\1.php",
"sutra\\1.php");

$s = preg_replace($urlin, $urlout, $s);

return $s;
}

//
// Generate logged in/logged out status

Cela provient d'un simple copier coller des infos trouvées sur ce site ...
 
Nouveau WRInaute
Salut,

déjà pour avoir une terminaison en .html, il faut modifier ceci
Code:
$urlout = array( 
"viewforum\\1-\\2-\\3.php", 
"mforum\\1.php", 
"forum\\1.php", 

"ptopic\\1.php", 
"ntopic\\1.php", 
"newtopic\\1.php", 
"ftopic\\1-\\2-\\3-\\4.php", 
"ftopic\\1-\\2-\\3-\\4-\\5.php", 
"ftopic\\1-\\2.php", 
"ftopic\\1.php", 
"sutra\\1.php");
par
Code:
$urlout = array( 
"viewforum\\1-\\2-\\3.html", 
"mforum\\1.html", 
"forum\\1.html", 

"ptopic\\1.html", 
"ntopic\\1.html", 
"newtopic\\1.html", 
"ftopic\\1-\\2-\\3-\\4.html", 
"ftopic\\1-\\2-\\3-\\4-\\5.html", 
"ftopic\\1-\\2.html", 
"ftopic\\1.html", 
"sutra\\1.html");

je débute moi aussi , si ça peut vous aider :wink:
 
Nouveau WRInaute
Et bien ca ne me dérange pas que ce soit en ".php" du moment que c'est référencé par les moteurs .... Je ne pense pas que ca solutionne le problème mais je vraiment tout de même essayer ce soir ... On ne sait jamais !
 
Nouveau WRInaute
Bon j'ai finis par trouver la solution tout seul, j'en fait donc profiter tout le monde :

Les " & " doivent être remplacés par " &amp; " !! :lol: Voilà d'ou venait le mystère !!

Donc il faut utiliser ce code la pour le page_header.php :

Code:
ob_start(); 
function replace_mod_rewrite($s) 
{ 
   $urlin = array( 
      "'(?<!/)viewforum.php\?f=([0-9]*)&amp;topicdays=([0-9]*)&amp;start=([0-9]*)'", 
      "'(?<!/)viewforum.php\?f=([0-9]*)&amp;mark=topics'", 
      "'(?<!/)viewforum.php\?f=([0-9]*)'", 

      "'(?<!/)viewtopic.php\?t=([0-9]*)&amp;view=previous'", 
      "'(?<!/)viewtopic.php\?t=([0-9]*)&amp;view=next'", 
      "'(?<!/)viewtopic.php\?t=([0-9]*)&amp;view=newest'", 
      "'(?<!/)viewtopic.php\?t=([0-9]*)&amp;postdays=([0-9]*)&amp;postorder=([a-zA-Z]*)&amp;start=([0-9]*)'",      "'(?<!/)viewtopic.php\?t=([0-9]*)&amp;start=([0-9]*)&amp;postdays=([0-9]*)&amp;postorder=([a-zA-Z]*)&amp;highlight=([a-zA-Z0-9]*)'", 
      "'(?<!/)viewtopic.php\?t=([0-9]*)&amp;start=([0-9]*)'", 
      "'(?<!/)viewtopic.php\?t=([0-9]*)'", 
      "'(?<!/)viewtopic.php\?p=([0-9]*)'"); 

   $urlout = array( 
      "viewforum\\1-\\2-\\3.php", 
      "mforum\\1.php", 
      "forum\\1.php", 

      "ptopic\\1.php", 
      "ntopic\\1.php", 
      "newtopic\\1.php", 
      "ftopic\\1-\\2-\\3-\\4.php", 
      "ftopic\\1-\\2-\\3-\\4-\\5.php", 
      "ftopic\\1-\\2.php", 
      "ftopic\\1.php", 
      "sutra\\1.php"); 

   $s = preg_replace($urlin, $urlout, $s); 

   return $s; 
}


Mystère résolu ....

Michael
 
Discussions similaires
Haut