这是发送请求的真实方式吗?

时间:2013-08-24 10:50:16

标签: php javascript ajax jquery

我想知道这是否真实安全地通过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
}

1 个答案:

答案 0 :(得分:0)

基本上,每当您使用ajax发布到页面时,在浏览器中拥有开发者控制台的任何人都能够看到该请求。并根据自己的喜好改变它。就像他们可以通过使用像firebug这样的东西来改变data-bind属性。

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