gpt4 book ai didi

php - 使用 AJAX 将复选框值(如果未选中则为 0)传递给 PHP

转载 作者:行者123 更新时间:2023-11-29 12:10:52 25 4
gpt4 key购买 nike

我想使用 php 复选框将“0”或“1”插入 mysql 数据库,但值无法存储到数据库中!我试图插入这样的复选框数组:

1:已选择

0:未选择

[answer] => Array
(
[0] => answer 1
[1] => answer 2
[2] => answer 3
)

[check] => Array
(
[0] => 1
[1] => 0
[2] => 1
)

php 文件:

<td> <!-- <input type="hidden"  name="check[]" value="0" >-->
<input type="checkbox" id="check" name="check[]" value="1">
</td>

在通过 AJAX 的流程文件中,我存储答案数据库,但无法存储所选每个答案的检查值

$query = mysql_query("INSERT INTO questions 
(nom_question,id_categorie)
VALUES('$question','$categorie')", $conn)
or die(mysql_error());

//last insert id question
$last_id = mysql_insert_id();

$check = $_POST['check'];

foreach ($reponse as $key=>$value ) {
$values = mysql_real_escape_string($value);
$x='1';
$query = mysql_query("INSERT INTO reponses
(nom_reponse,id_question,id_categorie,correct)
VALUES ('$values',
'$last_id',
'$categorie',
'$x')")
or die(mysql_error());

请帮忙!如果检查与否,我如何存储答案,谢谢。

最佳答案

这真的很简单,你必须记住,复选框只会从 html 表单发送到脚本,如果它们实际上被选中,所以未选中的复选框不存在于 $_POST 或 $ 中_GET 数组。

这并不像看起来那么大问题,您所需要做的就是检查复选框是否存在,如果存在则检查它。

所以在你的代码中而不是这样做

$check =  $_POST['check']; 

这样做

$check =  isset($_POST['check']) ? 1 : 0; 

我会进一步展示将其存储在数据库中的代码,但您的代码实际上并未在任何地方使用 $check 变量。

关于php - 使用 AJAX 将复选框值(如果未选中则为 0)传递给 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30721615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com