Aller au contenu

Remplacer caractére %20 dans fichier .htaccess


Sujets conseillés

Bonjour JeanLuc,

Sur cette url

http://www.monsite.com/annonce-85-Bonnets%...%20foulards.htm

j'utilise un .htaccess

RewriteEngine on

RewriteRule ^annonces-(.+)\.htm$ /affichecat.php?nomcat=$1 [L]

RewriteRule ^annonce-([0-9]+)-(.+).htm$ /voirannonce.php?no=$1&sujet=$2 [L]

ErrorDocument 404 /404.htm

et je souhaite remplacer les caractéres %20 par des -

Merci!

Lien vers le commentaire
Partager sur d’autres sites

S'il y a maximum 2 espaces, tu pourrais faire ceci (non testé):

RewriteEngine on
RewriteRule ^annonces-(.+)\.htm$ /affichecat.php?nomcat=$1 [L]
RewriteRule ^annonce-([0-9]+)-(.+)\%20(.+)\%20(.+)\.htm$ /annonce-$1-$2-$3-$4.htm [R=301]
RewriteRule ^annonce-([0-9]+)-(.+)\%20(.+)\.htm$ /annonce-$1-$2-$3.htm [R=301]
RewriteRule ^annonce-([0-9]+)-(.+).htm$ /voirannonce.php?no=$1&sujet=$2 [L]
ErrorDocument 404 /404.htm

De cette façon, tu commences par faire une redirection 301 des anciennes adresses (avec les %20) vers les nouvelles (avec les tirets). Dans cette version, il y a finalement une réécriture vers une page en php, comme avant, mais maintenant la 2ème variable comprend des tirets.

Jean-Luc

Lien vers le commentaire
Partager sur d’autres sites

Mais le mieux serait tout de même de les modifier dans ton script.

Voici la fonction que j'utilise pour réecrire mes titres en url (sur le premier des sites dans mon profil)

function formaturl($url) {
$url = strtolower($url);
$in = array(
 " ",
 "_",
 ".",
 " ",
 "`",
 "'",
 "",
 ",",
 "(",
 ")",
 "}",
 "{",
 "&",
 "$",
 
 "!",
 "?",
 "\"",
 "/",
 ":",
 
 "é",
 "è",
 "ê",
 "ë",
 "à",
 "ù",
 "ô",
 "ç",
 "«",
 "»",
 
 "+",
 
 
 "--",
 "--",
);

$out = array(
 "-",
 "-",
 "-",
 "-",
 "",
 "",
 "",
 "",
 "",
 "",
 "",
 "",
 "",
 "",
 "",
 
 "",
 "",
 "",
 "-",
 "",
 
 "e",
 "e",
 "e",
 "e",
 "a",
 "u",
 "o",
 "c",
 "",
 "",
 
 "-plus-",
 
 "-",
 "-"
);

$url = str_replace($in, $out, $url);
return $url;
}

str_replace()

Lien vers le commentaire
Partager sur d’autres sites

Pour le fichier .htaccess, cela ne fonctionne pas.

Pour la modif du script, je me demande dans quelle page le placer?! c'est un site d'annonce et dois-je l'ajouter dans la page "ajoutannonce" ou la page de visualisation de l'annonce!

??!

Lien vers le commentaire
Partager sur d’autres sites

Pour le fichier .htaccess, cela ne fonctionne pas.

Tu pourrais expliquer précisément ce qui fonctionne et ce qui ne fonctionne pas ? Sinon, c'est quasiment impossible d'aider.

Jean-Luc

Lien vers le commentaire
Partager sur d’autres sites

Il n'y a aucun changement, même dans le cas où une nouvelle page est créée

Les anciennes régles continues de fonctionner mais pas les nouvelles!

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...