首頁  >  問答  >  主體

程式碼顯示"內部伺服器錯誤",並且沒有將我重新導向到正確的網站。

<p>嘿,大家好!我在這段特定的程式碼中遇到了一個錯誤,以下是錯誤訊息。除了doEditAccount.php之外,我所有其他網站的程式碼都能正常運作。 </p><p>內部伺服器錯誤 伺服器遇到了內部錯誤或設定錯誤,無法完成您的要求。 </p><p>請聯絡伺服器管理員 postmaster@localhost,告知他們發生錯誤的時間以及在此錯誤之前您執行的操作。 </p><p>有關此錯誤的更多資訊可能會在伺服器錯誤日誌中提供。 </p><p>Apache/2.4.54 (Win64) OpenSSL/1.1.1p PHP/8.2.0 伺服器位於localhost連接埠80。</p><p>以下是我的程式碼:Account.php:</p><p><br />></p>
//使用者可以在這裡選擇編輯或刪除自己的帳戶
會話開始();
include_once("linkConnection.php");
include_once("navbar.php");
include_once("session.php");



if(isset($_SESSION['userId'])){
    $userId=$_SESSION['userId'];


    $query="SELECT * FROM users WHERE userId = $userId";
    $結果=mysqli_fetch_assoc(mysqli_query($link,$query));

    echo " <br><b>使用者名稱</b> : ".$_SESSION['使用者名稱'];
    echo "<br><b>密碼</b>:".$Result['password'];
    echo "<br><b>姓名</b>:".$Result['name'];
    echo "<br><b>出生日期</b>:" .$Result['dob'];
    echo "<br><b>電子郵件</b>:" .$Result['email'];
    
    
    ?>
    

<表單操作=“editAccount.php”方法=“post”>
    
</表格>
<br>
<表單作業=“deleteAccount.php”方法=“post”>
    
</表格>
<br><br>

    <頭>
    </頭>
    <正文>
        

帳戶客製化

更多積分才能升級!)

<div class="w3-light-grey"> <div id="myBar" class="w3-container w3-green w3-center" style="width:<?php echo $Result['points']?>%"><?php echo $Result['points']?></div>
; ; <表單操作=“doEditAccount.php”方法=“post”> <br/><br/>> <div class="level-container"> <標籤>等級 1:</標籤> <br> <br> 淺灰色 淺黃色 米色 淺粉紅色 深海綠 淺藍色
=5){ ?>; <div class="level-container"> <標籤>第 5 級:</標籤> <br> <br> <input type="radio" name="lv5BG" value="background.jpg" //>神秘背景 Hello Kitty 背景 <input type="radio" name="lv5BG" value="yellow.jpg" //>絢麗背景 ; =10){?> <div class="level-container"> <標籤>第 10 級:</標籤> <br><br> 可移動彩虹 gif <input type="radio" name="lv10BG" value="lv10 - lightbugs.gif" />神秘可移動螢火蟲 <div class="level-container"> <標籤>第 10 級:</標籤> <br><br> 可移動彩虹 gif <輸入類型=“無線電”名稱=“lv10BG”值=“lv10 - lightbugs.gif”停用/>神秘的可移動螢火蟲 ; <?php } ?> <input type="submit" value="Confirm Change" name="edit2"/> </form> <?php } ?> </body> </html></pre> <p>Account.php表單輸入將傳遞到doEditAccount.php,下面是程式碼。</p>
error_reporting(E_ALL);
ini_set('display_errors', '1');

include_once("linkConnection.php");
include_once("navbar.php");
include_once("session.php");



if(isset($_POST['edit1'])){
    
}別的{
    
}
// $_SESSION['Cmsg'] = 自訂訊息
if (isset($_POST['edit2'])) {
    if (isset($_POST['color'])) {
        $plaincolor = $_POST['顏色'];
        setcookie("lv5BG", "", time() - 3600); // 刪除 lv5BG cookie(如果存在)
        setcookie("lv10BG", "", time() - 3600); // 刪除 lv10BG cookie(如果存在)
        setcookie("plaincolor", $plaincolor, time() 60 * 60 * 24 * 365 * 10);
        $_SESSION['Cmsg'] = "您已成功將背景變更為$plaincolor。";
    } elseif (isset($_POST['lv5BG'])) {
        $lv5BG = $_POST['lv5BG'];
        setcookie("plaincolor", "", time() - 3600); // 刪除純色 cookie(如果存在)
        setcookie("lv10BG", "", time() - 3600); // 刪除 lv10BG cookie(如果存在)
        setcookie("lv5BG", $lv5BG, 時間() 60 * 60 * 24 * 365 * 10);
        $_SESSION['Cmsg'] = "您已成功將背景變更為$lv5BG。";
    } elseif (isset($_POST['lv10BG'])) {
        $lv10BG = $_POST['lv10BG'];
        setcookie("plaincolor", "", time() - 3600); // 刪除純色 cookie(如果存在)
        setcookie("lv5BG", "", time() - 3600); // 刪除 lv5BG cookie(如果存在)
        setcookie("lv10BG", $lv10BG, 時間() 60 * 60 * 24 * 365 * 10);
        $_SESSION['msg'] = "您已成功將背景變更為$lv10BG。";
    } 別的 {
        $_SESSION['Cmsg'] = "您沒有提交任何內容。自訂設定沒有更改。";
    }
    header('位置:Login.php');
}

    ?></pre>
<p>Login.php:</p>



    <頭>
        TODO 提供標題
        <元字元集=“UTF-8”>
        <元名稱=“視口”內容=“寬度=設備寬度,初始比例= 1.0”>
         
    </頭>
    <body style="<?php echo $backgroundStyle?>; 背景大小:封面;背景重複:無重複;">
       
        
         
        
         ;
            
            

登入頁面:

您的使用者名稱: <br> <輸入樣式=“邊框:2px純黑;” id="idName" type="text" name="Uname" placeholder="輸入您的使用者名稱" value="<?php echo $_COOKIE['username']?>"/> <br><br> 您的使用者名稱: <br> <輸入樣式=“邊框:2px純黑;” id="idName" type="text" name="Uname" placeholder="輸入您的使用者名稱" /> <br><br> 記得我 忘記密碼 <輸入類型=“提交”值=“登入”> <br><br> </表格>
還不是會員?註冊此處 </h5> </正文> </html></pre> <p>然後我重定向到Login.php,讓使用者看到他們更新的背景。問題是,當我點擊「確認更改」按鈕時,它會在 doEditAccount.php 網站上顯示之前提到的錯誤,除了此之外,我的其他網站都正常工作。有什麼問題嗎?</p><p>我以為是重定向的問題,所以嘗試刪除header("Location:Login.php "),但問題仍然存在。這個網站以前是正常工作的,突然當我再次運行它的時候,就出現了這個錯誤,無法解決。</p><p><br />> </p> ;
P粉819533564P粉819533564471 天前413

全部回覆(1)我來回復

  • P粉994092873

    P粉9940928732023-07-28 00:03:38

    嘗試將header('Location : Login.php');中的Location後面的空格移除,改為header('Location: Login.php');,並在header函數下面添加exit語句,以防止在發送重定向header後執行任何進一步的程式碼,這被認為是使用header()進行重定向時的良好實踐。

    像這樣:


    header('Location: Login.php');
    exit;

    回覆
    0
  • 取消回覆