Pblm d'accent avec base de données MySQL

Résolu
a.finot Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   -  
Smoking bird Messages postés 870 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai des champs de texte (VARCHAR et TEXT) dans une base de données MySQL que j'aimerais afficher dans une page PHP mais les accents n'apparaissent pas ?
Je ne suis pas sûre que cela ait un rapport mais l'interclassement s'est automatiquement réglè sur latin swedish. Je l'ai modifié pour utf8_unicode-ci mais ça ne change rien... A l'aide !!!!!!!!!!!!!!!!
Est-ce que quelqu'un a déjà rencontré ce problème ?
Merci

6 réponses

Smoking bird Messages postés 870 Date d'inscription   Statut Membre Dernière intervention   58
 
Bonjour,

Je n'ai pas rencontré ce problème, mais je crois qu'il existe une fonction en php pour le régler.

Essais de voir ces deux fonctions, qui travaillent ensemble. La première devrait être utilisée pour l'enregistrement dans ta bdd, la seconde, pour la retransmission de ton texte, si ça ne se fait pas normalement^^

http://fr3.php.net/manual/fr/function.htmlentities.php

http://fr3.php.net/manual/fr/function.html-entity-decode.php
0
a.finot Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   2
 
Salut smoking bird !

Merci bcp pour le tuyau. Effectivement la fonction htmlentities a réglé mon problème mais j'utilisais aussi nl2br pour les sauts de ligne... mon, problème est donc à moitié réglé ;-).
Est-ce tu sais si on peut combiner les deux ?

Merci,
0
Smoking bird Messages postés 870 Date d'inscription   Statut Membre Dernière intervention   58
 
Colle du soir bonsoir :D

Je sais pas!! :)

J'ai jamais eu à l'utiliser. En revanche, je formate toutes les chaînes que je récupère via formulaire, avant de les retransmettre dans ma bdd, et j'ai aussi une fonction pour les reformater à la sortie :) (j'avais des doublons de br en édition^^)

	
//modèle la chaîne avant de la rentrer dans la bdd, cette fonction nettoie et est supposée sécuriser un minimum les entrées extérieures
          function shapeString( $stringGiven ) {
			$stringGiven=addslashes($stringGiven);
			$stringGiven=nl2br($stringGiven);
			$shapeString=strip_tags($stringGiven,"<b><i><br><h3>");
			return $shapeString;
		}

//Parfois je suis confronté à des doublons de <br/>, cette chaîne me protège contre ça^^	
	function shapeStringOut($string) {
		$string=stripslashes($string);
		$string=str_replace('<br />','',$string);
		return $string;
	}



Si ça peut t'être utile :)
0
a.finot Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   2
 
Je vais essayer ça demain à tête reposée.
Je te tiendrai au courant !
0

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

Posez votre question
Smoking bird Messages postés 870 Date d'inscription   Statut Membre Dernière intervention   58
 
ça marche :)
0
a.finot Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   2
 
Salut,

Voici le code que j'ai utilisé pour avoir les accents et les sauts de ligne ;-)
nl2br(htmlentities($row_rsActu['texte']));

Merci pour ton aide.

A +
0
Smoking bird Messages postés 870 Date d'inscription   Statut Membre Dernière intervention   58
 
lol j't'en prie^^

@+, et n'oublis pas de fermer le fil^^
0