Quan trọng: Trang này bằng cách sử dụng cookie (cookies). Sử dụng trang web này mà không tắt cookie trong trình duyệt, có nghĩa là bạn đồng ý để sử dụng nó.
Mua ngay! Các tính năng Tải

Kiếm được với chúng tôi!

Nếu bạn muốn bắt đầu kiếm tiền với vBET tham gia để Chương trình liên kết.
Trang 2 của 2 FirstĐầu tiên 12
Kết quả 11 để 15 của 15

Chủ đề: Dấu không hiển thị chính xác ...

  1. #11
    Thành viên
    Tham gia ngày
    Tháng 2 năm 2011
    Bài viết
    9

    Default

    Quote Nguyên văn bởi kamilkurczak View Post
    Vâng. Tôi có thể xác nhận nó trên diễn đàn thử nghiệm của tôi!
    Đây là một lỗi vBET vì vậy tôi cần di chuyển chủ đề này vào phần báo cáo lỗi.

    Tôi nhận thấy rằng có một vấn đề mã hóa với các chữ cái với mã ASCII theo một

    Tôi có thể tái tạo nó trên diễn đàn thử nghiệm của tôi để tôi có thể sửa chữa nó mà không cần truy cập vào diễn đàn của bạn

    Tôi sẽ cố gắng tìm ra giải pháp tốt nhất cho bạn.
    Vâng tin tốt là tôi cố định các vấn đề bản thân mình. Tin xấu là tôi không thể xác nhận rằng giải pháp này sẽ làm việc như một chức năng thay thế ... vì nó chỉ hoạt động trên các diễn đàn của tôi.

    Bất kể, đây là chức năng mới:

    PHP Code:
    function vbet_encodeToSafeUTF8(&$string) {

         
    $string utf8_decode($string);           
         return 
    $string;

    Chức năng này chuyển đổi UTF-8 ISO-8859-1

  2. #12
    vBulletin Enterprise Translator (vBET) Nhân viên
    Tham gia ngày
    Tháng 5 năm 2010
    Bài viết
    1,000

    Default

    nhờ tin tốt này. Tôi sẽ kiểm tra và xác nhận

  3. #13
    vBulletin Enterprise Translator (vBET) Nhân viên
    Tham gia ngày
    Tháng 5 năm 2010
    Bài viết
    1,000

    Default

    hello,
    Giải pháp của bạn là không tốt nói chung. Tại sao? Điều này đang làm việc với các chữ cái với mã ASCII dưới 256 (chuyển đổi và hiển thị tốt) nhưng thư với mã ASCII hơn 256 tôi có "?" dấu hiệu.

    Vì vậy, Chúng tôi cần phải kết hợp hai giải pháp của chúng tôi trong một

    Ví dụ:
    PHP Code:
    function vbet_encodeToSafeUTF8(&$string) {
            
            
    $string preg_replace('/([\340-\357])([\200-\277])([\200-\277])/e',        
                    
    '\'&#\'.((ord(\'\\1\')-224)*4096 + (ord(\'\\2\')-128)*64 + (ord(\'\\3\')-128)).\';\'',    
                    
    $string); 
         
            
    //decode two byte unicode characters 
            
    $string preg_replace('/([\304-\337])([\200-\277])/e'
                    
    '\'&#\'.((ord(\'\\1\')-192)*64+(ord(\'\\2\')-128)).\';\''
                    
    $string); 
            
            
    $string utf8_decode($string);            
            
            return 
    $string;
        } 
    dòng này:
    PHP Code:
    [\304-\337
    xác định hơn so với các chữ cái với mã ASCII dưới 256 sẽ không được giải mã bởi chức năng của tôi nhưng chỉ bằng cách
    PHP Code:
    utf8_decode 
    Tôi đang thử nghiệm nó still.I không hoàn toàn chắc chắn rằng tất cả mọi thứ hoạt động chính xác.
    Bạn có thể kiểm tra nó quá!

  4. #14
    Thành viên
    Tham gia ngày
    Tháng 2 năm 2011
    Bài viết
    9

    Default

    Đối với mục đích của tôi, giải pháp hoạt động tốt ... như tôi là chỉ dịch hai langauges ... Tiếng Anh và tiếng Pháp. Cả hai đều là ISO-8859-1 (latin1) ngôn ngữ. Do đó, chức năng "utf_decode" hoạt động tốt.

    Tuy nhiên, với một phạm vi toàn cầu trong, chức năng utf_decode có thể sẽ không làm việc cho các ngôn ngữ khác ngoài "latin1".

    Tôi không có nhiều của một lập trình vbulletin. Tuy nhiên, tôi sẽ cung cấp một gợi ý:

    Có lẽ bằng cách sử dụng một "Nếu" tuyên bố có thể phù hợp với mục đích của bạn tốt hơn nếu giải pháp của bạn không làm việc. Trong ví dụ dưới đây, "translated_language_var" sẽ là ngôn ngữ đích để dịch vào.

    IE:
    PHP Code:
    $latin1 = array(English,French,Spanish,Italian....etc);

    if (
    in_array(translated_language_var,$latin1)){

      
    $string utf_decode($string);

    }else{
      
      
    original solution;
    }

    return 
    $string
    Có lẽ bằng cách sử dụng một cái gì đó như thế này sẽ là một phương pháp chắc chắn để giữ tất cả mọi thứ an toàn ...??? Tôi chắc chắn rằng bạn có thể dễ dàng sử dụng mã giả và làm cho nó làm việc cho vbulletin.
    Lần sửa cuối bởi freddie3218; 14-03-11 khi 05:12.

  5. #15
    vBulletin Enterprise Translator (vBET) Nhân viên
    Tham gia ngày
    Tháng 5 năm 2010
    Bài viết
    1,000

    Default

    giải quyết - sẽ được bao gồm trong relase tiếp theo

Trang 2 của 2 FirstĐầu tiên 12

Tags cho chủ đề này

Quyền viết bài

  • Bạn có thể không gửi chủ đề mới
  • Bạn có thể không gửi trả lời
  • Bạn có thể không gửi file đính kèm
  • Bạn có thể không chỉnh sửa bài viết của bạn
  •