PHP 비밀번호 변경 시스템, 잘못된 비밀번호를 입력한 후에도 비밀번호가 계속 변경됩니다.
**哥是标准身材。
**哥是标准身材。 2018-03-06 15:28:17
0
7
1319
<?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>

코드는 http://blog.csdn.net/qazcxh/article/details/45726911에 따라 작성되었습니다. 이제 문제는 잘못된 비밀번호를 입력하면 비밀번호가 잘못되었다는 메시지가 표시되지만 데이터베이스는 새 비밀번호를 업데이트하세요. 수정 방법을 알려주세요

**哥是标准身材。
**哥是标准身材。

모든 응답(3)
段旭涛

콘텐츠를 표시한 후 PHP 프로그램은 die(),exit()와 같은 종료가 발생하거나 실행이 완료될 때까지 계속 실행됩니다.
그래서 문제를 해결하는 방법은 두 가지가 있습니다

1. 판단 후 주사위를 추가하세요
2. 판단 후 코드를 else에 넣으세요

  • 회신하다 네, 판단 후 다이를 추가하고 나서 해결되었습니다. 처음 PHP를 배우기 시작했을 때 몇 번 더 IF를 해보니 약간 벅찬 느낌이 들었습니다. CSDN 기사가 왜 이렇게 부정확한 걸까요? 실제로 테스트도 하지 않고 올렸네요. 다행히도 큰 피해는 없었습니다. .
    **哥是标准身材。 작가 2018-03-07 11:08:36
黄天敏

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}'" ) 또는 종료( "데이터베이스 저장 failed" . mysql_error ());//위 사용자 이름과 비밀번호가 잘 결정되면 데이터베이스로 업데이트합니다

}

mysql_close ( $con );

?>

这样你吧更新语句放外面,无论什么密码都会更新啊= = 还有 mysql不要用了尽量使用mysqli吧


  • 회신하다 말씀하신대로 넣었는데 아직도 이렇네요 - -
    **哥是标准身材。 작가 2018-03-06 17:52:43
  • 회신하다 감사합니다 1층 마스터님의 방법으로 해결되었습니다~!
    **哥是标准身材。 작가 2018-03-06 18:18:16
炎

가장 쉬운 방법은

비밀번호 판단에서 비밀번호가 틀렸다고 판단한 후 프로그램을 종료하는 것입니다

.
  • 회신하다 감사합니다~ 처리됐어요!
    **哥是标准身材。 작가 2018-03-06 18:18:04
  • 회신하다 물론이죠
    작가 2018-03-07 09:10:20
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿