代码显示"内部服务器错误",并且没有将我重定向到正确的网站。
P粉819533564
P粉819533564 2023-07-27 09:52:09
[PHP讨论组]
<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> <pre class="brush:php;toolbar:false;">//User can choose to edit or delete their account here session_start(); 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"; $Result=mysqli_fetch_assoc(mysqli_query($link,$query)); echo " &lt;br&gt;&lt;b&gt;Username&lt;/b&gt; : ".$_SESSION['username']; echo "&lt;br&gt;&lt;b&gt;Password&lt;/b&gt; : ".$Result['password']; echo "&lt;br&gt;&lt;b&gt;Name&lt;/b&gt; : ".$Result['name']; echo "&lt;br&gt;&lt;b&gt;Date of Birth&lt;/b&gt; : " .$Result['dob']; echo "&lt;br&gt;&lt;b&gt;Email&lt;/b&gt; : " .$Result['email']; ?&gt; &lt;form action="editAccount.php" method="post"&gt; &lt;input type="submit" value="Edit Account" name="edit1"/&gt; &lt;/form&gt; &lt;br&gt; &lt;form action="deleteAccount.php" method="post"&gt; &lt;input type="submit" value="Delete Account"/&gt; &lt;/form&gt; &lt;br&gt;&lt;br&gt; &lt;?php } else{ echo "Please Login to View Account Information."; } ?&gt; &lt;html&gt; &lt;head&gt; &lt;/head&gt; &lt;body&gt; &lt;h3&gt;Account Customization&lt;/h3&gt; &lt;?php $Points_needed=100-$Result['points']; ?&gt; &lt;p&gt;Current Level : &lt;?php echo $Result['level']?&gt; (You need &lt;?php echo $Points_needed?&gt; more points to level up!)&lt;/p&gt; &lt;div class="w3-light-grey"&gt; &lt;div id="myBar" class="w3-container w3-green w3-center" style="width:&lt;?php echo $Result['points']?&gt;%"&gt;&lt;?php echo $Result['points']?&gt;&lt;/div&gt; &lt;/div&gt; &lt;?php if (isset($_SESSION['userId'])){?&gt; &lt;form action="doEditAccount.php" method="post"&gt; &lt;br/&gt;&lt;br/&gt; &lt;div class="level-container"&gt; &lt;label&gt;Level 1 :&lt;/label&gt; &lt;br&gt; &lt;br&gt; &lt;input type="radio" name="color" value="lightgrey" /&gt;Light Grey &lt;input type="radio" name="color" value="lightyellow"/&gt;Light Yellow &lt;input type="radio" name="color" value="beige"/&gt;Beige &lt;input type="radio" name="color" value="lightpink"/&gt;Light Pink &lt;input type="radio" name="color" value="darkseagreen"/&gt;Dark Sea Green &lt;input type="radio" name="color" value="lightblue"/&gt;Light Blue &lt;/div&gt; &lt;?php ?&gt; &lt;?php if ($Result['level']&gt;=5){ ?&gt; &lt;div class="level-container"&gt; &lt;label&gt;Level 5 :&lt;/label&gt; &lt;br&gt; &lt;br&gt; &lt;input type="radio" name="lv5BG" value="background.jpg" /&gt;Mystical Background &lt;input type="radio" name="lv5BG" value="hellokitty.jpg" /&gt;Hello Kitty Background &lt;input type="radio" name="lv5BG" value="yellow.jpg" /&gt;Flowery Background &lt;/div&gt; &lt;?php }else{ ?&gt; &lt;div class="level-container"&gt; &lt;label&gt;Level 5 :&lt;/label&gt; &lt;br&gt; &lt;br&gt; &lt;input type="radio" name="lv5BG" value="background.jpg" disabled/&gt;Mystical Background &lt;input type="radio" name="lv5BG" value="hellokitty.jpg" disabled/&gt;Hello Kitty Background &lt;input type="radio" name="lv5BG" value="yellow.jpg" disabled/&gt;Flowery Background &lt;/div&gt; &lt;?php } if ($Result['level']&gt;=10){?&gt; &lt;div class="level-container"&gt; &lt;label&gt;Level 10 :&lt;/label&gt; &lt;br&gt;&lt;br&gt; &lt;input type="radio" name="lv10BG" value="lv10 - movable rainbow.gif" /&gt;Movable rainbow gif &lt;input type="radio" name="lv10BG" value="lv10 - lightbugs.gif" /&gt;Mystical Movable Firebugs &lt;/div&gt; &lt;?php }else{?&gt; &lt;div class="level-container"&gt; &lt;label&gt;Level 10 :&lt;/label&gt; &lt;br&gt;&lt;br&gt; &lt;input type="radio" name="lv10BG" value="lv10 - movable rainbow.gif" disabled/&gt;Movable rainbow gif &lt;input type="radio" name="lv10BG" value="lv10 - lightbugs.gif" disabled/&gt;Mystical Movable Firebugs &lt;/div&gt; &lt;?php } ?&gt; &lt;input type="submit" value="Confirm Change" name="edit2"/&gt; &lt;/form&gt; &lt;?php } ?&gt; &lt;/body&gt; &lt;/html&gt;</pre> <p>Account.php表单输入将传递到doEditAccount.php,下面是代码。</p> <pre class="brush:php;toolbar:false;">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'])){ }else{ } // $_SESSION['Cmsg'] = Customization Message if (isset($_POST['edit2'])) { if (isset($_POST['color'])) { $plaincolor = $_POST['color']; setcookie("lv5BG", "", time() - 3600); // Remove lv5BG cookie if it exists setcookie("lv10BG", "", time() - 3600); // Remove lv10BG cookie if it exists setcookie("plaincolor", $plaincolor, time() + 60 * 60 * 24 * 365 * 10); $_SESSION['Cmsg'] = "You have successfully changed background to $plaincolor."; } elseif (isset($_POST['lv5BG'])) { $lv5BG = $_POST['lv5BG']; setcookie("plaincolor", "", time() - 3600); // Remove plaincolor cookie if it exists setcookie("lv10BG", "", time() - 3600); // Remove lv10BG cookie if it exists setcookie("lv5BG", $lv5BG, time() + 60 * 60 * 24 * 365 * 10); $_SESSION['Cmsg'] = "You have successfully changed background to $lv5BG."; } elseif (isset($_POST['lv10BG'])) { $lv10BG = $_POST['lv10BG']; setcookie("plaincolor", "", time() - 3600); // Remove plaincolor cookie if it exists setcookie("lv5BG", "", time() - 3600); // Remove lv5BG cookie if it exists setcookie("lv10BG", $lv10BG, time() + 60 * 60 * 24 * 365 * 10); $_SESSION['msg'] = "You have successfully changed background to $lv10BG."; } else { $_SESSION['Cmsg'] = "You have submitted nothing. No change to customizations."; } header('Location : Login.php'); } ?&gt;</pre> <p>Login.php:</p> <pre class="brush:php;toolbar:false;">&lt;?php session_start(); include_once("navbar.php"); include_once("session.php"); $backgroundStyle = ""; if (isset($_COOKIE['plaincolor'])) { $backgroundStyle = "background-color: " . $_COOKIE['plaincolor'] . ";"; } elseif (isset($_COOKIE['lv5BG'])) { $backgroundStyle = "background-image: url(images/".$_COOKIE['lv5BG'].")"; }elseif (isset($_COOKIE['lv10BG'])) { $backgroundStyle = "background-image: url(images/".$_COOKIE['lv10BG'].")"; echo $_COOKIE['lv10BG']; } echo $backgroundStyle; ?&gt; &lt;!DOCTYPE html&gt; &lt;!-- To change this license header, choose License Headers in Project Properties. To change this template file, choose Tools | Templates and open the template in the editor. --&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;TODO supply a title&lt;/title&gt; &lt;meta charset="UTF-8"&gt; &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt; &lt;/head&gt; &lt;body style="&lt;?php echo $backgroundStyle?&gt;; background-size: cover; background-repeat: no-repeat;"&gt; &lt;!-- form --&gt; &lt;?php if (isset($_SESSION['msg'])){ ?&gt; &lt;div class="alert alert-success"&gt; &lt;h5&gt;&lt;?php echo $_SESSION['msg'];?&gt;&lt;/h5&gt; &lt;/div&gt; &lt;?php } unset($_SESSION['msg']); ?&gt; &lt;form name="Login" method="post" action="doLogin.php" class="ReviewEdit"&gt; &lt;h1&gt;Login Page :&lt;/h1&gt; &lt;?php if(isset($_COOKIE['username'])){?&gt; Your Username: &lt;br&gt; &lt;input style="border:2px solid black;" id="idName" type="text" name="Uname" placeholder="Enter your username" value="&lt;?php echo $_COOKIE['username']?&gt;"/&gt; &lt;br&gt;&lt;br&gt; &lt;?php }else{?&gt; Your Username: &lt;br&gt; &lt;input style="border:2px solid black;" id="idName" type="text" name="Uname" placeholder="Enter your username" /&gt; &lt;?php } ?&gt; Your Password: &lt;br&gt; &lt;input style="border:2px solid black;" id="idEmail" type="password" name="pw" placeholder="Enter your password"/&gt; &lt;br&gt;&lt;br&gt; &lt;input type="checkbox" value="Remember me" name="Remember"&gt;Remember Me &lt;a href="forget-password.php"&gt;Forget Password&lt;/a&gt; &lt;input type="submit" value="Login"&gt; &lt;br&gt;&lt;br&gt; &lt;/form&gt; &lt;h5 class="notImportant forlogin"&gt; Not a member yet? Register &lt;a href="Register.php" style="color: darkslategray"&gt;here&lt;/a&gt; &lt;/h5&gt; &lt;/body&gt; &lt;/html&gt;</pre> <p>然后我重定向到Login.php,让用户看到他们更新的背景。问题是,当我点击“确认更改”按钮时,它给我显示之前在doEditAccount.php网站上提到的错误,除此之外,我的其他网站都能正常工作。有什么问题的想法吗?</p><p>我以为是重定向的问题,所以尝试删除header("Location:Login.php"),但问题仍然存在。这个网站以前是正常工作的,突然间当我再次运行它时,它就出现了这个错误,无法解决。</p><p><br /></p>
P粉819533564
P粉819533564

全部回复(1)
P粉994092873

尝试将header('Location : Login.php');中的Location后面的空格移除,改为header('Location: Login.php');,并在header函数下面添加exit语句,以防止在发送重定向header后执行任何进一步的代码,这被认为是使用header()进行重定向时的良好实践。

像这样:


header('Location: Login.php');
exit;
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号