我有一个PHP代码,它会将带有千位分隔符的整数插入到数据库中。但是,它无法保存整个整数.. Exp:10,234,234< - 只会在数据库中显示为10。 5,434< - 出现为5
我的代码:
<html>
<body>
<?php
session_start();
$date = $_SESSION['storeDate'];
$a = $_SESSION['storeA'];
$l = $_SESSION['storeL'];
$p = $_SESSION['storeP'];
$m = $_SESSION['storeM'];
$con = mysql_connect("localhost","root","password");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("productno", $con);
$sql="INSERT INTO records (Date, A, L, P, M)
VALUES
('$date', '$a', '$l', '$p', '$m')";
if (!mysql_query($sql,$con))
{
echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('Save Failed.')
window.location.href='main.php'
</SCRIPT>");
}else{
echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('Record Added.')
window.location.href='main.php'
</SCRIPT>");
}
?>
</body>
</html>
如何修改它以便存储整数 - &gt; 10234234 感谢
答案 0 :(得分:2)
如果您的列中的数据类型为INT
,那么无论您尝试什么,它都将被截断。
如果你真的想要插入这个数字,或者你可以这样做:
$number = '10,234,234';
$number = filter_var($number, FILTER_SANITIZE_NUMBER_INT); // becomes 10234234
// insert code the rest of the way
旁注:顺便说一句,尝试迁移到改进的扩展名mysqli_*
或PDO
并使用预准备语句。
答案 1 :(得分:1)
整数不能有点或逗号。你必须在没有它们的情况下保存它。
答案 2 :(得分:0)
您可以使用number_format()
:
$num = 1999.9;
$formattedNum = number_format($num)."<br>";
echo $formattedNum;
结果:
2,000