Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Nhận các ký tự lạ khi tìm nạp giá trị trong cơ sở dữ liệu mysql

Tôi nhận thấy rằng bạn đang chạy truy vấn này ... mysql_query('SET CHARACTER SET utf8');
Hãy thử thay đổi điều đó thành điều này ...

mysql_query("SET NAMES 'utf8'");

Điều đó sẽ đảm bảo rằng kết nối là UTF-8.

Cũng thử xem qua danh sách các mục trong bài viết này ... http:/ /blog.loftdigital.com/blog/php-utf-8-cheatsheet
Phần này liệt kê các bước cần thiết để đảm bảo rằng bạn đang sử dụng UTF-8 từ trước ra sau trong trang web / ứng dụng của mình nhưng tóm lại:

  • Kiểm tra xem bạn có phần mở rộng mbstring của PHP và bạn có mb_internal_encoding('UTF-8'); đặt trong tập lệnh của bạn.
  • Đảm bảo rằng bạn đang chạy truy vấn MySQL này sau khi kết nối với cơ sở dữ liệu của bạn mysql_query("SET NAMES 'utf8'"); đảm bảo kết nối là UTF-8.
  • Đặt tiêu đề HTTP cho đầu ra của bạn ... header('Content-type: text/html; charset=UTF-8'); . Điều này dường như không cần thiết nếu bạn đã đặt mb_internal_encoding() ở trên nhưng hữu ích để gỡ lỗi
  • Đảm bảo mã hoá đầu ra của trang HTML của bạn được đặt ... <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hibernate:tự tham gia nhầm lẫn?

  2. Các truy vấn cập nhật mysql có được hưởng lợi từ một chỉ mục không?

  3. điều kiện cuộc đua chèn mysql

  4. Cài đặt mysql trên leopard:Không thể kết nối với máy chủ MySQL cục bộ thông qua socket

  5. Cách lưu trữ ảnh trong cơ sở dữ liệu MySQL