【发布时间】:2015-01-21 16:15:13
【问题描述】:
我想从我的 url 中获取值并将其存储在一个变量中,以便在我的 sql 查询中将其用作 where 语句。我的 admin_id 很好,但 $x 不起作用。
这是我得到的。
网址http://localhost/ict138final/admin/Aviewrecords.php?edit=2
查询
$id=$_POST['admin_id'];
$x=$_POST['edit'];
$query=mysql_query("DELETE FROM passed_deliverable WHERE deliverable_id={$id} && user_id={$x} ");
function Delete() {
window.location.reload();
lol = $('#wee').text();
var bayotmarkyu = "<?php echo $_GET['edit']; ?>";
$.ajax({
type:'POST',
url:'Adeletedeliverable.php',
data: {admin_id:lol,edit:bayotmarkyu},
success: function(data) {
}
});
}
【问题讨论】:
-
{$id}...{x}- 一个标识符有 $ ,另一个没有.... GET!=POST -
如果你想要GET,那你为什么要使用POST?无论如何,您还应该在查询中使用用户输入之前对其进行过滤、检查、清理。
-
可能有点离题,但您只是要求被黑客入侵。您应该过滤用户输入并使用准备好的语句。此外,不推荐使用 mysql,因此请改用 PDO。
-
$("[name='admin_id']").val("'DROP TABLE passed_deliverable");在您的代码中可能有点危险。请使用更安全的 mysql_* 原型,例如 mysqli 或 PDO,您的代码实际上暴露于 sql 注入跨度> -
我使用 GET 因为值来自我的 URL,我使用 POST 因为另一个值来自表格行。 @VolkerK
标签: javascript php jquery mysql sql