par
soundlight1 » 09 févr. 2011, 02:29
Bonjour a tous j'utilise ce bout de code (
source d’Olivier sur le sujet) pour nettoyer les accents de mon nom de ville et le passer en Majuscules.
il marchait à l'origine mais je ne sais pour quelles raisons il ne fonctionne plus
Pour le moment il me détecte une variable non nul mais vide lorsque mon texte contient un accent.
il passe bien le contenu en majuscule si il n'y as pas d'accent dans mon texte de base.
Quelqu'un aurait-il la solution à mon problème?
Merci d'avance
function wd_remove_accents($str, $charset='utf-8')
{
$str = htmlentities($str, ENT_NOQUOTES, $charset);
$str = preg_replace('#\&([A-za-z])(?:acute|cedil|circ|grave|ring|tilde|uml)\;#', '\1', $str);
$str = preg_replace('#\&([A-za-z]{2})(?:lig)\;#', '\1', $str); // pour les ligatures e.g. 'œ'
$str = preg_replace('#\&[^;]+\;#', '', $str); // supprime les autres caractères
return $str;
}
if (!empty ($_POST['VILLE']))
{
$ville = wd_remove_accents($_POST['VILLE']);
$ville = ucwords(strtoupper($ville));
}
Bonjour a tous j'utilise ce bout de code ([url=http://www.weirdog.com/blog/php/supprimer_les_accents_des_caracteres_accentues_en_php.html]source d’Olivier sur le sujet[/url]) pour nettoyer les accents de mon nom de ville et le passer en Majuscules.
il marchait à l'origine mais je ne sais pour quelles raisons il ne fonctionne plus
Pour le moment il me détecte une variable non nul mais vide lorsque mon texte contient un accent.
il passe bien le contenu en majuscule si il n'y as pas d'accent dans mon texte de base.
Quelqu'un aurait-il la solution à mon problème?
Merci d'avance
[php]function wd_remove_accents($str, $charset='utf-8')
{
$str = htmlentities($str, ENT_NOQUOTES, $charset);
$str = preg_replace('#\&([A-za-z])(?:acute|cedil|circ|grave|ring|tilde|uml)\;#', '\1', $str);
$str = preg_replace('#\&([A-za-z]{2})(?:lig)\;#', '\1', $str); // pour les ligatures e.g. 'œ'
$str = preg_replace('#\&[^;]+\;#', '', $str); // supprime les autres caractères
return $str;
}
if (!empty ($_POST['VILLE']))
{
$ville = wd_remove_accents($_POST['VILLE']);
$ville = ucwords(strtoupper($ville));
}[/php]