Forum-webmaster
Technique - programmation => PHP / MySQL => Message commencé par: mibolan le le 05-11-2008 a 10:08:36

Titre: [Résolu] Réécriture d'url avec Ereg
Posté par: mibolan le le 05-11-2008 a 10:08:36

Bonjour à vous tous,

J'ai développé une fonction php qui me permet de modifier le titre de mes pages pour la réécriture d'url.
Elle ressemble à ça :


Code:

function rewrite_url($chaine)
{
$chaine = strtolower($chaine);
$chaine = html_entity_decode($chaine);
$chaine = str_replace("#039;","",$chaine);
$chaine = str_replace(":","",$chaine);
$chaine = str_replace("«","",$chaine);
$chaine = str_replace("»","",$chaine);
$chaine = str_replace(",","",$chaine);
$chaine = str_replace("’","-",$chaine);
$chaine = trim($chaine);
$chaine = strtr( $chaine, " -&'àáâãäåòóôõöøèéêëçìíîïùúûüñ", "----aaaaaaooooooeeeeciiiiuuuun");
$chaine = str_replace("--","-",$chaine);
$chaine = str_replace("…","",$chaine);
$chaine = str_replace("?","",$chaine);
$chaine = str_replace("!","",$chaine);
$chaine = str_replace("...","",$chaine);
$chaine = str_replace("\"","",$chaine);
$chaine = str_replace("â","",$chaine);
$chaine = str_replace("€","",$chaine);
$chaine = str_replace("™","",$chaine);
$chaine = str_replace("%","",$chaine);
$chaine = str_replace("œ","oe",$chaine);
$chaine = str_replace("“","",$chaine);
$chaine = str_replace("°","",$chaine);
$chaine = str_replace("”","",$chaine);

$ss = strtok( $chaine, "-");
while($ss)
{
if ($ss)
{
if ( strlen($ss) > 2 )
{
$chaine2 .= $ss."-";
}

$ss = strtok("-");
}
}

$chaine = substr($chaine2, 0, -1);
return $chaine;
}


c'est assez barbare je vous l'accorde et d'ailleurs ne marche pas forcement très bien étant donné que certains caractères passent encore au travers de ma fonction et fou donc le bordel dans ma redirection d'url

C'est pour ça que je souhaiterais grâce à une nouvelle fonction en Ereg() faire la même chose mais en mieux.
Ne pigeant pas grand chose au Ereg et trouvant ça imbuvable, je fait appelle à votre communauté...

Merci d'avance,
Mibolan

Titre: Re:Réécriture d'url avec Ereg
Posté par: mibolan le le 05-11-2008 a 11:22:56

C'est bon j'ai trouvé, si ça intéresse quelqu'un...


Code:
   
$chaine = strtolower(strtr($chaine,'ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ', 'aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn'));
$chaine = preg_replace('#[^a-z0-9_-]#','-',$chaine);
while (strpos($chaine,'--') !== false) $chaine = str_replace('--','-',$chaine);
return $chaine;



Titre: Re:[Résolu] Réécriture d'url avec Ereg
Posté par: ToToMaStEr le le 06-11-2008 a 21:35:54

Résolu!


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.