2

如果数字低于 1,我发现用逗号将数字转换为点有一个问题。如果数字高于 1,则一切正常。

我使用这个替换脚本:

$price = str_replace(",", ".", $_POST['PRICE']);
  • 如果我发帖0.5- 一切都好
  • 如果我发布0,5(用逗号)然后我收到这个错误:

警告:mysql_query() 至少需要 1 个参数,0 给出在....

PRICE 字段为 DOUBLE 格式。

所有其他大于 1 的数字都用逗号接受。

4

2 回答 2

2
$_price = str_replace(",", ".", $_POST['PRICE']); // convert to applicable format
$PRICE = is_numeric($_price) ? (float)$_price : null; // for consistency that there will be smth. similar to number, but not sneaky piece of script from kind user
于 2012-12-28T09:16:48.400 回答
1

您应该在运行 SQL 查询之前使用settype() 。

$PRICE = str_replace(",", ".", $_POST['PRICE']);    
settype($PRICE, 'float');
于 2012-12-28T09:11:02.307 回答