0

MySQL の 10 進フィールド型をうまく機能させようとしていますが、それがわかりません。$_POST['price']たとえば、フィールドを 10 進フィールドに送信する3.45と、常に として保存され3.00ます。

小数を保存しないために何が間違っているのでしょうか?

解決策を見つけました: 10 進数型の PDO::PARAM?

PDO には 10 進数の格納タイプがありません。数値ではなく文字列として保存する必要があります。

4

1 に答える 1

0

変数を文字列から浮動小数点floatval()に変換するときに使用します。$_POST['price']この値は、データベースに保存する必要があります。

でも気をつけて!丸め誤差の可能性があるため、価格を計算する場合、浮動小数点演算はそれほど優れていません。価格を扱うときは、通常、整数演算を使用してから手動で小数点を入れます。

だからあなたの例では、私は345表すために保存します$3.45

于 2013-07-19T19:39:16.857 に答える