我正在使用mysql backend
的移动应用。 Mysql已经是数据库,目前也在为PC站点运行。所以,我在移动设备上开发单独的前端,但是使用相同的数据库并编写我自己的php代码来更新相同的数据库。我的问题是数据库有一个列(价格),其类型为float
(当我使用desc时,类型只是浮点数而没有额外的信息,如(5,4)。)。
问题是 - >当我按原样插入数据时,如果用户输入1234
,我将以1234的形式插入数据库,并以相同的方式存储。但是当PC站点上显示相同的信息时,它显示0.01为1234
。所以,我对从PC站点插入的数据进行了一些搜索。如果用户插入1234,它们将被插入到1234000000
等数据库列中。在网站上的价格信息中,它显示正确的价格,如1234.
那么,在插入我的移动php代码之前,还是有任何类型的格式化技术,我是否需要在我的数字末尾附加六个0?任何帮助是极大的赞赏。提前谢谢。
编辑:代码段
$price = mysql_real_escape_string($_POST[$enteredprice]);
mysql_query("INSERT INTO item(s_secret, i_price)
VALUES('$secretcode','$price')",$db);
其中$ price包含用户输入的价格值。如上所述,如果用户输入1234,则$ price包含1234.
答案 0 :(得分:1)
如果您不能按照建议使用固定点更改表格,并且绑定到您描述的格式,则可以执行以下操作。但是,似乎很奇怪,当没有使用实际的十进制值时,该字段是浮动的。
"INSERT INTO item(s_secret, i_price) VALUES('$secretcode','".($price*1000000)."')"
这假设您可以在表单中指定带小数的值。