2010-08-23 18 views
5

Sto avendo un po 'di tempo a digitare caratteri ♥ nel mio database usando php.Inserire un ♥ in MySQL (carattere cuore) tramite PHP

Ho impostazione UTF-8 nella pagina

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

e

<?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); 

?> 

il risultato dell'inserto è un ? carattere

sono sicuro che ci sono persone che hanno fatto questo, ma ho davvero problemi a farlo bene.

edit: collazione

della tabella di MySQL e la codifica del campo è anche impostato su utf8_unicode_ci

risposta

3

Credo che quello che dovete fare: SET NAMES utf8 come la vostra prima query.

+0

ahhhhhh .... grazie mille così tanto. questo mi ha ucciso per ore: D –

+0

hmm non dovrebbe essere un motivo. SET SET CHARACTER fa lo stesso di SET NAMES. Ed è ancora prima dell'esecuzione della query. @Alex fa davvero slove il tuo problema? –

+0

sì certo! (avrei votato per il segno di spunta verde prima, ma lo stack ha un ritardo nell'accettare le risposte :) Forse è qualcosa a che fare con la versione/impostazioni/etc ... sul server. –

Problemi correlati