これをシンプルにしようと思います。MySQL データベース テーブルで BIGINT データ型を使用しています。12 桁から 13 ダイジェストの長さの一意の乱数を生成する関数があります。
長さが12桁の数字でデータベースに挿入すると、問題なく入力されますが、
しかし、13桁以上の値を使用すると、切り上げか何かのように見えます。ここは
php
$defaultText = 'some string'; //just some string
$web_id = 12;
$element_id = 23112182735363; //case 1 (doesn't work)
//$element_id = 2311218333205; //case 2, does work ()
mysql_query("INSERT INTO tableName (web_id, element_id, content)
VALUES ($web_id, $element_id, '".mysql_real_escape_string($defaultText)."')");
結果:ケース1では、わずかに異なる数値が挿入され、通常は何らかの理由で切り上げられます。
2 の場合は、問題なく数字が挿入されます。誰かがこの謎に光を当てるのを手伝ってくれるかもしれません! 再度、感謝します!
big int データ型:
bigint(200)