//Successful connection to $db
function insert_users($db, $username, $password, $email)
{
echo "FUNCTION CALLED"; //This is outputted successfully
$query = "INSERT INTO `users` (`id`, `username`, `password`, `email`) VALUES ('', ?, ?, ?)";
$stmt = mysqli_stmt_init($db);
if(mysqli_stmt_prepare($stmt, $query))
{
echo "QUERY PREPARED"; // rest of code was snipped (will put up upon request)
} else {
echo "QUERY DENIED"; //This is outputted successfully
}
}
//The $user $pass and $mail are defined and then the function is called
insert_users($db, $user, $pass, $mail);
데이터베이스 구조 : MySQLi 절차 쿼리, 뭐가 잘못 되었나요?
testdb (database)
-> users (table)
-> id //Primary key, unique key
-> username //unique key
-> password
-> email
왜 쿼리가 함께 통과 넣은 사람은 아니다 작동입니까? "Query prepared"대신 "Query denied"를 표시합니다. 나는 믿을 수없는 쿼리입니다. 자세한 정보가 필요한 경우, 병이 질문에
내가 아무 일도 발생하지 않는 echo "QUERY DENIED";
후
mysqli_stmt_error($stmt);
을 추가
편집 ...
편집 2
를 편집 할 행복$server = 'localhost';
$user = 'root';
$password = '';
$databse = 'testdb';
$db = @mysqli_connect($server, $user, $password, $database) or die("Could not connect to Database server. Please inform an administrator");
그건 내 데이터베이스 설정이야. 변수를 따옴표로 묶어야합니까? id
는 AUTO_INCREMENT 컬럼 인 경우
을 제시해주십시오 ['mysqli_stmt_error'] (http://php.net/manual/en/mysqli-stmt.error.php), 실패합니다. –
빈 문자열을 기본 키 열에 삽입하려고합니다. 그것은 당신의 시나리오에서 합법적입니까? PK 자동 증가입니까? –
@Olaf Dietsche 좋아, 할 것이다 : – Wulf