求助:php中嵌套循环!
想做一个修改密码的程序,有三个密码框,第一个为输入原密码,第二个为输入新密码,第三个为再次确认新密码,要求提交结果后,1.如果原密码输入错误,则输出为“密码输入错误!”。...
想做一个修改密码的程序,有三个密码框,第一个为输入原密码,第二个为输入新密码,第三个为再次确认新密码,要求提交结果后,1.如果原密码输入错误,则输出为“密码输入错误!”。2.如果原密码输入正确,(1)新输入两次密码不一样,则输出“两次结果不一样,请重新输入!”。(2)如果新输入两次密码正确,则输出为“修改成功,欢迎登陆!”。
我自己的写的程序如下,但是运行结果不对,每次无论输入正确的还是错误的密码,输出结果都是“密码输入错误!”还请大侠们指正!
<?php
mysql_connect("localhost","root","");
mysql_select_db("bank");
$result=mysql_query("SELECT * FROM static WHERE password='".$_POST['old_code']."'") or die(mysql_error());
if( mysql_num_rows($result) != '0' ) {
if($_POST['new_code']!=$_POST['repeat_code']) {
echo "两次密码输入不一致!";
} else {
mysql_query("update static set password='".$_POST['new_code']."'");
echo "修改成功!";
}
} else {
echo "旧密码输入错误!";
}
?>
</body>
</html>问题补充:我的html源文件如下:
</head>
<body>
<div style="border: 1px solid black;">
<form action="./change.php" method="POST">
<table>
<tbody>
<tr><td>Votre code secret actuel:</td><td> <input type="password" name="old_code"></td></tr>
<tr><td>Votre nouveau code secret:</td><td> <input type="password" name="new_code"></td></tr>
<tr><td>La confirmation de votre nouveau code secret:</td><td> <input type="password" name="code_repeat"></td></tr>
</tbody>
</table>
<input type="submit">
<input type="reset">
</form>
</div>
</body>
</html> 展开
我自己的写的程序如下,但是运行结果不对,每次无论输入正确的还是错误的密码,输出结果都是“密码输入错误!”还请大侠们指正!
<?php
mysql_connect("localhost","root","");
mysql_select_db("bank");
$result=mysql_query("SELECT * FROM static WHERE password='".$_POST['old_code']."'") or die(mysql_error());
if( mysql_num_rows($result) != '0' ) {
if($_POST['new_code']!=$_POST['repeat_code']) {
echo "两次密码输入不一致!";
} else {
mysql_query("update static set password='".$_POST['new_code']."'");
echo "修改成功!";
}
} else {
echo "旧密码输入错误!";
}
?>
</body>
</html>问题补充:我的html源文件如下:
</head>
<body>
<div style="border: 1px solid black;">
<form action="./change.php" method="POST">
<table>
<tbody>
<tr><td>Votre code secret actuel:</td><td> <input type="password" name="old_code"></td></tr>
<tr><td>Votre nouveau code secret:</td><td> <input type="password" name="new_code"></td></tr>
<tr><td>La confirmation de votre nouveau code secret:</td><td> <input type="password" name="code_repeat"></td></tr>
</tbody>
</table>
<input type="submit">
<input type="reset">
</form>
</div>
</body>
</html> 展开
展开全部
<?php
mysql_connect("localhost","root","");
mysql_select_db("bank");
$oldPW = empty($_POST["old_code"]) ? "" : $_POST["old_code"];
$newPW = empty($_POST["new_code"]) ? "" : $_POST["new_code"];
$newPW1 = empty($_POST["repeat_code"]) ? "" : $_POST["repeat_code"];
//以上意思如果提交密码为空 $oldPW、$newPW 等于空 否则等于提交的值
//以下判断如果空就不必要去查询数据库了
if ($oldPW=='' && $newPW=="" && $newPW1=""){
exit("密码为空!");
}else{
$result=mysql_query("SELECT * FROM static WHERE password='.$oldPW.' ") or die(mysql_error());
if( mysql_num_rows($result) != 0 ) {
if($newPW1!=$newPW) {
exit("两次密码输入不一致!");
}else{
mysql_query("update static set password='.$newPW.' ");
echo "修改成功!";
}
} else{
exit("旧密码错误!");
}
}
?>
mysql_connect("localhost","root","");
mysql_select_db("bank");
$oldPW = empty($_POST["old_code"]) ? "" : $_POST["old_code"];
$newPW = empty($_POST["new_code"]) ? "" : $_POST["new_code"];
$newPW1 = empty($_POST["repeat_code"]) ? "" : $_POST["repeat_code"];
//以上意思如果提交密码为空 $oldPW、$newPW 等于空 否则等于提交的值
//以下判断如果空就不必要去查询数据库了
if ($oldPW=='' && $newPW=="" && $newPW1=""){
exit("密码为空!");
}else{
$result=mysql_query("SELECT * FROM static WHERE password='.$oldPW.' ") or die(mysql_error());
if( mysql_num_rows($result) != 0 ) {
if($newPW1!=$newPW) {
exit("两次密码输入不一致!");
}else{
mysql_query("update static set password='.$newPW.' ");
echo "修改成功!";
}
} else{
exit("旧密码错误!");
}
}
?>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if( mysql_num_rows($result) != '0' ) { //返回的是一个数字,不是一个字符
if($_POST['new_code']!=$_POST['repeat_code']) {
echo "两次密码输入不一致!";
if($_POST['new_code']!=$_POST['repeat_code']) {
echo "两次密码输入不一致!";
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
密码重复没必要用PHP判断的..不然浪费服务器资源嘛
if ()
{
if ()
{
}
}
else
{
}
没有循环啊~
if ()
{
if ()
{
}
}
else
{
}
没有循环啊~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询