php - 是否可以使用 PHP 将 HTML SELECT/OPTION 值设为 NULL?

标签 php html-select

以下是我的 HTML 表单中的一个片段,它相应地从表格行中提取选项。

我想要做的是让第一个选项值为 NULL,这样当没有选择时,在将表单提交到数据库时输入 NULL。

    <td>Type</td>
    <td>:</td>
    <td><select name="type_id" id="type_id" class="form">
    <option value=""></option>
        <?php 
            $sql = mysql_query("SELECT type_id, type FROM $tbl_add_type") or die(mysql_error());
            while ($row = mysql_fetch_array($sql))
                {
                    echo "<option value=".$row['type_id'].">" . $row['type'] . "</option>";
                }
        ?>
    </select>*</td>

这可能吗?或者有人可以建议更简单/更好的方法吗?

谢谢

更新:感谢您的回答,我正在使用下面详述的方法将其转换为 NULL。

if ($_POST['location_id'] === '')
                    {
                        $_POST['location_id'] = 'NULL';
                    }

但是,当尝试将此 NULL 值用于以下查询时,它不起作用。

UPDATE addresses SET location_id='NULL' WHERE ipid = '4791'

我知道它需要改为 location_id=NULL 但不知道该怎么做...

更新 2:我的查询是这样工作的:

if ($_POST['location_id'] === '')
{
$_POST['location_id'] = 'NULL'; // or 'NULL' for SQL
}

$notes=isset($_POST['notes']) ? mysql_real_escape_string($_POST['notes']) : '';
//$location_id=isset($_POST['location_id']) ? mysql_real_escape_string($_POST['location_id']) : '';
$ipid=isset($_POST['ipid']) ? mysql_real_escape_string($_POST['ipid']) : '';


$sql="UPDATE addresses 
    SET notes='$notes', location_id='$location_id'
    WHERE ipid = '$ipid'";


mysql_query($sql) or die(mysql_error());

最佳答案

不,POST/GET 值永远不会是 null。最好是空字符串,您可以将其转换为 null/'NULL'

if ($_POST['value'] === '') {
    $_POST['value'] = null; // or 'NULL' for SQL
}

关于php - 是否可以使用 PHP 将 HTML SELECT/OPTION 值设为 NULL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8796707/

相关文章:

php - 使用 PHP 格式化从数据库获取的大文本

php - 向投资组合元素添加一个类以设置每三个元素的样式

php - WP Better Emails 插件 - HTML 模板问题

php - EasyPHP win7 服务器上的 Kohana Web 应用程序中的 SQL 查询速度极慢

php - 如何将动态下拉列表中的值保存到 MySQL 数据库中

HTML 选择表单变量默认值

javascript - 如何从 codeigniter View 将数组传递给 jquery 脚本

jquery 多重选择 - 嵌套 <选项>

jquery - 如何检查一个选项是否被选中?

css - 在基于 webkit 的浏览器中为特定 <select> 选项设置样式的纯 CSS 解决方案?