正在验证从客户端php返回的id

正在验证从客户端php返回的id,php,mysql,regex,Php,Mysql,Regex,我正在mysql服务器中为id使用BIGINT。有一些操作需要客户端存储id。因此,我不能信任从用户浏览器返回的id。我想验证这些数据。所以问题是 1) BIGINT(255)的精确范围是多少。BIGINT(255)的范围不容易验证。请让我知道如何用regex验证它 2) 我是否应该在从客户端返回的id上执行此检查,我是否刚刚结束了有关此问题的讨论,还是应该验证id以避免sql注入 从MySQL: 对于签名的BIGINT:-9223372036854775808到9223372036854775

我正在mysql服务器中为
id
使用
BIGINT
。有一些操作需要客户端存储
id
。因此,我不能信任从用户浏览器返回的
id
。我想验证这些数据。所以问题是

1)
BIGINT(255)
的精确范围是多少。
BIGINT(255)
的范围不容易验证。请让我知道如何用regex验证它

2) 我是否应该在从客户端返回的
id
上执行此检查,我是否刚刚结束了有关此问题的讨论,还是应该验证
id
以避免sql注入

  • 从MySQL:
  • 对于签名的BIGINT:-9223372036854775808到9223372036854775807

    对于
    无符号BIGINT
    :0到18446744073709551615

  • 我想您只需要验证
    ID
    是否是一个数字,是否在
    BIGINT

  • 1) “大整数。有符号范围为-9223372036854775808到9223372036854775807。无符号范围为0到18446744073709551615。”2) 不知道你在问什么所有整数类型的范围都是肯定的这正是我所想的..根据db检查返回的id是否更有意义?@tuananh:你把
    有符号/无符号
    最小值/最大值
    @Dagon混淆了,我想如果id的格式不正确,您甚至不需要查询数据库