0

我想知道这是否是通过 ajax json 类型将请求发送到 php 文件的真实且安全的方式?!

注意:它返回成功结果..

但我的问题是让它们保持这样还是将其更改为另一种安全方法?!

html代码

<span class="clickable" data-bind={"name":"master","tag":"1"}>click</span>

Javascript代码:

$(".clickable").livequery('click touchstart', function (e)
{
    var bind = $(this).data("bind");

    $.ajax({
        type: "POST",
        url: "page.php",
        data: bind,
        dataType: 'json',
        success: function (response)
        {
             alert(response)
        }
    });
    e.stopImmediatePropagation();
});

PHP 文件:

$name= mysql_real_escape_string(trim(htmlentities(strip_tags($_POST['name'])))); 
if(!isset($name) ||  $name == '' ||  $name != 'master') {
  echo 'Error: Invalid Action';
  exit;
}else{ 
 // Do Something
}
4

1 回答 1

0

基本上,每当您使用 ajax 发布到页面时,任何在其浏览器中拥有开发者控制台的人都能够看到该请求。并随心所欲地改变它。就像他们可以data-bind通过使用萤火虫之类的东西来改变属性一样。

您应该对 page.php 中的 POST 变量进行检查,以确保输入不是您想要插入到 PHP 代码中的内容。

于 2013-08-24T11:02:07.857 回答