<head>
<title>测试php</title>
</head>
<body>
<form action="test.php" method="post">
<input type="text" name="name" />
<br />
<input type="submit" value="提交" />
</form>
</body>
</html>
<?php
$name = "";
if(!empty($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
?>
运行时报错, 开始就没有$_POST["name"]值, 怎么验证有没有$_POST["name"]值.
如果有name值提交就打印值, 没得就打印""
5 个解决方案
#1
报什么错? 你的也行。用isset()也行。
#2
test.php改成:
<?php
if (isset($_POST)) {
$name = "";
if(!empty($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
} else {
echo "$_POST not Set!";
}
?>
<?php
if (isset($_POST)) {
$name = "";
if(!empty($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
} else {
echo "$_POST not Set!";
}
?>
#3
很好奇,这段代码回报什么错?
#4
错误级别打开过高了吧,关闭错误提示就不会报了。这个在生产环境下可用,开发还是严谨一些,养成验证的好习惯比较好。
推荐用楼上说的isset()函数验证一下值是否存在。
比如想知道是否存在name值的提交,可以这样:
推荐用楼上说的isset()函数验证一下值是否存在。
比如想知道是否存在name值的提交,可以这样:
if(isset($_POST['name'])||!empty($_POST['name'])
{
echo $_POST['name'];//值存在且不为空打印出来;
}else{
echo " ";//值不存在或为空,打印空"";
}
#5
开始我写成了
<?php
$name = "";
if(!isset($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
?>
所以一直报错, 我发帖子时又改成了!empty($_POST["name"])
<?php
$name = "";
if(!isset($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
?>
所以一直报错, 我发帖子时又改成了!empty($_POST["name"])
#1
报什么错? 你的也行。用isset()也行。
#2
test.php改成:
<?php
if (isset($_POST)) {
$name = "";
if(!empty($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
} else {
echo "$_POST not Set!";
}
?>
<?php
if (isset($_POST)) {
$name = "";
if(!empty($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
} else {
echo "$_POST not Set!";
}
?>
#3
很好奇,这段代码回报什么错?
#4
错误级别打开过高了吧,关闭错误提示就不会报了。这个在生产环境下可用,开发还是严谨一些,养成验证的好习惯比较好。
推荐用楼上说的isset()函数验证一下值是否存在。
比如想知道是否存在name值的提交,可以这样:
推荐用楼上说的isset()函数验证一下值是否存在。
比如想知道是否存在name值的提交,可以这样:
if(isset($_POST['name'])||!empty($_POST['name'])
{
echo $_POST['name'];//值存在且不为空打印出来;
}else{
echo " ";//值不存在或为空,打印空"";
}
#5
开始我写成了
<?php
$name = "";
if(!isset($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
?>
所以一直报错, 我发帖子时又改成了!empty($_POST["name"])
<?php
$name = "";
if(!isset($_POST["name"]))
{
$name = $_POST["name"];
}
print $name;
?>
所以一直报错, 我发帖子时又改成了!empty($_POST["name"])