php—将十进制数存储到mysql数据库中

e4eetjau  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(320)

下面是ajax的返回,它显示了我试图存储到数据库中的值:

以下是真正存储到数据库中的内容(58.00是我存储的内容):

表的结构如下:

以下是php:

$req = $bdd->prepare("INSERT INTO salon_histo(reference, designation, colour, size, type, price, qty, payment, date) VALUES(:reference, :designation, :colour, :size, :type, :price, :qty, :payment, NOW())");
    $req->execute(array(
        'reference' => $_POST['reference'],
        'designation' => $_POST['designation'],
        'colour' => $_POST['colour'],
        'size' => $_POST['size'],
        'type' => $_POST['type'],
        'price' => floatval($price[0]),
        'qty' => $_POST['soldQty'],
        'payment' => $_POST['payment']
    ));
    $req->closeCursor();
    echo json_encode($price[0]);

当我试图存储58,33时,mysql如何存储0处有2位小数的数据?我在php中尝试使用floatval,结果数字变成了58。

jv2fixgn

jv2fixgn1#

价格似乎是一个数组:

'price' => floatval($price[0]),

可能小数部分有键1?

'price' => (float) ($price[0] . '.' . $price[1]),

如果这样不行,请 var_dump($price) 把结果贴给我。
另一个要检查的是php是否用逗号格式化这些数字。

相关问题