我不能在 php prepare 语句中插入超过 7 列

问题描述

这段代码很完美,但是当我添加一个或多个列时 prepare 返回 null 并且无法插入到数据库

public function createTeacher($teacher_id,$fname,$mname,$lname,$mobile_number,$email,$CGPA,$password,$qualification,$gender)
{
    if($this->isTeacherExist($teacher_id,$email))
    {
        return 0;
    }
    else
    {
        $password=md5($password); 
        $stmt =$this->con->prepare( "INSERT INTO `tbl_teacher_registration` (`teacher_id`,`fname`,`mname`,`lname`,`mobile_number`,`email`,`password` )VALUES (?,?,?);");
        if($stmt===false)
        {
            die('prepare() Failed: '.htmlspecialchars($this->con->error));
        }
        else
        {
            $stmt->bind_param("ssssiss",$teacher_id,$password );
        }
        if($stmt->execute())
        {
            $stmt->close();
            return 1;
        }
        else
        { 
            return 2;
        }
    }
} 
          

我花了一天时间寻找解决方案欢迎任何答案 感谢您的帮助!除了添加新列之外,一切正常,我希望以相同的方式获得新的列限定

解决方法

再添加 1 个?作为其中的值,或者如果 id no 是自动的,则将其从插入语句中删除