首页 > 解决方案 > 未检索到输入值

问题描述

PHP 变量不会返回复选框的 POST 值;它说变量未定义

然后我尝试将 POST 数据插入到我的数据库中,但无济于事。

尝试使用 PHP 变量检索;尝试将复选框更改为单选按钮(同样的问题);尝试将复选框移到别处

<form method="post">
<label><input type="checkbox" name="farming_type" value="1" >Organic</label><br />
<label><input type="checkbox" name="grazing_type" value="2" />Grass-fed</label>
<label><input type="checkbox" name="antibiotics" value="3" />Antibiotic-free</label><br />
<label><input type="checkbox" name="hormones" value="4" />Hormone-free</label>

<input type="submit" name="submit" value='Create' style='margin-left:3px;font-weight:bold;color:green;' />
</form>

<?php if (isset($_POST['submit'])) { ?>
<?php $farming_type = $_POST["farming_type"]; ?>

预期:返回的变量。实际:未定义的变量

标签: phphtmlcheckbox

解决方案


如果未选中复选框,则不会在 PHP 中定义变量。您必须使用 isset() 来查看该框是否被选中,如果没有,则在您的 PHP 脚本中提供一个备用值。

$farming_type = (isset($_POST['farming_type'])) ? $_POST['farming_type'] : "Not specified.";

http://form.guide/php-form/php-form-checkbox.html


推荐阅读