|
|
|
ทำเว็บ php html มันอ่านภาษาไทยไม่ได้ขึ้นภาษาต่างด้าว «×éÍ ช่วยที |
|
|
|
|
|
|
|
ทำเว็บ php html มันอ่านภาษาไทยไม่ได้ขึ้นภาษาต่างด้าว «×éÍ ช่วยที
ลองแก้ที่โปรแกรม dreamweaver และ notepad++ ในส่วนของภาษาแล้ว
แต่ก็ไม่หาย
ช่วยดูให้ทีต้องแก้ตรงไหนT-T บางไฟล์มันแก้ภาษาไทยได้ แต่ส่วนมากแก้เป็นภาษาไทยแล้วขึ้นภาษาอะไรไม่รู้
ใน phpadmain
ตั้งค่า MySQL connection collation เป็นutf8_unicode_ci
ลองเปลี่ยนเป็นutf8_general_ci และ tis620_bin ก็ยังไม่หาย
ลองใส่ tag html ตั้งให้มันเป็น utf8 ก็ไม่หาย
อ่านในเวบบอกให้ที่ไฟล์ connectdatabase แต่ไม่รู้จะแก้ตรงไหน รบกวนดูให้ทีคะ
Code
function osc_db_connect($server, $username, $password, $link = 'db_link') {
global $$link, $db_error;
$db_error = false;
if (!$server) {
$db_error = 'No Server selected.';
return false;
}
$$link = @mysql_connect($server, $username, $password) or $db_error = mysql_error();
return $$link;
}
function osc_db_select_db($database) {
return mysql_select_db($database);
}
function osc_db_query($query, $link = 'db_link') {
global $$link;
return mysql_query($query, $$link);
}
function osc_db_num_rows($db_query) {
return mysql_num_rows($db_query);
}
function osc_db_install($database, $sql_file) {
global $db_error;
$db_error = false;
if (!@osc_db_select_db($database)) {
if (@osc_db_query('create database ' . $database)) {
osc_db_select_db($database);
} else {
$db_error = mysql_error();
}
}
if (!$db_error) {
if (file_exists($sql_file)) {
$fd = fopen($sql_file, 'rb');
$restore_query = fread($fd, filesize($sql_file));
fclose($fd);
} else {
$db_error = 'SQL file does not exist: ' . $sql_file;
return false;
}
$sql_array = array();
$sql_length = strlen($restore_query);
$pos = strpos($restore_query, ';');
for ($i=$pos; $i<$sql_length; $i++) {
if ($restore_query[0] == '#') {
$restore_query = ltrim(substr($restore_query, strpos($restore_query, "\n")));
$sql_length = strlen($restore_query);
$i = strpos($restore_query, ';')-1;
continue;
}
if ($restore_query[($i+1)] == "\n") {
for ($j=($i+2); $j<$sql_length; $j++) {
if (trim($restore_query[$j]) != '') {
$next = substr($restore_query, $j, 6);
if ($next[0] == '#') {
// find out where the break position is so we can remove this line (#comment line)
for ($k=$j; $k<$sql_length; $k++) {
if ($restore_query[$k] == "\n") break;
}
$query = substr($restore_query, 0, $i+1);
$restore_query = substr($restore_query, $k);
// join the query before the comment appeared, with the rest of the dump
$restore_query = $query . $restore_query;
$sql_length = strlen($restore_query);
$i = strpos($restore_query, ';')-1;
continue 2;
}
break;
}
}
if ($next == '') { // get the last insert query
$next = 'insert';
}
if ( (eregi('create', $next)) || (eregi('insert', $next)) || (eregi('drop t', $next)) ) {
$next = '';
$sql_array[] = substr($restore_query, 0, $i);
$restore_query = ltrim(substr($restore_query, $i+1));
$sql_length = strlen($restore_query);
$i = strpos($restore_query, ';')-1;
}
}
}
osc_db_query("drop table if exists address_book, address_format, administrators, banners, banners_history, categories, categories_description, configuration, configuration_group, counter, counter_history, countries, currencies, customers, customers_basket, customers_basket_attributes, customers_info, languages, manufacturers, manufacturers_info, orders, orders_products, orders_status, orders_status_history, orders_products_attributes, orders_products_download, products, products_attributes, products_attributes_download, prodcts_description, products_options, products_options_values, products_options_values_to_products_options, products_to_categories, reviews, reviews_description, sessions, specials, tax_class, tax_rates, geo_zones, whos_online, zones, zones_to_geo_zones");
for ($i=0; $i<sizeof($sql_array); $i++) {
osc_db_query($sql_array[$i]);
}
} else {
return false;
}
}
?>
Tag : PHP, MySQL, HTML/CSS, JavaScript, jQuery, CakePHP
|
|
|
|
|
|
Date :
2011-08-22 15:12:48 |
By :
pp |
View :
8969 |
Reply :
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เปิดด้วย EditPlus
ใส่ <meta http-equiv="content-type" content="text/html; charset=utf-8">
mysql_query("set NAMES utf8");//เพิ่มเข้าไปตรง query
แล้ว save as ตรง encoding เลือกเป็น utf8
ถ้าใส่ <meta http-equiv="Content-Type" content="text/html; charset=windows-874">
mysql_query("set NAMES tis620");//เพิ่มเข้าไปตรง query
save as ตรง encoding เลือกเป็น ANSI
|
|
|
|
|
Date :
2011-08-22 15:25:41 |
By :
avsqlz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for Encoding UTF-8
|
|
|
|
|
Date :
2011-08-22 15:31:03 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือมันเป็นสคริปของต่างประเทศนะคะ จะเอามาโมเป้นไทย
แล้วไฟล์ทั้งหมดของเค้าเป็นแบบ ANSI ถ้าเปลี่ยนเป็น UTF มันจะขึ้น ERROR
ถ้าไฟล์เป็น ANSI อย่างนี้ เราก็ต้องใช้ tis-620 ใช่ไหมคะ
แล้วใน phpmyadmin MySQL connection collation ก็ต้องเลือกเป็น tis620_thai_ci
ถูกหรือเปล่า
แต่ ลองทำตามแล้วมันก็ยังอ่านไม่ออกอยู่ดีนะคะ ไม่รู้ทำอะไรผิดหรือเปล่า ต้องใส่
<meta http-equiv="Content-Type" content="text/html; charset=windows-874">
mysql_query("set NAMES tis620");
ไว้เฉพาะในไฟล์ ที่จะใช้ connect database ไฟล์เดียวใช่หรือเปล่าคะ
อันนี้ลองแก้แล้วได้ตามนี้แต่มันก็ยังไม่เป็นภาษาไทย
รบกวนดุให้ทีคะ
Code
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874">
</head>
<body>
<?php
/*
$Id: database.php 1739 2007-12-20 00:52:16Z hpdl $
osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
Copyright (c) 2007 osCommerce
Released under the GNU General Public License
*/
function osc_db_connect($server, $username, $password, $link = 'db_link') {
global $$link, $db_error;
$db_error = false;
if (!$server) {
$db_error = 'No Server selected.';
return false;
}
$$link = @mysql_connect($server, $username, $password) or $db_error = mysql_error();
return $$link;
}
function osc_db_select_db($database) {
return mysql_select_db($database);
}
function osc_db_query($query, $link = 'db_link') {
global $$link;
mysql_query("set NAMES tis620");
return mysql_query($query, $$link);
}
function osc_db_num_rows($db_query) {
return mysql_num_rows($db_query);
}
function osc_db_install($database, $sql_file) {
global $db_error;
$db_error = false;
if (!@osc_db_select_db($database)) {
if (@osc_db_query('create database ' . $database)) {
osc_db_select_db($database);
} else {
$db_error = mysql_error();
}
}
if (!$db_error) {
if (file_exists($sql_file)) {
$fd = fopen($sql_file, 'rb');
$restore_query = fread($fd, filesize($sql_file));
fclose($fd);
} else {
$db_error = 'SQL file does not exist: ' . $sql_file;
return false;
}
$sql_array = array();
$sql_length = strlen($restore_query);
$pos = strpos($restore_query, ';');
for ($i=$pos; $i<$sql_length; $i++) {
if ($restore_query[0] == '#') {
$restore_query = ltrim(substr($restore_query, strpos($restore_query, "\n")));
$sql_length = strlen($restore_query);
$i = strpos($restore_query, ';')-1;
continue;
}
if ($restore_query[($i+1)] == "\n") {
for ($j=($i+2); $j<$sql_length; $j++) {
if (trim($restore_query[$j]) != '') {
$next = substr($restore_query, $j, 6);
if ($next[0] == '#') {
// find out where the break position is so we can remove this line (#comment line)
for ($k=$j; $k<$sql_length; $k++) {
if ($restore_query[$k] == "\n") break;
}
$query = substr($restore_query, 0, $i+1);
$restore_query = substr($restore_query, $k);
// join the query before the comment appeared, with the rest of the dump
$restore_query = $query . $restore_query;
$sql_length = strlen($restore_query);
$i = strpos($restore_query, ';')-1;
continue 2;
}
break;
}
}
if ($next == '') { // get the last insert query
$next = 'insert';
}
if ( (eregi('create', $next)) || (eregi('insert', $next)) || (eregi('drop t', $next)) ) {
$next = '';
$sql_array[] = substr($restore_query, 0, $i);
$restore_query = ltrim(substr($restore_query, $i+1));
$sql_length = strlen($restore_query);
$i = strpos($restore_query, ';')-1;
}
}
}
osc_db_query("drop table if exists address_book, address_format, administrators, banners, banners_history, categories, categories_description, configuration, configuration_group, counter, counter_history, countries, currencies, customers, customers_basket, customers_basket_attributes, customers_info, languages, manufacturers, manufacturers_info, orders, orders_products, orders_status, orders_status_history, orders_products_attributes, orders_products_download, products, products_attributes, products_attributes_download, prodcts_description, products_options, products_options_values, products_options_values_to_products_options, products_to_categories, reviews, reviews_description, sessions, specials, tax_class, tax_rates, geo_zones, whos_online, zones, zones_to_geo_zones");
for ($i=0; $i<sizeof($sql_array); $i++) {
osc_db_query($sql_array[$i]);
}
} else {
return false;
}
}
?>
</body>
</html>
|
|
|
|
|
Date :
2011-08-22 16:54:14 |
By :
pp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|