Maison > Questions et réponses > le corps du texte
<?php session_start (); $username = $_REQUEST ["username"]; $oldpassword = $_REQUEST ["oldpassword"]; $newpassword = $_REQUEST ["newpassword"]; $con = mysql_connect ( "localhost", "root", "root" ); if (! $con) { die ( '数据库连接失败' . $mysql_error () ); } mysql_select_db("mtdb",$con); $dbusername = null; $dbpassword = null; $result = mysql_query ( "select * from t_account where username ='{$username}'" ); while ( $row = mysql_fetch_array ( $result ) ) { $dbusername = $row ["username"]; $dbpassword = $row ["password"]; } if (is_null ( $dbusername )) { ?> <script type="text/javascript"> alert("用户名不存在"); window.location.href="changepasswd.html"; </script> <?php } if ($oldpassword!=$dbpassword) { ?> <script type="text/javascript"> alert("密码错误"); window.location.href="changepasswd.html"; </script> <?php } mysql_query ( "update t_account set password='{$newpassword}' where username='{$username}'" ) or die ( "存入数据库失败" . mysql_error () );//如果上述用户名密码判定不错,则update进数据库中 mysql_close ( $con ); ?> <script type="text/javascript"> alert("密码修改成功"); window.location.href="changepasswd.html"; </script>
Le code est écrit selon http://blog.csdn.net/qazcxh/article/details/45726911. Le problème est maintenant qu'après avoir entré un mauvais mot de passe, il vous demandera que le mot de passe est erroné, mais la base de données le fera. mettez à jour le nouveau mot de passe. Veuillez me dire comment le modifier
段旭涛2018-03-07 11:04:41
Après avoir affiché le contenu, le programme php continuera à s'exécuter jusqu'à ce qu'il rencontre une terminaison telle que die(), exit() ou jusqu'à ce que l'exécution soit terminée.
Il y a donc deux façons de résoudre votre problème
1 Ajouter un dé après le jugement
2. Mettez le code après le jugement dans else
662018-03-06 16:39:58
if ($oldpassword!=$dbpassword) {
?>
<script type="text/javascript"> alerte("Mot de passe incorrect"); .html";
</script>
<?php
mysql_query ( "update t_account set password='{$newpassword}'where username='{$username}'" ) ou mourir ( "Enregistrer la base de données failed" . mysql_error ());//Si le nom d'utilisateur et le mot de passe ci-dessus sont bien déterminés, mettez à jour dans la base de données
}
mysql_close ( $con );
?>
这样你吧更新语句放外面,无论什么密码都会更新啊= = 还有 mysql不要用了尽量使用mysqli吧
炎2018-03-06 16:33:46
Le moyen le plus simple est de
Après avoir jugé que le mot de passe est erroné lors du jugement du mot de passe, ajoutez le dé ; terminez le programme
;