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

Cảnh báo:mysqli_error () mong đợi chính xác 1 tham số, 0 đã cho

Tôi nghĩ rằng vấn đề bạn đang gặp phải là do bạn đang kết hợp các lệnh gọi hướng đối tượng và không phải OO vào thư viện MySQLi.

mysqli_error() hàm thực sự yêu cầu một tham số - nó yêu cầu biến kết nối; trong trường hợp của bạn, $conn .

mysqli_error($conn)

Xin chào, nếu bạn viết nó theo cách OO, như bạn đã làm cho hầu hết các lệnh gọi cơ sở dữ liệu còn lại, bạn sẽ viết nó như thế này:

$conn->error

Vì tất cả phần còn lại của mã của bạn được viết bằng cách sử dụng lệnh gọi hướng đối tượng, nên bạn cũng nên sử dụng nó cho lệnh gọi này.

Vì vậy, dòng mã đầy đủ của bạn sẽ giống như sau:

$result = $conn->query($sql) or die($conn->error);

Bạn có thể xem thêm các ví dụ trong hướng dẫn sử dụng PHP: http://php.net/manual /en/mysqli.error.php

Hy vọng điều đó sẽ hữu ích.

Đối với câu hỏi của bạn về cuốn sách bạn đang sử dụng:Tôi không thể bình luận trực tiếp về cuốn sách vì tôi chưa đọc nó. Nhưng lưu ý rằng có hai thư viện MySQL cho PHP; mysql cũ hơn thư viện và mysqli mới hơn thư viện. Thư viện cũ hơn cũng có mysql_error() , khác với hàm mới hơn ở chỗ nó không yêu cầu biến kết nối. Nếu có lỗi trong cuốn sách bạn đang sử dụng, đây có thể là nguồn gốc của sự nhầm lẫn.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự cố Python:Không thể tìm thấy vcvarsall.bat

  2. Cách nhanh nhất để kết xuất đối tượng từ điển Python (dict) vào một bảng MySQL?

  3. Chuyển đổi đầu ra của truy vấn MySQL thành utf8

  4. Chèn nhiều đối tượng từ điển vào cơ sở dữ liệu MySQL bằng python và MySQLdb

  5. Tại sao MYSQL cao hơn LIMIT bù đắp làm chậm truy vấn?