所以我想制作一个"搜索引擎"对于我的数据库。 我的javascript是:
enterHours();
我的html如下:
$(document).ready(function(){
window.enterHours = function () {
document.getElementById("hours").innerHTML = "This is a test";
}
}
现在我有了我的php
$(document).ready(function () {
$("#display").click(function () {
var zoeknaam = $("#zoeknaam").val();
var zoektype = $("#zoektype").text();
$.ajax({ //create an ajax request to load_page.php
type: "POST",
url: "display.php",
data: { name: zoeknaam, zoekt: "name" },
dataType: "html", //expect html to be returned
success: function (response) {
$("#responsecontainer").html(response);
//alert(response);
}
});
});
});
当我删除where条件并将条件设置为name时,它可以工作。现在,当我用帖子和参数检索它时,它不起作用。 connection.php是正确的,因为它适用于条件。
答案 0 :(得分:2)
这是错误的:
... WHERE :waar=:postname
您只能在预准备语句中使用占位符绑定值,而不能使用列名或表名绑定值。
如果您想接受并使用客户提供的列名或表名,唯一可以确保这一点的方法是检查白名单,然后将它们直接注入查询字符串。