[PHP/MySQL] Blob et accents ?

Sethpolma Messages postés 66 Date d'inscription   Statut Membre Dernière intervention   -  
 MYSQL -
Bonjour à toute la communauté CCM !

J'ai besoin d'un petit coup de main. Etant peu habitué à travailler avec des champs de type Blob, je me cogne à un problème d'encodage, très probablement.

Dans le cadre d'un stage, j'utilise un CMS (Spip, pour ceux qui connaissent). Et là, je dois effectuer une requête pour afficher du texte contenu dans un champ Blob (texte). Je ne peux pas passer par Spip, car cela se passe dans une appli externe.

Voici ma requête :
$sql = 'SELECT texte FROM spip.spip_breves';


Le texte s'affiche, mais de la façon suivante :

[...] récupération du matériel informatique [...]

Si quelqu'un a la solution, je suis preneur !

Merci !
A voir également:

1 réponse

Ssylvainsab Messages postés 2884 Date d'inscription   Statut Modérateur Dernière intervention   825
 
Problème d'encodage.
Regarde l'encodage de ta table et utilises iso, ou enregistres les données avec des entités html à la place des caractères spéciaux.
Tu peux faire un htmlentities() sur tes variables avant de les afficher, ca devrait régler le problème.
(A moins que ca ne soit déjà chamboulé dans la base).
0
Sethpolma Messages postés 66 Date d'inscription   Statut Membre Dernière intervention   15
 
Le problème justement, c'est que dans la base, tout est déjà enregistré avec des htmlentities... Tant qu'à la solution d'enregistrement des données avec les entités HTML, c'est à oublier. Cela impliquerait la modification du code dans la partie administration, ce qui sera détruit lors de la prochaine mise à jour...

Quelle idée ont eu mes employeurs de vouloir SPIP à tout prix ! :-o

Sinon, je vais essayer de jouer avec l'encodage de la table. Je sens que c'est pas gagné cette histoire ! :(
0
MYSQL > Sethpolma Messages postés 66 Date d'inscription   Statut Membre Dernière intervention  
 
Sous MySQL, les données stockées au format BLOB le sont en binaire. Normalement, de tels champs sont utilisés pour stocker de gros documents (style images, pdf...). Ces données ne doivent pas être altérées, d'où le stockage binaire. Pour recouvrer les accents, vous êtes obligés d'extraire le data et de le reconvertir en char.
0