当前位置: 首页 > 知识库问答 >
问题:

(PHP)致命错误:调用成员函数bind_param()[重复]

黎同
2023-03-14

出于某种原因,我得到了。

致命错误:在第19行的D:\xampp\htdocs\tutioncenter\stud-editprofile_process.php中对布尔值调用成员函数bind_param()

我在另一个进程上使用了相同的函数,效果很好。我对编程很陌生,有人能帮我吗?

提前谢谢你!

<?php
session_start();
    $type = $_SESSION['sess_usertype'];
    if(!isset($_SESSION['sess_user_id']) || $type!="1"){
  header('Location: login.php?err=2');
   }
  include('db.php');

$data = $conn->prepare("UPDATE student INNER JOIN user ON student.student_nric=user.user_nric SET user_password = ?,
   student_name = ?, 
   student_address = ?,
   student_contactNo = ?,   
   student_fatherName = ?,
   student_fatherContactNo = ?
   student_motherName = ?,
   student_motherContactNo = ?
   WHERE student_nric = {$_SESSION['sess_user_id']}");

$data->bind_param('ssssssss',
   $_POST['user_password'],
   $_POST['student_name'],  
   $_POST['student_address'],
   $_POST['student_contactNo'],
   $_POST['student_fatherName'],
   $_POST['student_fatherContactNo'],
   $_POST['student_motherName'],
   $_POST['student_motherContactNo']);


$data->execute(); 
$data->close();
header("Location: stud-dashboard.php");
?>

共有1个答案

艾意蕴
2023-03-14

根据MySQLi文档页面http://php.net/manual/en/mysqli.prepare.php 它指出:

mysqli_prepare()返回语句对象,如果发生错误,则返回FALSE。

您的错误表示您正试图在布尔值上调用函数bind_param()(FALSE),因此您的错误表明prepare调用中存在错误。

我认为这是由于学生\父亲联系人no=?后缺少逗号造成的。

 类似资料: