[PHP] str_replace A n'y rien comprendre

Résolu/Fermé
CaporalDead Messages postés 209 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 mars 2011 - 25 mars 2008 à 23:13
CaporalDead Messages postés 209 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 mars 2011 - 26 mars 2008 à 01:27
Bonsoir à tous !

Voilà mon ti soucis, ça fais quelques jours que je le traine avec moi :
j'ai sur un site en construction une page sur laquelle je peux saisir un texte (input type text) et un article dans une balise textarea (pour le moment). Le soucis est que sur la page qui réceptionne ces infos je n'arrive pas à traiter le titre.

Voilà ce qui marche et ce qui ne marche pas :

// dans mon exemple le titre récupéré est : "bonjour é è à ç ù"

$titre = str_replace(" ", "_", $titre); // Ca ca marche

// maintenant aucune de ces fonctions ne fonctionne !

$titre = strtr($titre,'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ',
'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY'); // Genere des A? A? A?

$accent = array("é","è","à","ù","ç");
$accent_rep = array("e","e","a","u","c");
$titre = str_replace($accent, $accent_rep, $titre); // Ne fait rien du tout !


Si quelqu'un à une idée ^^ Merci d'avance !
A voir également:

7 réponses

weetabix40 Messages postés 9583 Date d'inscription samedi 12 janvier 2008 Statut Contributeur Dernière intervention 28 novembre 2015 1 723
25 mars 2008 à 23:27
Salut,
As tu essayé avec la fonction utf8_decode()
Cordialement,
Weet
0
CaporalDead Messages postés 209 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 mars 2011 6
25 mars 2008 à 23:33
Merci !!! ^^. Et dire que la solution était quasiment sous mon nez :p

Résumé :

Je n'arrivais donc pas à changer mes lettres accentuées en lettres non accentuées. Il suffisait de décoder le texte en UTF-8 et hop le tour est joué ^^.
0
weetabix40 Messages postés 9583 Date d'inscription samedi 12 janvier 2008 Statut Contributeur Dernière intervention 28 novembre 2015 1 723
25 mars 2008 à 23:35
Pas de problème... au plaisir ;)
Cordialement,
Weet
0
à supposer que ça ne vienne pas d'un problème de charset, as tu essayé la syntaxe à 2 arguments de strtr ?

$tab_accent = array("é" => "e", "è" => "e", "à" => "a", "ù" => "u", "ç" => "c");
echo strtr($titre, $tab_accent);
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
CaporalDead Messages postés 209 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 mars 2011 6
26 mars 2008 à 00:19
vi rien ne marchait ;)
0
tout ça laisse penser quil y a ptet un soucis au niveau des charsets.

regardes si tu ne peux pas t'en sortir avec les fonctions htmlentities et html_entity_decode
https://www.php.net/manual/fr/function.htmlentities.php
https://www.php.net/manual/fr/function.html-entity-decode.php
0
CaporalDead Messages postés 209 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 mars 2011 6
26 mars 2008 à 01:27
Ouai merci mais sinon ça marche trés bien avec utf8_decode().
0