Проблемът е, че използвате 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
.
Разгледайте документацията тук .