MySQL 中的双精度数据类型,用于在提交的表单字段为空时存储 null



我有一个表单,我正在使用它来更新使用PHP和html的mysql数据库。我在 mysql 中将我的数据类型设置为双精度 (3,1(。问题是当我将数据提交到数据库时,我得到一个 0,我在表单输入字段中没有放置任何内容;我想要的是这些列为空。

我不知道我该如何实现这一目标。

$sName = mysql_real_escape_string($_REQUEST['sName']);
$datetime1 = mysql_real_escape_string( $_REQUEST['datetime1']);
$rain = mysql_real_escape_string( $_REQUEST['rain']);
$max = mysql_real_escape_string( $_REQUEST['max']);
$min = mysql_real_escape_string( $_REQUEST['min']);

$sql = "INSERT INTO rain(sName, datetime, rain, min, max) VALUES ('$sName',    '$datetime1', '$rain','$max','$min')";

我的 HTML 代码的一部分

<p>
<label for="max">Maximum Temp:</label>
<input type="number" min="10.0" max="55.0"   name="max" id="max" value="">
</p>
<p>
<label for="min">Minimum Temp:</label>
<input type="number" min="-3.0" max="40.0"  name="min" id="min"value="">
</p>
<input type="submit" value="Submit">
<input type="reset" value="Clear">

如果我明白了,你可以使用这个:

<form method="post" action="traitement.php">
<label for="data">Data :</label>
<input type="text" name="data">
<input type="submit" value="Send">
</form>

.PHP:

if(empty($_POST['data'])) {
//insert null in your database
}
else {
//insert data
}

最新更新