解决$_REQUEST['name']Undefined问题

时间:2021-04-11 16:34:53

最近按照w3school一步一步学php,当学到$_REQUEST的时候,依旧按照w3cshool所提供的代码自己手敲了一遍,代码如下:

<html>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name:<input type="text" name="fname"/>
<input type="submit" >
</form> <?php
$name = $_REQUEST['fname'];
echo $name;
?>
</body>
</html>

当运行的时候会提示如下错误:

解决$_REQUEST['name']Undefined问题

很明显我们需要判断一下$_REQUEST['fname']的值是否为空,需要使用php的isset()函数

格式:bool isset ( mixed var [, mixed var [, ...]] ) 
功能:检测变量是否设置 
返回值: 
若变量不存在则返回 FALSE 
若变量存在且其值为NULL,也返回 FALSE 
若变量存在且值不为NULL,则返回 TURE 
同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE

因此把代码改成如下:

<html>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
Name:<input type="text" name="fname"/>
<input type="submit" >
</form>
<?php
if(isset($_REQUEST['fname']))
{
$name = $_REQUEST['fname'];
echo $name;
}
?>
</body>
</html>

效果如下:

解决$_REQUEST['name']Undefined问题