Javascript 通过AJAX将复选框id发布到php
我想使用复选框创建网络图。如果我选中一个或多个复选框,然后单击按钮,我想从选中的复选框中绘制网络图。它实际上可以工作,但如果我选择多个节点,它只打印一个节点,但如果我只选择一个,它工作得很好。我怎样才能解决这个问题 index.phpJavascript 通过AJAX将复选框id发布到php,javascript,php,ajax,checkbox,Javascript,Php,Ajax,Checkbox,我想使用复选框创建网络图。如果我选中一个或多个复选框,然后单击按钮,我想从选中的复选框中绘制网络图。它实际上可以工作,但如果我选择多个节点,它只打印一个节点,但如果我只选择一个,它工作得很好。我怎样才能解决这个问题 index.php 使用下面的查询,需要在mysql的参数中使用 $sql2=$conn->prepare("SELECT id, data FROM table1 WHERE id IN (".$_POST['insert'].") GROUP BY id"); 尝试更改W
使用下面的查询,需要在mysql的参数中使用
$sql2=$conn->prepare("SELECT id, data FROM table1 WHERE id IN (".$_POST['insert'].") GROUP BY id");
尝试更改
WHERE id=代码>用于中的id(?)
否!不要用这个!这是一个安全漏洞。你正在准备一份声明。执行语句时传递$\u POST
值。这个变量没有任何验证,所以在那里!这非常适合SQL注入。它真正的$\u POST从未直接使用过,但问题是SQL函数只需要在函数中使用,而不是等于。如果我发送一篇带有“”;drop table table1;-->
”的帖子,它将在里面插入SQL代码。这是一个巨大的srcurity漏洞!
if(isset($_POST["insert"])){
$sql2=$conn->prepare("SELECT id, data
FROM table1
WHERE id=?
GROUP BY id");
$sql2 -> bind_param('i', $_POST['insert']);
$sql2 -> execute();
$result2 = $sql2 -> get_result();
$sql2 -> close();
while($row = mysqli_fetch_assoc($result2)){
$id2 = $row['id'];
$data = $row['data'];
$arr[] = array("id" => $id2,
"label" => $data);
}
}
$sql2=$conn->prepare("SELECT id, data FROM table1 WHERE id IN (".$_POST['insert'].") GROUP BY id");