簡體   English   中英

登錄檢查頁面空白或不重定向

[英]Login check page blank or doesn't redirect

一開始,腳本運行正常。 我登錄,登出,並且能夠多次這樣做。

現在,我不知道發生了什么。 頁面最后為空白,如果它不是完全空白,則會顯示一些html,但不會重定向。 然而,它正在登錄我,因為我可以直接進入我應該被重定向到的頁面,方法是在地址欄中鍵入它而不會被退回到登錄頁面(這有意義嗎?)?

我知道它必須是關於我的會話,但我不完全理解。

這是登錄檢查腳本:

<?php
$host=""; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name=""; // Table name

mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

$uname=$_POST['uname'];
$pname=$_POST['pname'];

$uname = stripslashes($uname);
$pname = stripslashes($pname);
$uname = mysql_real_escape_string($uname);
$pname = mysql_real_escape_string($pname);

$sql="SELECT * FROM $tbl_name WHERE username='$uname' and password='$pname'";
$result=mysql_query($sql);

$count=mysql_num_rows($result);

if($count==1){
session_register("uname");
session_register("pname");
header("location:index.php");
echo " '<h2>Continue to the donor list</h2><br /><br />

            <div id="login-box-name">
                Return to the login screen?
            </div>

            <div id="login-box-field">
            </div>

            <div id="login-box-name2"><a href="index.php"><img src="images/continue-btn.png" /></a></div>

            <div id="login-box-field2">
            </div>

            <br />

            <span class="login-box-options">

            </span>

            <br />
            <br />' ";
}
else {
echo " '<h2>Wrong Username or Password</h2><br /><br />

            <div id="login-box-name">
                Return to the login screen?
            </div>

            <div id="login-box-field">
            </div>

            <div id="login-box-name2"><a href="login.php"><img src="images/return-btn.png" /></a></div>

            <div id="login-box-field2">
            </div>

            <br />

            <span class="login-box-options">

            </span>

            <br />
            <br />' ";
}
?>

這些是我收到的錯誤:

[27-Nov-2011 17:52:59] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home4/folder/public_html/ccc/check.php:2) in /home4/folder/public_html/ccc/check.php on line 35

[27-Nov-2011 17:52:59] PHP Warning:  Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively in Unknown on line 0

確保在php標記之前或之后沒有任何代碼回顯。 我學會避免這種情況的原因之一是刪除最終的?>標記,如果之后沒有其他任何內容,或者頁面是純粹的PHP。 這樣做有助於避免在它之后的任何額外空格,這將導致該錯誤。

如果您在check.php頁面中使用include或require,請不要在index.php頁面或其他包含頁面中使用類似的標頭。 此外,請確保在打開和關閉PHP標記<?php . . . ?>之前或之后沒有任何空格<?php . . . ?> <?php . . . ?> <?php . . . ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM