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

Lỗi không phải đối tượng khi sử dụng PHP PDO với MySQL

Bạn không cần một đôi mắt mới

Bạn không phải là họa sĩ mà là một lập trình viên (được cho là).
Vì vậy, thay vì xem mã của bạn, bạn phải chạy nó. Và kích hoạt tính năng báo lỗi.

Ồ, vừa mới phát hiện ra nó
Và tất nhiên, bạn không nên gắn thẻ thông báo lỗi!

} catch(PDOException $ex) {
    return false;
}

phiên bản hiện đại của @ operator.
Vui lòng loại bỏ TẤT CẢ try..catch khối trong mã của bạn và chỉ bắt đầu sử dụng chúng sau khi tìm hiểu chúng để làm gì.

Vì vậy, để giải quyết vấn đề này cũng như nhiều vấn đề khác trong tương lai

  1. Loại bỏ tất cả các khối try..catch trong mã của bạn.
  2. Bật báo cáo lỗi cho PDO như được mô tả trong wiki thẻ mà tôi đã liên kết đến trong các nhận xét.
  3. Không sử dụng trình giữ chỗ cho các số nhận dạng nhưng định dạng chúng như được mô tả trong wiki về thẻ mà tôi đã liên kết tới
  4. Tắt display_errors nếu bạn không muốn lỗi hiển thị (lý do duy nhất để loại bỏ thông báo lỗi mà tôi có thể nghĩ ra).

Ngoài ra, bạn không nên mở kết nối riêng biệt trong mọi lệnh gọi hàm.
Tạo một kết nối ở đầu tập lệnh của bạn và sau đó sử dụng nếu trong hàm, sử dụng

global $h;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MYSQL Làm cách nào để thực hiện chênh lệch tháng tùy chỉnh giữa hai ngày trong MYSQL?

  2. Spring Boot + docker-compos + MySQL:Kết nối bị từ chối

  3. MYSQL có thể lọc theo ngày nếu ngày được lưu trữ dưới dạng văn bản không? ví dụ:02/10/1984

  4. Ràng buộc khóa ngoại không thành công

  5. Nâng cấp lên MySQLi - Dễ như hoán đổi mysql cho mysqli?