0

こんにちは!このログイン ページが機能しない理由がまったくわかりません。以前はphp 5.4の共有サーバーで実行しました。Ubuntu 12.04、apache 2.4.6、php 5.5 を実行する自分のサーバーにサイトを移動しました。

以下にログインファイル全体を表示しています。globals.php には mysql 接続が含まれており、動作します。

情報を省略した場合は、お知らせください。

if ステートメント内で print ステートメントをテストするだけで、if (準備) の後で失敗していると思います。

問題は、ログインしようとすると、if ステートメントの後に空白のページが表示されることです。

事前にご協力いただきありがとうございます。十分な情報を入力していない場合は、お知らせください。

どういうわけか、mysqli接続とmysqlとPDOに関係があると感じていますか?

    <?php 
include( "globals.php" ); 
?>

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<?php 
newHead("GWHS Login", "/css/style.css"); //@param: title of site, link to css (default: http://gwhs.kana.k12.wv.us/css/style.css 
?>
    <body>
<?php 
newBorder(); //create page border @param: width of border in px (default: 5px) 
newLogo();

if (($_POST['username']) && ($_POST['password']))
{
$user = $_POST['username']; 
$pass =  md5($_POST['password']); 
$stmt = $db->stmt_init();
if ($stmt->prepare("SELECT id, username, password FROM updateusers WHERE username = ? and password = ? LIMIT 1"))
{
$stmt->bind_param('ss', $user, $pass);
$stmt->execute();
$res = $stmt->get_result();
$row = $res->fetch_assoc();
    if ($res->num_rows==1)
    {
    $_SESSION['username'] = $user; 
    $_SESSION['userid'] = $row['id'];
    $_SESSION['type'] = 1;
    $_SESSION['LAST_ACTIVITY'] = time();
    print "<script>alert('You are logged in! Check the menu \"Admin\" section for more information!');</script>";
    }
    else {
    echo "<script>alert('Wrong user / pass');</script>";
    }
$stmt->close();
}
}
?>
    <div id = "wrap"> <!-- Used to constrain the page width to 70% and center the page.  -->
        <?php 
        $links = array( array("Link to page", "Title of page"), //LEAVE BLANK IF USING MAIN MENU
               array("Link to page 2", "Title of page 2"),
               array("Link to page 3", "Title of page 3") 
             ); 
        newNavigation (); //create menu @param: $use boolean, use the main? and $links = if not using main, what are your links NO DROPDOWN SUPPORT.  
        ?>
            <div id ='main'> <!-- This is the left block of the main content -->
                <h1>GWHS Editor Login</h1>
                <form method = "POST" action = "login.php">
                    Username: <input type="text" name="username"><br>
                    Password: <input type="password" name="password"><br>
                    <input type="submit" value="Login">
                </form>
            </div>
            <?php newSidebar(); //creates new sidebar?>

<?php 
newFooter();    //displays footer @param: $content (default: 'Copyright (c) 2012 - 2013, Design : <a href = "http://ankurk.com">AK</a>')    
?>
    </div> 
    </body>
</html>
4

1 に答える 1

0

これを変更してみてください

 $stmt->bind_param('ss', $user, $pass);
$stmt->execute();
$res = $stmt->get_result();
$row = $res->fetch_assoc();
if ($res->num_rows==1)
{
 $_SESSION['username'] = $user; 
$_SESSION['userid'] = $row['id'];
$_SESSION['type'] = 1;
$_SESSION['LAST_ACTIVITY'] = time();
print "<script>alert('You are logged in! Check the menu \"Admin\" section for more information!');</script>";
}

 $stmt->bind_param('ss', $user, $pass);
 $stmt->store_result();
 $stmt->execute();

if ($stmt->num_rows==1)
{
$stmt->bind_result($id, $username, $password);
$stmt->fetch();
print "<script>alert('You are logged in! Check the menu \"Admin\" section for more information!');</script>";
}
于 2013-10-01T19:18:59.780 に答える