|
|
|
Android มีปัญหาเรื่องภาษาไทย กับ php+MSSQL server2008r2 +json ครับ |
|
|
|
|
|
|
|
ลองดูก่อนครับ
mssql_query("SET character_set_results=utf-8");
mssql_query("SET character_set_client=utf-8");
mssql_query("SET character_set_connection=utf-8");
|
|
|
|
|
Date :
2012-09-18 08:04:58 |
By :
Krungsri |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองหาข้อมูลมาทำได้แล้วครับตอนนี้ ผมใช้
Code (PHP)
$data = iconv("WINDOWS-874","UTF-8",$obResult[$i]);
เผื่อคนที่ยังไม่รุ้น๊ะครับผม
|
ประวัติการแก้ไข 2012-09-19 02:20:04
|
|
|
|
Date :
2012-09-18 17:05:17 |
By :
rut |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แจ่มครับ กำลังมาตอบพอดีว่าให้ดูพวก iconv()
|
|
|
|
|
Date :
2012-09-19 06:06:15 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$data = iconv("WINDOWS-874","UTF-8",$obResult[$i]);
ต้องเอาไปวางไว้ไหน ของ โค้ด คะ
|
|
|
|
|
Date :
2013-07-26 11:54:35 |
By :
อ้อม |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พอดีลองใช้ datatables มีปัญหากับการใช้ สุดท้ายไปได้มาจาก php.net ใช้ได้ทั้งสองฟังชั่น (ก่อนหน้านี้ลองมาหลายอย่าง ก็ไม่ได้) เลยเอามาแชร์ เผื่อจะมีผู้ติดขัดปัญหานี้
Code (PHP)
//2 function of json from http://php.net/manual/fr/function.json-encode.php ...good work :=)
function _json_encode($arr)
{
//convmap since 0x80 char codes so it takes all multibyte codes (above ASCII 127). So such characters are being "hidden" from normal json_encoding
array_walk_recursive($arr, function (&$item, $key) { if (is_string($item)) $item = mb_encode_numericentity($item, array (0x80, 0xffff, 0, 0xffff), 'UTF-8'); });
return mb_decode_numericentity(json_encode($arr), array (0x80, 0xffff, 0, 0xffff), 'UTF-8');
}
function my_json_encode($in) {
$_escape = function ($str) {
return addcslashes($str, "\v\t\n\r\f\"\\/");
};
$out = "";
if (is_object($in)) {
$class_vars = get_object_vars(($in));
$arr = array();
foreach ($class_vars as $key => $val) {
$arr[$key] = "\"{$_escape($key)}\":\"{$val}\"";
}
$val = implode(',', $arr);
$out .= "{{$val}}";
}elseif (is_array($in)) {
$obj = false;
$arr = array();
foreach($in AS $key => $val) {
if(!is_numeric($key)) {
$obj = true;
}
$arr[$key] = my_json_encode($val);
}
if($obj) {
foreach($arr AS $key => $val) {
$arr[$key] = "\"{$_escape($key)}\":{$val}";
}
$val = implode(',', $arr);
$out .= "{{$val}}";
}else {
$val = implode(',', $arr);
$out .= "[{$val}]";
}
}elseif (is_bool($in)) {
$out .= $in ? 'true' : 'false';
}elseif (is_null($in)) {
$out .= 'null';
}elseif (is_string($in)) {
$out .= "\"{$_escape($in)}\"";
}else {
$out .= $in;
}
return "{$out}";
}
|
|
|
|
|
Date :
2013-10-12 23:38:20 |
By :
PMChin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช้ฟังชั่น my_json_encode หรือ _json_encode ทำให้อ่านไทยได้ ดังรูปที่แนบมา เป็นการทำศัพท์บาลี แสดงผลที่ localhost ได้ แต่ยังไม่แสดงผลบนเซิฟเวอร์ เท่าที่อ่านดู มีหลายราย ที่พบปัญหานี้ (ในกรณีทำเกี่ยวกับดาต้าเบสที่แก้ไข อับเดท
ถ้าเพียงแสดงข้อมูลเฉยๆ ไม่แก้ไข ก็สามารถใช้อีก code แต่ถ้าข้อมูลเยอะๆ จะดีเลย์ (ช้า)
จะลองโหลดมาทดสอบดูก่อนก็ได้ ที่เวบนี้เลย https://jquery-datatables-in-line-editing.googlecode.com/files/CreativePathExample.zip
|
|
|
|
|
Date :
2013-10-12 23:57:39 |
By :
PMChin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
วันนี้ได้รู้วิธีบันทึกแล้วไม่เก็บอักขระ ๓ ตัว
โดยใช้คำสั่ง
mysql_query("set names 'utf8'",$gaSql['link']);
$gaSql['link'] เป็นตัวแปรที่ connect กับ mysql server
ที่ http://82.113.152.82/forums/discussion/9455/utf8-data-from-mysql-solved/p1
|
|
|
|
|
Date :
2013-10-13 10:26:46 |
By :
PMChin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|