-1

誰か助けてください。ユーザーがパスワードを変更できるこのパスワード変更スクリプトがあります。

現時点では、ユーザーは古いパスワード ボックスに入力したパスワードに関係なく、パスワードを変更できます。古いパスワードが「ptb_users.password」に保存されているものと一致することを確認する方法を教えてください。

また、現在、ユーザーは自分のパスワードを何も設定できませんが、enw パスワードとパスワード フィールドの確認を必須にする方法はありますか?

ありがとう。

<?php
require_once("session.php"); 
require_once("functions.php");
require('_config/connection.php');
?>
<?php 

session_start();

include '_config/connection.php'; 


$password = md5($_POST['password']);
$newpassword = md5($_POST['newpassword']);

$result = mysql_query("SELECT password FROM ptb_users WHERE id=".$_SESSION['user_id']." AND password = '".$password."'");
if(!$result) 
{ 
echo "The username you entered does not exist or old password didn't match"; 
} 
else
{
     $sql=mysql_query("UPDATE ptb_users SET password='$newpassword' WHERE id=".$_SESSION['user_id'].""); 
}
if($sql) 
{ 
    echo "Thank You. Your Password has been successfully changed."; 
}
?>
4

1 に答える 1

0

パスワードを取得し、クエリとの一致を確認するには、@hexacyanide によって提案された回答を使用できます。

mysql からパスワード フィールドを取得してパスワードを更新するには、変更する必要があります。

mysql_query("UPDATE ptb_users SET password='$newpassword'

mysql_query("UPDATE ptb_users SET password='".$newpassword."'

于 2013-02-09T04:28:21.250 に答える