将PHP浮点/小数值插入MySQL

老实说,这是一个非常简单的问题.我一直在Google上寻找解决方案,但似乎没有任何效果.我的数据库中有以下字段:

decimal(2,1)

我在PHP中有两个变量(它们来自通过POST插入到表单中的值),我想将它们加在一起然后插入到该字段中.

$sql2 = $link->prepare("INSERT INTO league_stats (match_id, rating)
VALUES (?, ?)");
$sql->bind_param("ii", $match_id, $rating);

$match_id = $_SESSION["match_id"];
$rtg1 = $_POST[$rating_1"];
$rtg2 = $_POST[$rating_2"] / 10;
$rating = $rtg1 + $rtg2;

例如,rtg1将为7,而rtg2将为3除以10,因此得出的值为0.3.然后,我将这两个数字加在一起得出7.3.当我将其插入数据库时​​,它总是将第二个数字显示为0.因此,如果不是7.3,它将显示为7.0.我尝试了许多不同的方法,但始终得到完全相同的结果.

我什至将$rating分配给原始值只是为了测试变量是否有问题:

$rating = 7.5

仍然是7.0版.

有人可以提供一个示例,说明如何正确将一个float类型的PHP变量插入MySQL吗?并且也许还解释如何正确地将两个浮点值相加?谢谢!

解决方法:

您正在告诉php将$match_id和$rating转换为整数.您应该使用:

$sql->bind_param("id", $match_id, $rating);

代替

$sql->bind_param("ii", ...
上一篇:MySQL将度,分,秒转换为度小数


下一篇:(原)torch中微调某层参数