caracteres incompréhensibles

caracteres incompréhensibles - PHP - Programmation

Marsh Posté le 28-10-2008 à 16:17:06    

Bonjour, dans l'entete de mon navigateur j'ai:

Code :
  1. <META http-equiv=Content-Type content="text/html; charset=ISO-8859-1">


 
j'utilise curl pour lire une page internet puis j'extrais un bloc
avant d'écrire dans ma base de données mysql je fais le formatage suivant :

Code :
  1. addslashes(str_replace("\n", "<br>",$texte))


 
Le champ de ma base de données est de type texte utf8_unicode_ci
Lorsque je visualise ma base de données j'ai des caractères spéciaux (é, ...) dans le champ, de plus je retrouve ces caractères à l'affichage. Comment faire ?


Message édité par majong le 28-10-2008 à 16:17:34
Reply

Marsh Posté le 28-10-2008 à 16:17:06   

Reply

Marsh Posté le 28-10-2008 à 16:25:51    

utf-8 utf-8 utf-8 utf-8 utf-8 utf-8
 
Faut pas mettre un charset iso-8859-1 si t'as des données en utf-8, forcément

Reply

Marsh Posté le 28-10-2008 à 16:40:29    

Quel type puis je choisir dans ma base de données ? Il n y a pas un moyen de convertir ?
curl et Apach2 n'est pour rien là dedans ?


Message édité par majong le 28-10-2008 à 16:48:43
Reply

Marsh Posté le 28-10-2008 à 16:56:35    

Y'a rien à convertir, y'a tout à garder en utf-8 :)

Reply

Marsh Posté le 28-10-2008 à 17:29:50    

garder tout en utf8 bof,  
 
utf8_decode($texte)

Message cité 1 fois
Message édité par stealth35 le 28-10-2008 à 17:30:01
Reply

Marsh Posté le 28-10-2008 à 17:53:34    

Ouais clair, autant convertir tous les caractères de la page au lieu de changer le charset de la page. Toute façon des ressources on en a plein.

Reply

Marsh Posté le 28-10-2008 à 19:52:40    

Attend, j'ai plus d'information:
voila la source du fichier récupérer par curl
<?xml version="1.0" encoding="UTF-8" ?>  
  <rss version="2.0">
...
Puis je fais un @DOMDocument::loadXML($contenu);
Ensuite j'enregistre dans la BDD:avec addslashes($texte)
 
Pour la lecture je fais: stripcslashes($row['texte'])
Ensuite comment j'écris dans le template, sachant l'entete que j'ai mis (voir le premier message) ?
$var['rss']= ?

Reply

Marsh Posté le 28-10-2008 à 21:56:03    

Code :
  1. str_replace("\n", "<br>",$texte) <- c'est le mal
  2. nl2br($texte) <- mieux


 
ut8-_encode marche trés bien


Message édité par ionik le 28-10-2008 à 21:56:53

---------------
Recette cookeo Recette de cuisine
Reply

Marsh Posté le 29-10-2008 à 12:31:45    

stealth35 a écrit :

garder tout en utf8 bof


Euh si :o

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed