Comment marche le htmlentities() ?

Petit nouveau ! | 6 Messages

29 sept. 2008, 08:39

Bonjour a tous !

J'ai sur mon site des includes, ça me sort tous les accents en trucs moche :?

Je sais les "convertirs" mais c'est long de tout faire un par un...

J'ai vu sur un site la fonction htmlentities() ??? ils disent que c'est pour convertir automatiquement les accents html, mais ils ne disent pas comment la mettre en place cette fonction...

qq peut me dire svp ?

Merci bcp !!

lux
Eléphant du PHP | 372 Messages

29 sept. 2008, 08:59

$nouvelle_chaine = htmlentities($vielle_chaine);
http://fr.php.net/manual/fr/function.htmlentities.php

Regarde sur la page de documentation officielle, en bas il y a aussi des exemples ! :wink:

Petit nouveau ! | 6 Messages

29 sept. 2008, 09:06

mouarff.. j'ai lu je capte pas tout, je suis vraiment débutant sorry...

je pensais que le code était du genre (en francais dsl)

<?php htmlentities ('é=&eacute;'/'à=&agrave;'/etc...) ?>

y'a pas un trucs simple du genre ? (sans les fautes de codae :wink: )

lux
Eléphant du PHP | 372 Messages

29 sept. 2008, 09:12

Regarde bien l'exemple 1. Tu ne dois pas lui spécifier les correspondances, il va faire tout pour toi.
$str = 'Un \'apostrophe\' en <strong>gras</strong>';

echo htmlentities($str);
// Affiche : Un 'apostrophe' en <strong>gras</strong>
Essaye le code au pire, tu verras le résultat :wink:

Eléphant du PHP | 422 Messages

29 sept. 2008, 09:15

Si c'est pour convertir tous les caractères accentués en &quelquechose; , regarde le premier exemple de get_html_translation_table

http://fr.php.net/manual/fr/function.ge ... -table.php

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

29 sept. 2008, 11:50

Est-ce un problème d'entités html ? ou simplement d'encodage ISO / UTF8 ?

De manière à ce que tous les navigateurs interprètent correctement les accents et caractères spéciaux, il est effectivement recommandé de convertir ceux-ci en entités html (de la forme &entité;).
Maintenant si tes accents apparaissent sous la forme de "À@" et compagnie, c'est peut être tout simplement parce qu'ils sont encodés en UTF8, et que tu essayes de les afficher en ISO, et que du coup la conversion se fait mal :)

Peux-tu nous dire d'où provient le texte que tu affiches (bdd, page statique ?) et nous donner un exemple concret de ce que tu appelles un truc moche ? ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...