bonjour à tous, je fais un petit site internet pour un ami et je veux lui faire un espece de panneau d'admin pour pouvoir modifier ses pages. chacune etant legere, je les stock dans une BDD.
le probleme est que les textes à afficher comprenent des accents des apostrophes etc ...
on m'a expliqué que c'était un probleme d'encodage mais je n'ai pas tres bien compris. ma table est en utf8 et voilà le script qui update :
cependant ça ne fonctionne pas ( les deux lignes où il y a ecrit utf8 m'ont été conseillé ).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php header('Content-Type: text/html; charset=utf8'); $link=mysql_connect("localhost","ulrich", "mdp") or die(mysql_error());// Connexion à MySQL mysql_query('SET NAMES UTF8'); $database=mysql_select_db("go",$link) or die(mysql_error()); extract($_POST); if(isset($news)){ mysql_query("UPDATE news SET texte='".utf8_decode($news)."';") or die(mysql_error());} mysql_close($link); ?>
EDIT : j'ai ajouté le utf8_decode : celà arrete de me faire une troncature a partir du 1er accent mais ça me les remplace tous par un ?
EDIT 2: Finalement apres pas mal de temps de recherche sur le net j'ai trouvé comment m'en sortir :EDIT 3 : pas completement sauvé, je ne peux pas encore faire les apostrophe, si vous voyez où est le problème...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php header('Content-Type: text/html; charset=latin1_swedish_ci '); $link=mysql_connect("localhost","ulrich", "mdp") or die(mysql_error());// Connexion à MySQL mysql_query('SET NAMES latin1_swedish_ci '); $database=mysql_select_db("go",$link) or die(mysql_error()); extract($_POST); if(isset($news)){ mysql_query("UPDATE news SET texte='".$news."';") or die(mysql_error());} mysql_close($link); ?>
Partager