PHP Fatal Error: Column 'avatar' cannot be null
PHP Fatal Error: Column 'avatar' cannot be null
我正在尝试开发一个注册系统(我正在开发这个网站-> bottlesbeach.eu 只是为了训练我在后端部分的实践知识)插入用户名、电子邮件、密码、会话字符串并采取来自头像数组的随机字符串,表示用户头像的名称:
$avatars = array("avatar0.png", "avatar1.png", "avatar2.png", "avatar3.png", "avatar4.png");
$k = array_rand($avatars);
$v = $array[$k];
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$query = "INSERT INTO users SET username = ?, email = ?, avatar = ?, password = ?, sessionid = ?";
$stmt = $conn->prepare($query);
$stmt->bind_param('sssss', $username, $email, $v, $password, $randomString);
$stmt->execute();
$sub = true;
这是提交表单时抛出的错误:
第 'avatar' 列不能为空
我不知道为什么会收到此错误,也许“$ v”变量为空,但我不知道为什么会这样。
有人知道在我的案例中是什么导致了这个异常?我该如何解决?
根据你的错误我可以推断出一些事情:
table 中的 avatar
列是使用 NOT NULL
选项声明的。它不会接受 NULL 作为输入。
你的$v
PHP变量没有设置,或者已经设置为PHP null value。我建议你使用 error_log(print_r($v, true));
来检查这个。
要解决这个问题,您必须将 $v
设置为一个不是 null
的值,或者更改 table 以将 avatar
列更改为允许 NULL .
我正在尝试开发一个注册系统(我正在开发这个网站-> bottlesbeach.eu 只是为了训练我在后端部分的实践知识)插入用户名、电子邮件、密码、会话字符串并采取来自头像数组的随机字符串,表示用户头像的名称:
$avatars = array("avatar0.png", "avatar1.png", "avatar2.png", "avatar3.png", "avatar4.png");
$k = array_rand($avatars);
$v = $array[$k];
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$query = "INSERT INTO users SET username = ?, email = ?, avatar = ?, password = ?, sessionid = ?";
$stmt = $conn->prepare($query);
$stmt->bind_param('sssss', $username, $email, $v, $password, $randomString);
$stmt->execute();
$sub = true;
这是提交表单时抛出的错误:
第 'avatar' 列不能为空
我不知道为什么会收到此错误,也许“$ v”变量为空,但我不知道为什么会这样。
有人知道在我的案例中是什么导致了这个异常?我该如何解决?
根据你的错误我可以推断出一些事情:
table 中的
avatar
列是使用NOT NULL
选项声明的。它不会接受 NULL 作为输入。你的
$v
PHP变量没有设置,或者已经设置为PHP null value。我建议你使用error_log(print_r($v, true));
来检查这个。
要解决这个问题,您必须将 $v
设置为一个不是 null
的值,或者更改 table 以将 avatar
列更改为允许 NULL .