Problème d'apostrophe
Bonsoir
j'ai un souci à la noix
j'ai un formulaire, qui inscrit les données dans une base MySQl
Tous les caractères passent bien, sauf l'apostrophe
(style Word : par exemple : l’agriculture)
je précise que tout est encodé en UTF-8
j'ai essayé un "str_replace", rien n'y fait
Si quelqu'un a la solution
merci d'avance
Fausto
Salut,
Qu'entend tu par probleme avec les apostrophe ?
Tu ne retrouve pas le bon caractere dans la table mysql ?
Si tu a des \ devant c'est du aux magic quotes il faut ajouter un stripslashe.
Il faut d'info pour t'aider.
L'encodage ne change rien (le probleme se reflete sur les caracteres speciaux comme les accents).
@+
Il en faut peu pour être heureux !!!!!
L'apostrophe style Word : ’
ne passe pas, elle est enregistrée dans la base (remplacée), par un "?"
J'ai essayé çà :
$text = $_POST['text'];
$healthy = array("’");
$yummy = array("'");
$text = str_replace($healthy, $yummy, $text);
Rien n'y fait, le addslashes non plus
c'est déprimant
Fausto
C'est parce que l'appostrophe de word n'est pas un caractere "normal" je pense. Essai un utf8_encode() sur ta chaine avant insertion !
Est ce que tes tables sont en utf 8 ainsi que la connection ? (set name....) ?
@+
Il en faut peu pour être heureux !!!!!
J'ai mis tout çà !
les tables sont bien en UTF-8
le code :
$text = nl2br($_POST['text']);
$text = utf8_encode ($text);
$date = date("d-m-Y");
$heure = date("H:i");
$healthy = array(":");
$yummy = array("h");
$heure = str_replace($healthy, $yummy, $heure);
$time = $date.' à '.$heure;
$id = $_GET['id'];
if($id==0) {
//connexion
mysql_query("SET NAMES 'utf8'");
$sql = "INSERT INTO table (id,texte,heure) VALUES('','$text','$time')";
$result = mysql_query($sql);
$last_id = mysql_insert_id();
mysql_close();
if($result) {
echo '<pre class="reg">- Les données ont bien été inscrites dans la base</pre>';
}
else {
echo '<pre class="reg">- PROBLÈME DANS L\'INSCRIPTION DANS LA BASE</pre>';
}
je bloque
merci pour ton aide
F
Hum tu vois le ? Sur la page html resultante ?
Est ce que c'est pareil avec un shell mysql ?
Essai de changer l'encodage d'affichage avec ton navigateur pour voir le resultat.
Il en faut peu pour être heureux !!!!!
Je crois que j'ai trouvé
j'avais un éditeur de texte inclut
qui lui était encodé en iso...
je fais un peu le ménage
en tout cas le str_replace dont je parlais plus haut, fonctionne
merci encore
Fausto
Oui, c'était bien çà
Désolé pour le dérangement
@+
Fausto
Ecrire un message
Votre message vient d'être créé avec succès.
BB-Code
Pour insérer une URL clickable
Pour insérer une adresse E-mail
Pour annoter
Pour écrire du code
Pour faire un lien vers une fonction PHP
Pour écrire du texte préformaté
Pour écrire du texte en gras
Pour écrire du texte en italique
Pour écrire du texte souligné
Pour écrire du texte barré
Pour écrire un titre principal
Pour écrire un titre secondaire
Pour écrire une liste
Smiley
:bond:
:boxe:
:bsmile:
:bump:
:clap:
:coeur:
:cool:
:cry:
:eek:
:evil:
:fleur:
:fou2:
:fou:
:grin:
:grrr:
:hammer:
:hippy:
:hum:
:idee2:
:idee:
:kdo:
:king:
:ko:
:lol:
:love2:
:love:
:mad:
:maitre:
:noel:
:oops:
:raa:
:razz:
:roll:
:sad:
:skull:
:smile:
:timide:
:trink:
:vice:
:vomi:
:wink:
:zzz: