Bonjour!
j'essaye de mettre en place un système d'url-rewriting pour mon projet de fin d'année, la mise en place du fichier htaccess est ok mais j'ai un problème avec ma fonction qui me sert à réecrire les liens de mes pages
Tout se passe bien, les liens sont parfaitement réécris sauf lorsque le n° de la page est supérieur ou égale à 10, dans ce cas là, j'obtiens cette url:
testurl-1.html0 à la place de testurl-10.html
Je ne comprends pas pourquoi le deuxième chiffre se retrouve à la fin de ma chaine et j'ai eu beau retourner le problème dans tous les sens, je ne comprends pas...
Voici le code qui me permet de réécrire les liens de mes pages:
Pour le htaccess:
Si quelqu'un a une explication/solution, elle est vraiment la bienvenue!!!
Merci d'avance
j'essaye de mettre en place un système d'url-rewriting pour mon projet de fin d'année, la mise en place du fichier htaccess est ok mais j'ai un problème avec ma fonction qui me sert à réecrire les liens de mes pages
Tout se passe bien, les liens sont parfaitement réécris sauf lorsque le n° de la page est supérieur ou égale à 10, dans ce cas là, j'obtiens cette url:
testurl-1.html0 à la place de testurl-10.html
Je ne comprends pas pourquoi le deuxième chiffre se retrouve à la fin de ma chaine et j'ai eu beau retourner le problème dans tous les sens, je ne comprends pas...
Voici le code qui me permet de réécrire les liens de mes pages:
Code:
$contents = ob_get_contents();
ob_end_clean();
if (preg_match_all(
"#index.php\?page=([0-9]+)#si",
$contents,
$matches,
PREG_SET_ORDER))
{
foreach($matches as $match){
$pattern = $match[0];
$row_id = $match[1];
//schéma de la nouvelle url: testurl-n°_de_la_page
$new_url ="testurl-".$row_id.".html";
$contents = str_replace($pattern, $new_url, $contents);
}
}
echo $contents
Pour le htaccess:
Code:
RewriteRule ^testurl-([0-9]+)\.html$ index.php?page=$1 [L]
Si quelqu'un a une explication/solution, elle est vraiment la bienvenue!!!
Merci d'avance