SQL注入是否可以在输入表单之外发生?

时间:2017-11-19 12:19:12

标签: javascript php

我习惯听到当有输入字段对数据库进行查询时会发生SQL注入。

我在index.html的CSS菜单中有很多可点击的按钮,点击它时会执行AJAX:



<script>function bRowse(value) {
xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET","product.php?q="+value,true);
xmlhttp.send();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {document.getElementById("div2").innerHTML = xmlhttp.responseText;}}}</script>
&#13;
&#13;
&#13;

JS将通过&#39; q&#39;这是执行sql的PHP页面的每个按钮的值:

$sql = "SELECT item, price FROM product WHERE item='".$_GET['q']."';

这个AJAX工作得很好。我的问题是:

1)这是没有输入字段的按钮,在这种情况下是否仍然可以进行SQL注入?

非常感谢一些专家意见,谢谢。

1 个答案:

答案 0 :(得分:3)

是的,这仍然可能发生。我可以使用curlPostman之类的工具执行您的终端,并发送我想要的任何值。