【发布时间】:2014-02-11 03:34:08
【问题描述】:
我确实有一个从 MySQL 表值动态生成的表。每个列出的记录都有一个复选框。
list.php
$query="SELECT * FROM drivers ORDER BY name";
$query=$mysqli->query($query);
$queryN=mysqli_num_rows($query);
if($queryN!=0){
while($row=mysqli_fetch_assoc($query)){
$id=$row['id'];
$name=$row['name'];
$output .='<tr id="'.$id.'">
<td>'.$name.'</td>
<td><input type="checkbox" name="assign" class="assigned" value='.$id.'"/></td>
</tr>';
}
}else{
$output .='<tr>
<td colspan="2">No data found</td>
</tr>';
}
HTML 文件
<input type="button" name="send" id="send" value="Send" />
现在 JQuery 脚本将只发送表格中选中复选框的值:
<script>
$(document).ready(function(){
$('.send').click(function(){
var checkValues = $('input[name=assign]:checked').map(function()
{
return $(this).val();
}).get();
$.ajax({
url: 'assigndriver.php',
type: 'post',
data: { ids: checkValues },
success:function(data){
}
});
});
});
</script>
最后,PHP 文件 assigndriver.php 将插入带有仅选中复选框的值的数组:
include "../connect_to_mysql.php";
$id = array();
if(isset($_POST['ids'])){
$id = $_POST['ids'];
for ($i = 0; $i < count($id); $i++) {
$id_new = $id[$i];
$sql="INSERT INTO teste (campo) VALUES ('$id_new')";
}
}
好吧,我想知道为什么它不工作,如果以这种方式复选框的正确值,那一定是变量 $id 被正确发布到 PHP 文件。
谢谢
【问题讨论】: