看板 PHP 關於我們 聯絡資訊
下面這段在用英文輸入時可正確上傳至資料庫。但無法用中文就上傳…請問要改哪? 用的是utf8的編碼… <?php require("dbinfo.php"); // Gets data from URL parameters $name = $_GET['name']; $address = $_GET['address']; $lat = $_GET['lat']; $lng = $_GET['lng']; $type = $_GET['type']; // Opens a connection to a MySQL server $connection=mysql_connect ("localhost", $username, $password); if (!$connection) { die('Not connected : ' . mysql_error()); } // Set the active MySQL database $db_selected = mysql_select_db($database, $connection); if (!$db_selected) { die ('Can\'t use db : ' . mysql_error()); } // Insert new row with user data $query = sprintf("INSERT INTO markers " . " (id, name, address, lat, lng, type) " . " VALUES (NULL, '%s', '%s', '%s', '%s', '%s');", mysql_real_escape_string($name), mysql_real_escape_string($address), mysql_real_escape_string($lat), mysql_real_escape_string($lng), mysql_real_escape_string($type)); $result = mysql_query($query); if (!$result) { die('Invalid query: ' . mysql_error()); } ?> 感謝回覆 m(_ _)m -- 看不見你的笑我怎麼睡得著… 你的呻吟這麼近我卻抱不到… -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.220.195
yuan0258:你用GET方式傳中文值時要先用urlencode編碼才不會出錯 12/19 22:15
ebliswu:類似$name = urlencode($_GET['name']);這樣處理嗎? 12/19 22:53
ebliswu:這樣沒有改善…還是只能輸入英文 12/19 22:55
JoeHorn:MySQL 版本? 資料庫表格編碼? 我沒看到 SET NAMES ... 12/19 23:23
davidboy12:黑阿 無法上傳中文是怎麼回事?是亂碼嗎?如果是的話 12/19 23:25
davidboy12:就加上mysql_query("SET NAMES BIG5"); 12/19 23:26
ebliswu:板本為4.1.22 MySQL 文字編碼: UTF-8 Unicode (utf8) 12/19 23:34
ebliswu:加了mysql_query("SET NAMES BIG5");還是一樣沒改善 12/19 23:35
ebliswu:輸入中文只多一行空白的資料表…連亂碼都沒有 感謝回覆! 12/19 23:35
ebliswu:上面打錯mysql_query("SET NAMES 'UTF8'"); 12/20 00:19
JoeHorn:你把 SET NAMES 加在哪? 12/20 01:24
JoeHorn:通常我們都用「SET NAMES 'utf8';」,我不確定大寫是否OK 12/20 01:25
ebliswu:我是加在$query = sprintf("INSERT INTO markers " .之前 12/20 08:18
mysteriousGE:我剛好遇到此問題 樓上的推文說得可用!大寫可! 12/22 23:19
mysteriousGE:非常感謝 <(_ _)> 12/22 23:19