HTML表单文本输入不发布'0'?

时间:2012-01-05 20:09:08

标签: html forms post

我似乎无法找到一个直接的答案:我有一个HTML表单,没有什么特别的东西,只有几个文本输入,像这样

<input type="text" name="field" />

发布时,它发布很好,我将数据存储在数据库中,没问题。但是,在检索表单数据时,我根本没有看到任何存储空间,而是填充了“0&#39;”。我期待看到&#39; 0&#39; 0当然,但它没什么,只是空的 我查看了Safari的开发工具,发现我在文本字段中插入的所有内容都很好,除了我已插入&#39; 0&#39;,其中案例没有被发布。

我一直在搜索,我已经阅读了一些W3文档,但没有任何事情告诉我为什么插入&#39; 0&#39;进入纯文本输入帖空。我打赌你们中的一些人可能有线索或实际上知道为什么......并且可以提供一个解决方案来获得“&#39; 0&#39;发布没有很多技巧。

2 个答案:

答案 0 :(得分:0)

0表示PHP为NULL。在检索输入参数时,您需要将其转换为字符串,以便正确存储

$newVal = (string) $_FORM['field'];

答案 1 :(得分:0)

当它应该为'0'时,报告'空'时Safari似乎不正确。额外检查确认“0” 已过帐。 '0'未存储在数据库中的真正原因是因为检查了后端(PHP):

if (!empty($value)) {
    // validate value for storing
}

因为'0'被认为是'空',所以没有存储它。重构检查解决了问题。