lolipop:PHP5.6
xamppではログインすることができましたのでpassword.php等のミスではないと思います。
よろしくお願い致します。
php
1<?php 2require 'password.php'; 3// セッション開始 4session_start(); 5 6$db['host'] = "略"; // DBサーバのur 7$db['name'] = "略"; 8$db['pass'] = "略"; 9$db['dbname'] = "略"; 10 11// エラーメッセージの初期化 12$errorMessage = ""; 13 14// ログインボタンが押された場合 15if (isset($_POST["login"])) { 16 // 1.ユーザIDの入力チェック 17 if (empty($_POST["nameid"])) { 18 $errorMessage = "名前が未入力です。"; 19 } else if (empty($_POST["password"])) { 20 $errorMessage = "パスワードが未入力です。"; 21 } 22 23 // 2.ユーザIDとパスワードが入力されていたら認証する 24 if (!empty($_POST["nameid"]) && !empty($_POST["password"])){ 25 // mysqlへの接続 26 $mysqli = new mysqli($db['host'], $db['name'], $db['pass'],$db['dbname']); 27 if ($mysqli->connect_errno) { 28 print('<p>データベースへの接続に失敗しました。</p>' . $mysqli->connect_error); 29 exit(); 30 } 31 32 // データベースの選択 33 $mysqli->select_db('you_locker'); 34 35 // 入力値のサニタイズ 36 $nameid = $mysqli->real_escape_string($_POST["nameid"]); 37 // クエリの実行 38 $query = "SELECT * FROM jyutaku WHERE jyutaku_id = '".$nameid."' "; 39 $result = $mysqli->query($query); 40 if (!$result) { 41 print('クエリーが失敗しました。' . $mysqli->error); 42 $mysqli->close(); 43 exit(); 44 } 45 46 while ($row = $result->fetch_assoc()) { 47 // パスワード(暗号化済み)の取り出し 48 49 50 $db_hashed_pwd = $row['jyutaku_password']; 51 52 } 53 54 // データベースの切断 55 $mysqli->close(); 56 57 // 3.画面から入力されたパスワードとデータベースから取得したパスワードを比較します。 58 //if ($_POST["password"] == $sql){ 59 if (password_verify($_POST["password"], $db_hashed_pwd)) { 60 // 4.認証成功なら、セッションIDを新規に発行する 61 session_regenerate_id(true); 62 $_SESSION["NAMEID"] = $_POST["nameid"]; 63 64 65 //header("Location: main.php"); 66 exit; 67 } 68 else { 69 // 認証失敗 70 $errorMessage = "名前あるいはパスワードに誤りがあります。"; 71 } 72 } else { 73 // 未入力なら何もしない 74 } 75} 76?> 77 78<html> 79 <head> 80 <meta charset="UTF-8"> 81 <title>ログイン</title> 82 </head> 83 <body> 84 <h1>ログイン画面</h1> 85 <!-- $_SERVER['PHP_SELF']はXSSの危険性があるので、actionは空にしておく --> 86 <!--<form id="loginForm" name="loginForm" action="<?php print($_SERVER['PHP_SELF']) ?>" method="POST">--> 87 <form id="loginForm" name="loginForm" action="" method="POST"> 88 <fieldset> 89 <legend>ログインフォーム</legend> 90 <div><?php echo $errorMessage ?></div> 91 <label for="nameid"> 名前 </label><input type="text" id="nameid" name="nameid" value="<?php echo htmlspecialchars($_POST["nameid"], ENT_QUOTES); ?>"> 92 <br> 93 <label for="password">パスワード</label><input type="password" id="password" name="password" value=""> 94 <br> 95 <input type="submit" id="login" name="login" value="ログイン"> 96 </fieldset> 97 </form> 98</body> 99</html> 100