2013-10-29 49 views
-1

我有這個疑問:插入字符像MySQL的「S」與PHP

insert into orders (customers_id, customers_name) values ('51064', 'Šample Šample') 

如果我執行從PHP這個查詢,我的數據庫記錄成爲

[51604, '?ample ?ample'] (if executed with MySQLi) or 

[51604, 'Šample Šample'] (with mysql_query) 

我也注意到,如果我使用的值從$ _GET

insert into orders (customers_id, customers_name) values ('51064', {$_GET['name']}) 

它變爲[51064, 'ÅampleÅample']

如果我插入手動使用像「Navicat的」軟件可以節省用正確的字符(所以我認爲,字符集是正確的)

我需要保存字母S查詢查詢(和許多其他)以正確的方式從PHP

+0

[確保數據庫的字符集和表使用字符集相同貫穿,在phpMyAdmin例如檢查此...] [1] [1]:http://stackoverflow.com/a/7969943/2218934 –

回答

-1

在使用數據庫之前設置Mysql編碼。

mysql_query("SET NAMES 'utf8'"); 

或使用UTF8 utf8_encode()utf8_decode()功能