通过PHP的rand代码无法在线工作

时间:2012-10-23 12:51:45

标签: php mysql database random

PHP代码:

$code=rand(1000000000,9000000000);

$sql=mysql_query("INSERT INTO `form` (`code`,date) VALUES ('$code',now())");

此代码适用于本地但不适用于在线。保存到数据库的所有代码是:2147483647.如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

将字段类型从 int 更改为 bigint

选中此http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

(11.1.4.1。整数类型(精确值))

Int介于 -2147483648 2147483647

之间

BigInt介于 -9223372036854775808 9223372036854775807之间

答案 1 :(得分:1)

2147483647 = 2^31 − 1 

这是mysql可以表示的最后一个整数。 我认为你应该将类型改为'bigint',一切都会好的。