url rewriting .htaccs ok ! et les href ? comment les gerer ?

Nouveau WRInaute
Bonjour

Je me renseigne sur les url rewriting et j arrive au bout du tunnel lol ... J ai commencer a créer un .htaccess, tout est ok.

Maitenant mon probleme, est mes liens. Tous mes href sont du style index.php?id=$1&i=$2 Et donc il faut les modifier. Je voudrais connaitre quelle methode utiliser, sachant que Je ne suis pas sur au bout du conte d utiliser les url rewriting.

Merci de m aiguiller

@ bientot jerome
 
WRInaute discret
if urlrewriting=on
alors

ton code ( liste de liens rewrité etc... )

sinon

ton code ( liste de liens non rewrité )

voila en gros....
 
Nouveau WRInaute
Merci pour ta reponse mais ca m aide pas trop !

Je ne voudais pas modifier mon code php, le laisser tel qu il est

Je veux tout simplement faire une modification de code grace a des preg_replace ou des str_replace.

Je voudrais connaitre la syntaxe de tout ca.

Encore merci

@ bientot jerome
 
WRInaute impliqué
bien le mieux c´est d´avoir des liens absolue, ce qui permet une plus grande souplesse des rwrules
 
WRInaute occasionnel
He bien si tu ne veux pas modifier ton code l'url rewriting ne te servira à rien puisque c'est justement le but, changer tous les liens internes pour ne plus avoir des paramètres dans l'url.
Il faudra donc faire index.php?id=$1&i=$2 > index-$1-$2.htm par exemple.
 
Nouveau WRInaute
Salut

Merci. J ai trouvé une solution genre phpbb en "buffant" mes pages .. voici ma methode

Code:
<?
function callback($buffer)
{
	$url_php = array(
					'`(?<!\/)href="index.php\?id=([0-9]+)&amp;i=(.*?)"`',
					'`(?<!\/)href="forum.php\?id=([0-9]+)&amp;i=(.*?)&amp;p=([0-9]+)"`',
					'`(?<!\/)href="forum.php\?id=([0-9]+)&amp;i=(.*?)"`',
					'`(?<!\/)href="topic.php\?id=([0-9]+)&amp;i=(.*?)&amp;p=([0-9]+)#p([0-9]+)"`',
					'`(?<!\/)href="topic.php\?id=([0-9]+)&amp;i=(.*?)&amp;p=([0-9]+)"`',
					'`(?<!\/)href="topic.php\?id=([0-9]+)&amp;i=(.*?)"`',
					'`(?<!\/)href="profil.php\?id=([0-9]+)&amp;i=(.*?)"`'
					);

	$url_html = array(
					'href="cat-$1-$2.html"',
					'href="forum-$1-$3-$2.html"',
					'href="forum-$1-$2.html"',
					'href="topic-$1-$3-$4-$2.html"',
					'href="topic-$1-$3-$2.html"',
					'href="topic-$1-$2.html"',
					'href="profil-$1-$2.html"'
					);
	
	$buffer = preg_replace($url_php, $url_html, $buffer);
	
	$buffer = str_replace('href="index.php"','href="index.html"',$buffer);
	$buffer = str_replace('href="regle.php"','href="regle.html"',$buffer);
	$buffer = str_replace('href="faq.php"','href="faq.html"',$buffer);
	$buffer = str_replace('href="membre.php"','href="membre.html"',$buffer);
	$buffer = str_replace('href="profil.php"','href="profil.html"',$buffer);
	$buffer = str_replace('href="groupe.php"','href="groupe.html"',$buffer);
	$buffer = str_replace('href="recherche.php"','href="recherche.html"',$buffer);

	return $buffer;
}

ob_start("callback");

...
...
...
...


ob_end_flush();
?>

voila c est assez simple

Merci a vous

@ bientot jerome
 
Discussions similaires
Haut