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

PHP - Lỗi nghiêm trọng:Gọi đến một hàm thành viên bind_param ()

TL \ DR

Truy vấn của bạn không thành công prepare() . Bạn cần phải tìm ra ở đâu, như thế nào và tại sao. Hãy xem khối mã cuối cùng của câu trả lời này và cho chúng tôi biết lỗi là gì.

Tôi sẽ bắt đầu với truy vấn. Bạn đang cố gắng truy cập một từ dành riêng cho MySQL. Bạn cần bọc những thứ đó trong các que tính ngược như thế này:

$add = "INSERT INTO books (title, edited, created, ip,".
    " email_to, twitter, last_taken, questions_total, responses, ".
    "show_progress, need_correct, go_back, state, send_stats, ".
    "show_number, imported) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ".
    "?, ?, ?, ?, ?, ?, ?)";

Bây giờ, bạn đang khởi tạo biến $stmt trong if chặn nhưng sau đó cố gắng liên kết nó bên ngoài khối đó. Bạn sẽ cần thay đổi điều này:

if ($stmt = $mysqli->prepare($add)) {
....
}
$stmt->bind_param(....);

Về điều này:

if ($stmt = $mysqli->prepare($add)) {
....
$stmt->bind_param(....);
}

Ngoài ra, hãy đảm bảo rằng truy vấn của bạn đang thực sự chuẩn bị chính xác:

if ($stmt = $mysqli->prepare($add)) {

    $stmt->bind_param("siisssiiiiiiiiii", $title, $edited, $created, $ip, $email_to, $twitter, $last_taken, $questions_total, $responses, $show_progress, $need_correct, $go_back, $state, $send_stats, $show_number, $importedVal);

    // execute it and all...
} else {
    die("Errormessage: ". $mysqli->error);
}

Sau đó, hãy cho chúng tôi biết kết quả.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để cài đặt mysql im lặng trong thiết lập đổi mới?

  2. Cách cải thiện hiệu suất INSERT trên một bảng MySQL rất lớn

  3. Tomcat6 không thể kết nối với MySql (Trình điều khiển chưa nhận được bất kỳ gói nào từ máy chủ)

  4. Hàng ngẫu nhiên từ kết quả truy vấn lớn

  5. Cách thêm hàng mới vào jTable từ cơ sở dữ liệu trong khi nhấp vào nút mà không xóa các hàng hiện có