PHP if嵌套问题

weixin_41407407 2018-05-23 09:06:48
我弄了个很简易的注册代码,其中提交给PHP的表单如下
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<center>
<?php
include_once("conn/conn.php");
if (isset($_POST['submit'])){
if ($_POST['pw'] == $_POST['repw']){ //判断两次输入的密码是否一致
$query = "insert into user (name,pw) values('{$_POST['name']}','{$_POST['pw']}')";
$result=mysqli_query($conn, $query);
echo "<center>添加成功:"."<a href='select.php'>点击查询</a></center>";
}else {
echo "两次密码不一致"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
}

}

?>
</center>
</body>

点击提交后如果是没有填写任何东西也会提示添加成功,我后来在 if (isset($_POST['submit'])){这里又加了if判断语句发现没用,我该怎样加个判断提交的值==空时的提示啊,用户名的name是name ,密码的name 是pw
...全文
1073 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_41407407 2018-05-26
  • 打赏
  • 举报
回复
引用 5 楼 qq_39490881 的回复:
你需要的是你刚才添加注册的那个用户的ID
对啊,但是我应该怎么写啊
八云麻美子 2018-05-26
  • 打赏
  • 举报
回复
你需要的是你刚才添加注册的那个用户的ID
weixin_41407407 2018-05-26
  • 打赏
  • 举报
回复
引用 3 楼 mengziwudao 的回复:
[quote=引用 2 楼 weixin_41407407 的回复:] [quote=引用 1 楼 mengziwudao 的回复:]
if (isset($_POST['submit'])){
			//判断输入的用户名 , 密码是否为空
			if( !isset($_POST['name']) || empty($_POST['name']) || !isset($_POST['pw']) || empty($_POST['pw'])  ){
 				echo "用户名和密码不能为空"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
			}else{
				if ($_POST['pw'] == $_POST['repw']){            //判断两次输入的密码是否一致
		           $query = "insert into user (name,pw) values('{$_POST['name']}','{$_POST['pw']}')";
		           $result=mysqli_query($conn, $query);
		           echo "<center>添加成功:"."<a href='select.php'>点击查询</a></center>";
		        }else {
		            echo "两次密码不一致"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
		        } 
			}  
	    }
我试了一下发现
if(isset($_POST['name']) & $_POST['pw']=="")
这样也行,之前我没有输入isset,这个功能我也查过,可是表达的并不是很清楚,能说一下什么情况下要用isset吗?[/quote] isset() 是判断变量存不存在的 , empty( )是判断变量是否为空的 , 比如$a这个变量不存在 , 如果你使用empty()判断是会报错的 , 再比如 $a=null 或者 $a=" " 使用isset() 判断的结果是true ! null也是一个数据类型[/quote]谢谢解答,我还有一个问题不知能否请教一下,就是我添加用户后会弹出他的信息,我是这样写的
include_once("conn/conn.php");
	$cx="select * from user order by id";
	$zx=mysqli_query($conn,$cx);
	$bb=mysqli_fetch_row($zx);
  if (isset($_POST['submit'])){
			//判断输入的用户名 , 密码是否为空
			if(isset($_POST['name']) & $_POST['pw']==""){
 				echo "用户名和密码不能为空"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
			}else{
				if ($_POST['pw'] == $_POST['repw']){            //判断两次输入的密码是否一致
		           $query = "insert into user (name,pw) values('{$_POST['name']}','{$_POST['pw']}')";
		           $result=mysqli_query($conn, $query);
		           echo "<center>添加成功:"."<a href='select.php?action=select&id=".$bb[0].">点击查询</a></center>";
		        }else {
		            echo "两次密码不一致"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
		        } 
			}  
	    }
	    
其他都没问题,就是提交的时候不知道如何将ID提交上去
  • 打赏
  • 举报
回复
引用 2 楼 weixin_41407407 的回复:
[quote=引用 1 楼 mengziwudao 的回复:]
if (isset($_POST['submit'])){
			//判断输入的用户名 , 密码是否为空
			if( !isset($_POST['name']) || empty($_POST['name']) || !isset($_POST['pw']) || empty($_POST['pw'])  ){
 				echo "用户名和密码不能为空"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
			}else{
				if ($_POST['pw'] == $_POST['repw']){            //判断两次输入的密码是否一致
		           $query = "insert into user (name,pw) values('{$_POST['name']}','{$_POST['pw']}')";
		           $result=mysqli_query($conn, $query);
		           echo "<center>添加成功:"."<a href='select.php'>点击查询</a></center>";
		        }else {
		            echo "两次密码不一致"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
		        } 
			}  
	    }
我试了一下发现
if(isset($_POST['name']) & $_POST['pw']=="")
这样也行,之前我没有输入isset,这个功能我也查过,可是表达的并不是很清楚,能说一下什么情况下要用isset吗?[/quote] isset() 是判断变量存不存在的 , empty( )是判断变量是否为空的 , 比如$a这个变量不存在 , 如果你使用empty()判断是会报错的 , 再比如 $a=null 或者 $a=" " 使用isset() 判断的结果是true ! null也是一个数据类型
  • 打赏
  • 举报
回复
if (isset($_POST['submit'])){
			//判断输入的用户名 , 密码是否为空
			if( !isset($_POST['name']) || empty($_POST['name']) || !isset($_POST['pw']) || empty($_POST['pw'])  ){
 				echo "用户名和密码不能为空"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
			}else{
				if ($_POST['pw'] == $_POST['repw']){            //判断两次输入的密码是否一致
		           $query = "insert into user (name,pw) values('{$_POST['name']}','{$_POST['pw']}')";
		           $result=mysqli_query($conn, $query);
		           echo "<center>添加成功:"."<a href='select.php'>点击查询</a></center>";
		        }else {
		            echo "两次密码不一致"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
		        } 
			}  
	    }
weixin_41407407 2018-05-24
  • 打赏
  • 举报
回复
引用 1 楼 mengziwudao 的回复:
if (isset($_POST['submit'])){
			//判断输入的用户名 , 密码是否为空
			if( !isset($_POST['name']) || empty($_POST['name']) || !isset($_POST['pw']) || empty($_POST['pw'])  ){
 				echo "用户名和密码不能为空"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
			}else{
				if ($_POST['pw'] == $_POST['repw']){            //判断两次输入的密码是否一致
		           $query = "insert into user (name,pw) values('{$_POST['name']}','{$_POST['pw']}')";
		           $result=mysqli_query($conn, $query);
		           echo "<center>添加成功:"."<a href='select.php'>点击查询</a></center>";
		        }else {
		            echo "两次密码不一致"."<a href='index.php'><h1><script>document.write('点击返回')</script></h1></a>";
		        } 
			}  
	    }
我试了一下发现
if(isset($_POST['name']) & $_POST['pw']=="")
这样也行,之前我没有输入isset,这个功能我也查过,可是表达的并不是很清楚,能说一下什么情况下要用isset吗?

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧