我想使用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的过程文件中,我存储答案数据库,但我无法存储选中的每个annswer的选中值。
$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());救命啊!我怎样才能储存答案与支票,如果检查或不谢谢。
发布于 2015-06-09 02:27:52
非常感谢您的回放,但是问题是复选框是动态的,所选的值取决于用户!!我使用了表单serliaze通过ajax发送pot数据:复选框在表单中。
<form name="form" id="form" role="form" method="post" action="">
<<tr>
<td>Answer</td>
<td><input type="text" id="name" name="answer[]"></td>
<td>
<input type="checkbox" id="check" name="check[]" ></td>
<td><input type="button" value="Ajouter" " class="button"></td>
</tr>
</form>我如何选择选定的答案!如果答案是正确的,如果没有将0存储在数据库中的“正确”中,那么这个想法就太过存储了。
通过这种方式,我尝试通过AJAX处理数据。
$(function() {
$("#form").on("submit", function(event) {
event.preventDefault();
$.ajax({
url: "test.php",
type: "post",
data: $(this).serialize(),
success: function(d) {
alert(d);
}
});
});
});
});发布于 2015-06-11 18:40:27
实际上,非常简单,您必须记住,CheckBoxes只从html表单发送到脚本,如果实际选中了,则为,所以$_POST或$_GET数组中不存在未选中的复选框。
这不是一个看上去那么大的问题,您所需要做的就是检查是否存在一个复选框,如果它存在,那么就选中它。
所以在您的代码中,而不是这样做
$check = $_POST['check']; 做这个
$check = isset($_POST['check']) ? 1 : 0; 我将进一步展示将其存储在数据库中的代码,但是您的代码实际上并没有在任何地方使用$check变量。
发布于 2015-06-09 01:45:01
用ajax试试这个帖子
将id更改为类以便于选择
var selectedCB = new Array();
$('.cbcheck:checked').each(function() {
selectedCB.push(this.value);
});
$.ajax({
url: 'insert.php',
dataType: 'text',
type: 'post',
contentType: 'application/x-www-form-urlencoded',
data: {recordsval: selectedCB},
success: function( data){
$('#result').html(data);
},
error: function(errorThrown ){
console.log( errorThrown );
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="checkbox" class="cbcheck" name="check[]" value="1">
<input type="checkbox" class="cbcheck" name="check[]" value="0">
<input type="checkbox" class="cbcheck" name="check[]" value="1">
<input type="submit" value="submit">
<div id="result"></div>和php句柄
<?php
$data = $_POST['recordsval'];
var_dump($data);
?>用你的代码调整这个..。
https://stackoverflow.com/questions/30721615
复制相似问题