0

我正在使用表单选择。我只想通过在同一页面上回显结果来检查用户选择了什么,所以我保留了 action=""。但它显示错误未定义索引 slct。谁能帮帮我吗

<form action="" method="post">
<select name="slct">
<option value="yes" selected="selected"> yes </option>
<option value="no"> no </option>
</select>
<input type="button" value="Submit" />
</form>


<?php 
$tofd = $_POST["slct"];
echo $tofd; 
?>

为什么它显示错误

Notice: Undefined index: slct in C:\wamp\www\Univ Assignment\Untitled-4.php on line 21
4

4 回答 4

1

您应该使用按钮类型提交 NOT 按钮

<input type="submit" value="submit" />

然后像这样测试它

echo (isset($_POST['slct']))? $_POST['slct'] : 'Variable undefined..';
于 2012-09-21T11:41:30.237 回答
0

使用PHP isset先检查它是否存在

例子 :

$tofd = isset($_POST["slct"]) ? $_POST["slct"] : null ;

示例 2 使用函数

function __POST($var)
{
    return  isset($_POST[$var]) ? $_POST[$var] : null ;
}

$tofd = __POST("slct");
于 2012-09-21T11:39:41.230 回答
0

如果它们在同一页面上,最初$_POST将是空的,因为用户没有发布任何内容。所以你必须处理它。

if(isset($_POST["slct"]))
    $tofd = $_POST["slct"];
于 2012-09-21T11:40:44.183 回答
0
<?php
  if (isset($_POST["slct"])){
  $tofd = $_POST["slct"];
  echo $tofd; }
?>
于 2012-09-21T13:58:16.393 回答