Voila, il y a pas longtemps je me suis mis à l'url rewriting pour un de mes projets, mais je vient de voire que j'avais un problème avec les caractères spéciaux :pinch:
Donc pour le moment, j'utilise cette fonction pour filtrer les URL :
Code
function filter($string){
$spe = 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛܯàâãäåçèéêëìíîï©£òóôõöùúûü~ÿ';
$normal = 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaceeeeiiiioooooouuuuyyy';
$msg = strtr($string,$spe,$normal);
$msg = ereg_replace(' ','-',$string);
return $msg;
}
$spe = 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛܯàâãäåçèéêëìíîï©£òóôõöùúûü~ÿ';
$normal = 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaceeeeiiiioooooouuuuyyy';
$msg = strtr($string,$spe,$normal);
$msg = ereg_replace(' ','-',$string);
return $msg;
}
Sauf que le problème, sa ne marche pas :s
Par exemple, pour Comédie qui est enregistrer dans ma base de donnée, lorsque je le récupère et que je lui assigne ma fonction filter, il m'affiche Comédie et non pas Comedie.
Et donc voila, je ne sais pas comment faire pour qu'il me fasse automatiquement ça, car je ne connais pas tout les codes html pour les caractères spéciaux.
De plus, j'ai essayé en faisant un htmlentites sur ma chaine de caractères spéciaux, mais le problème, c'est qu'en UTF-8 un é est directement affiché, alors que dans ma base de données qui est en UTF-8 ( en utf8_unicode_ci ) , elle l'enregistre sous la forme : é
Merci d'avance
