2010-08-23 6 views
5

Je vais avoir du mal à trouver des caractères de type ♥ dans ma base de données en utilisant php.Insérer un ♥ dans MySQL (caractère du cœur) via PHP

J'ai mise en UTF-8 sur la page

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

et

<?php 
$line = $_REQUEST['line']; 
$line = stripslashes($line); 
$line = htmlspecialchars($line); 
$line = trim($line); 
$line = mysql_real_escape_string($line); 
mysql_query("SET CHARACTER SET utf8"); 

$sql = "INSERT INTO posts (txt) values ('$line')"; 
mysql_query($sql, $cn); 

?> 

le résultat de l'insert est un ? caractère

Je suis sûr qu'il y a des gens qui ont fait cela, mais j'ai vraiment du mal à le faire correctement.

modifier:

la collation de table MySQL et l'encodage de champ est également réglé sur utf8_unicode_ci

Répondre

3

Je crois que vous devez faire: SET NAMES utf8 comme première requête.

+0

ahhhhhh .... merci beaucoup tellement. cela me tue depuis des heures: D –

+0

hmm cela ne devrait pas être une raison. SET CHARACTER SET fait la même chose que SET NAMES. Et c'est toujours avant l'exécution de la requête. @Alex est-ce que c'est vraiment ton problème? –

+0

ouais c'est sûr! (J'aurais voté pour la coche verte plus tôt mais la pile a un retard sur l'acceptation des réponses :) Peut-être que c'est quelque chose à voir avec la version/les paramètres/etc ... sur le serveur. –

Questions connexes