问题是,你正在使用bind_param
MySQL 上的函数而不是$stmt
多变的。
问题出在这一行:
$stmt = $mysqli -> prepare("INSERT INTO `user`(`id_user`, `login`,`password`,`email`,`added`,`ip`) VALUES('', ? , ? , ? , now(), ?)");
$stmt = $mysqli -> bind_param("ssss", $login, $password, $email, $ip);
而不是输入:
$stmt = $mysqli->bind_param("ssss", $login, $password, $email, $ip);
您应该输入:
$stmt = $stmt->bind_param("ssss", $login, $password, $email, $ip);
自从bind_param
方法仅适用于mysqli_stmt
班级。而不是mysqli
.
查看文档here.