30/09/2018, 23:17

Lỗi font khi php view dữ liệu từ ms access

Mình gặp vấn đề lỗi fonts khi load dữ liệu từ ms access trong php như sau:

  1. Với dữ liệu nhập vào ms access từ form php thì khi view ok
  2. Với dữ liệu nhập từ form access thì khi load lên php bị lỗi font

Có chuyên gia nào biết không? xin thỉnh giáo!!!

ps: Tất cả hai trường hợp mình điều sử dụng font unicode

Đinh Quốc Hân viết 01:18 ngày 01/10/2018

Bạn đã set UTF-8 của CSDL trong PHP chưa, mà PHP thường thì dùng MySQL cho tiện dùng MSA chi cho cực, làm với MSA thì kết hợp với ASP phù hợp hơn.

Thuc Nguyen Tan viết 01:23 ngày 01/10/2018

rồi bạn load lên php ok luôn.
Mình chỉ làm trong mạng nội bộ, các máy khác sẽ nhập liệu qua web, mình sử dụng form của ms access để xử lý,
Mình làm form access bởi vì thiết kế nhanh lắm cỡ một ngày là được một đống form, nếu mà load không bị lỗi font thì rất rất tiện bạn ạ.

Đinh Quốc Hân viết 01:17 ngày 01/10/2018

Nếu vậy phải xem nguyên nhân lỗi ở đâu do MSA hay PHP, dùng PHP query dữ liệu đã nhập xem có lỗi font không từ đó xác định nguyên nhân từ đâu.

Thuc Nguyen Tan viết 01:33 ngày 01/10/2018

Với dữ liệu nhập vào ms access từ form php thì khi view ok

Với dữ liệu nhập vào ms access từ form php thì khi view ok

Đinh Quốc Hân viết 01:27 ngày 01/10/2018

Nguyên nhân nằm ở MSA rồi cái này xem cái encode gì ấy tớ cũng không nhớ chịu.

Thuc Nguyen Tan viết 01:32 ngày 01/10/2018

Đúng liên quan đến cái encode của access đấy bạn, nhưng làm sao để khắc phục.
hix đôi khi cũng phải dùng cái mì ăn liền access

Đinh Quốc Hân viết 01:28 ngày 01/10/2018

Trường hợp này nên chuyển sang PHP hết cho đồng bộ cực ban đầu thiết kế form hoặc quản lý nhưng sẽ nhẹ nhàng sau này.

Thuc Nguyen Tan viết 01:24 ngày 01/10/2018

Đang cần mì ăn liền bạn ơi, xài cái php lâu quá, mỗi bảng một model, form, js… không kịp, mình cho nó chạy trước ổn định csdl xem relation ship có ok không rồi làm cái form php cũng không muộn.

Thuc Nguyen Tan viết 01:26 ngày 01/10/2018

Trong asp xa xưa nó xài <%@ CODEPAGE = 65001 %>

còn trong php thì làm sao hở các bạn.

Thuc Nguyen Tan viết 01:24 ngày 01/10/2018

hix, Hình như cái việc mình muốn làm thì chả ai làm cả!!!

Đinh Quốc Hân viết 01:28 ngày 01/10/2018

trong PHP thường thì dùng

*_set_charset($chart_set, $connector)

trong đó * là Driver: mysql, mssql, …

Đinh Quốc Hân viết 01:31 ngày 01/10/2018

Đúng là bạn làm cái này hơi lạ

Thuc Nguyen Tan viết 01:22 ngày 01/10/2018

http://www.techonthenet.com/access/functions/string/strconv.php

cái link trên nói

xài cái hàm trong access

StrConv ( text, conversion, LCID )

StrConv (“text to unicode”, 64)

vbUpperCase 1 Converts the string to all uppercase.
vbLowerCase 2 Converts the string to all lowercase.
vbProperCase 3 Converts the first letter to every word to uppercase. All other characters are left as lowercase. This option is similar to the InitCap function in Oracle.
vbUnicode 64 Converts the string to Unicode.
vbFromUnicode 128 Converts the string from Unicode to the default code page of the system.

nhưng thật là chuối bởi vì mình đang muốn lừa gió bẻ măng mà lị…

Thuc Nguyen Tan viết 01:31 ngày 01/10/2018

Làm cái form access mất chưa hết 1/2 giờ làm cái fomr bằng php gặp cái master detail hết 1 tuần chưa xong!!!

Thuc Nguyen Tan viết 01:27 ngày 01/10/2018
<?php
function convertToUTF8($str) {
    $enc = mb_detect_encoding($str);

    if ($enc && $enc != 'UTF-8') {
        return iconv($enc, 'UTF-8', $str);
    } else {
        return $str;
    }
}
?>

ok tìm được em này rồi
tức là nếu gặp em nào là utf-8 thì không xử lý còn em nào không là utf-8 thì xử…

Bài liên quan
0