使用AJAX发送整数值

时间:2012-01-10 20:46:52

标签: javascript ajax jquery

我不太了解javascript。我有一个LIKE按钮。

<a href="" onClick="begen(<?php echo $post->ID; ?>); return false;">LIKE</a>

function begen(id)
{
    $.ajax({
        type:"POST",
        url:"begen.php",
        data:"id="+id,
        cache:false
    });
}

begen()将帖子的id发送到begen.php作为POST标头。

我正在begen.php中使用is_integer()进行检查以确保安全性

if(!is_integer($_POST["id"]))
    die("It's not an integer");

当我测试它时,begen(3)返回“它不是整数”。我不确定为什么它(3)不是整数。


http://forum.jquery.com/topic/ajax-sending-json-data-with-boolean-value#14737000000976384

HTTP is a text protocol with no concept of bools or ints, so everything needs to be stringified. The stringification of false is certainly not 0.

如果一切都是字符串,我怎么能确定id真的是 id

1 个答案:

答案 0 :(得分:2)

所有GETPOST参数都以字符串的形式提供给您的脚本。你在寻找is_numeric吗?


下次在发布此处之前阅读文档。

  • is_integer的手册页说:

      

    此功能是别名:is_int()

  • is_int的手册页说:

      

    要测试变量是数字还是数字字符串(例如表单输入,始终是字符串),您必须使用is_numeric()