-1

ログインするたびに、パスワードはデータベースから消去されます。残りのデータはそのままです。私はWebプログラミングの初心者であり、これについての手がかりはありません。これの考えられる理由は何でしょうか?

[コメントからコピーされたコード]

$user= $_POST['username']; 
$pass = $_POST['password']; 
if((isset($user))&&(isset($pass))) { 
  $query ="Select password from table1 where user_name='".$user."'"; 
  $result = mysql_query($query) or die(); 
  $r= mysql_fetch_assoc($result) or die(); 

  if(!strcmp($pass, $r)) { 
   echo "succesful"; 
   session_start(); 
   $_SESSION['username']=$user; 
   $_SESSION['logged']=1; 
   header("Refresh: 0; URL = ..\home\index.php"); 
  } 
}
4

1 に答える 1

0

session_startチェック isset($_POST['username']) の場合、最初の行で行う必要があります

session_start(); 
$user= isset($_POST['username']) ? trim($_POST['username']) : false; 
$password = isset($_POST['password']) ? trim($_POST['password']) : false; 

if($user !== false && $password !== false) {

これを正しく行うと:

$r= mysql_fetch_assoc($result) or die(); 
if(!strcmp($pass, $r['password'])) { 

およびヘッダー:

header("Location: ..\home\index.php"); 
于 2012-05-23T05:42:54.820 に答える