|  | 分類:[JavaScript]
 
 
 プログラム言語:php、javascript
DB:mysql
以下のコードでログイン認証機能を作成いたしました。
ログイン成功時は、画面遷移ができますが、
IDが一致しない場合、javascriptでアラート表示までは出来ましたが、
そのあとにログイン画面へのリダイレクトをしたいのですが、
else文の
location.href="login.html";
上記の処理が通りません。
ご教示頂けますと幸いです。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>ユーザ認証</title>
</head>
<body>
<?php
  // エラーメッセージ 初期化
  $errorMessage = "";
  $conn=mysqli_connect('127.0.0.1','wakatsuki_takahi','') or exit("MySQLへ接続できません。");
  //echo "MySQLへ接続できました。<br>";
  mysqli_select_db($conn,'c9') or exit("データベース名が間違っています。");
  $sql="SELECT * FROM db_user where name='{$_POST['name']}' and password='{$_POST['password']}';";
  $result=mysqli_query($conn,$sql) or exit("データの抽出に失敗しました。");
  
  //mysqli_num_rows($MySQL['result'])は、SELECT文で抽出されたレコードの数を返す関数です。
  //抽出されたレコード数が0の場合は、ユーザ名とパスワードが一致しなかったことになります。
  //抽出されたレコード数が一つ以上あれば、ユーザ名とパスワードが一致したことになる。
  if(mysqli_num_rows($result)!=0){
    header("Location: main.php");
    //echo "ユーザ認証できました。{$_POST['name']}様のページです。<br>";
    }
    else{
      echo '<script type="text/javascript">' ;
      echo 'alert("ユーザ名、またはパスワードが異なっています。");' ;
      location.href="login.html";
      echo '</script>' ;
    }
  mysqli_close($conn);
?>
</body>
</html>
 |