ホームページ  >  に質問  >  本文

コードには「内部サーバー エラー」と表示され、正しい Web サイトにリダイレクトされません。

<p>皆さんこんにちは!この特定のコード部分でエラーが発生しました。以下にエラー メッセージを示します。私の他の Web サイトのコードは、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 サーバーはローカルホスト ポート 80 にあります。</p><p>以下我的代码:Account.php:</p><p><br /></p> <pre class="brush:php;toolbar:false;">//ユーザーはここでアカウントを編集または削除することを選択できます セッション開始(); 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 " <br>gt;<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']; ?> <form action="editAccount.php" method="post"> <input type="submit" value="アカウントの編集" name="edit1"/> </フォーム> <br> <form action="deleteAccount.php" method="post"> <input type="submit" value="アカウントを削除"/> </フォーム>

<?php } それ以外{ echo "アカウント情報を表示するにはログインしてください。"; } ?> <html> <頭> </head> <本体> <h3>アカウントのカスタマイズ</h3> <?php $Points_needed=100-$Result['ポイント']; ?> <p>現在のレベル : <?php echo $Result['level']?> (レベルアップするには <?php echo $Points_needed?> さらにポイントが必要です!)</p> <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> </div> <?php if (isset($_SESSION['userId'])){?> <form action="doEditAccount.php" method="post"> <br/><br/> <div class="レベルコンテナ"> <label>レベル 1 :</label> <br> <br> <input type="radio" name="color" value="lightgrey" />ライトグレー <input type="radio" name="color" value="light yellow"/>ライトイエロー <input type="radio" name="color" value="ベージュ"/>ベージュ <input type="radio" name="color" value="lightpink"/>ライトピンク <input type="radio" name="color" value="darkseagreen"/>ダークシーグリーン <input type="radio" name="color" value="lightblue"/>ライトブルー </div> <?php ?> <?php if ($Result['level']>=5){ ?> <div class="レベルコンテナ"> <label>レベル 5 :</label> <br> <br> <input type="radio" name="lv5BG" value="background.jpg" />神秘的な背景 <input type="radio" name="lv5BG" value="hellokitty.jpg" />ハローキティの背景 <input type="radio" name="lv5BG" value=" yellow.jpg" />花の背景 </div> <?php }それ以外{ ?> <div class="レベルコンテナ"> <label>レベル 5 :</label> <br> <br> <input type="radio" name="lv5BG" value="background.jpg" 無効/>神秘的な背景 <input type="radio" name="lv5BG" value="hellokitty.jpg" 無効/>ハローキティの背景 <input type="radio" name="lv5BG" value=" yellow.jpg" 無効/>花の背景 </div> <?php } if ($Result['level']>=10){?> <div class="レベルコンテナ"> <label>レベル 10 :</label>

<input type="radio" name="lv10BG" value="lv10 - 可動レインボー.gif" />可動レインボー GIF <input type="radio" name="lv10BG" value="lv10 - lightbugs.gif" />神秘的な可動ファイアバグ </div> <?php }その他{?> <div class="レベルコンテナ"> <label>レベル 10 :</label>

<input type="radio" name="lv10BG" value="lv10 - 可動レインボー.gif" 無効/>可動レインボー gif <input type="radio" name="lv10BG" value="lv10 - lightbugs.gif" 無効/>神秘的な可動ファイアバグ </div> <?php } ?> <input type="submit" value="変更の確認" name="edit2"/> </フォーム> <?php } ?> </ボディ> </html></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'])){ }それ以外{ } // $_SESSION['Cmsg'] = カスタマイズメッセージ if (isset($_POST['edit2'])) { if (isset($_POST['color'])) { $plaincolor = $_POST['color']; setcookie("lv5BG", "", time() - 3600); // lv5BG Cookie が存在する場合は削除します setcookie("lv10BG", "", time() - 3600); // lv10BG Cookie が存在する場合は削除します setcookie("プレーンカラー", $plaincolor, time() 60 * 60 * 24 * 365 * 10); $_SESSION['Cmsg'] = "背景を $plaincolor に変更しました。"; elseif (isset($_POST['lv5BG'])) { $lv5BG = $_POST['lv5BG']; setcookie("無地", "", time() - 3600); // プレーンカラー Cookie が存在する場合は削除します setcookie("lv10BG", "", time() - 3600); // lv10BG Cookie が存在する場合は削除します setcookie("lv5BG", $lv5BG, time() 60 * 60 * 24 * 365 * 10); $_SESSION['Cmsg'] = "背景を $lv5BG に正常に変更しました。"; elseif (isset($_POST['lv10BG'])) { $lv10BG = $_POST['lv10BG']; setcookie("無地", "", time() - 3600); // プレーンカラー Cookie が存在する場合は削除します setcookie("lv5BG", "", time() - 3600); // lv5BG Cookie が存在する場合は削除します setcookie("lv10BG", $lv10BG, time() 60 * 60 * 24 * 365 * 10); $_SESSION['msg'] = "背景を $lv10BG に変更しました。"; } それ以外 { $_SESSION['Cmsg'] = "何も送信されていません。カスタマイズに変更はありません。"; } header('場所: Login.php'); } ?></pre> <p>Login.php:</p> <pre class="brush:php;toolbar:false;"><?php セッション開始(); include_once("navbar.php"); include_once("session.php"); $backgroundStyle = ""; if (isset($_COOKIE['plaincolor'])) { $backgroundStyle = "背景色: " . $_COOKIE['無地'] . ";"; elseif (isset($_COOKIE['lv5BG'])) { $backgroundStyle = "背景画像: url(images/".$_COOKIE['lv5BG'].")"; }elseif (isset($_COOKIE['lv10BG'])) { $backgroundStyle = "背景画像: url(images/".$_COOKIE['lv10BG'].")"; echo $_COOKIE['lv10BG']; }$backgroundStyle をエコーし​​ます。 ?> <!DOCTYPE html> <!-- このライセンス ヘッダーを変更するには、プロジェクトのプロパティでライセンス ヘッダーを選択します。 このテンプレート ファイルを変更するには、[ツール] | [ツール] を選択します。テンプレート エディタでテンプレートを開きます。 --> <html> <頭> <title>TODO タイトルを指定します</title> <メタ文字セット="UTF-8"> <meta name="viewport" content="width=device-width、initial-scale=1.0"> </head> <body style="<?php echo $backgroundStyle?>; 背景サイズ: カバー; 背景リピート: no-repeat;"> <!-- 形状 --> <?php if (isset($_SESSION['msg'])){ ?> <div class="アラート アラート-成功"> <h5><?php echo $_SESSION['msg'];?></h5> </div> <?php } unset($_SESSION['msg']); ?> <form name="Login" method="post" action="doLogin.php" class="ReviewEdit"> <h1>ログインページ:</h1> <?php if(isset($_COOKIE['username'])){?> あなたのユーザー名: <br> <input style="border:2px ソリッドブラック;" id="idName" type="text" name="Uname" placeholder="ユーザー名を入力してください" value="<?php echo $_COOKIE['username']?>"/>

<?php }その他{?> あなたのユーザー名: <br> <input style="border:2px ソリッドブラック;" id="idName" type="text" name="Uname" placeholder="ユーザー名を入力してください" /> <?php } ?> あなたのパスワード: <br> <input style="border:2px ソリッドブラック;" id="idEmail" type="password" name="pw" placeholder="パスワードを入力してください"/>

<input type="checkbox" value="Remember me" name="Remember">Remember Me <a href="forget-password.php">パスワードを忘れた場合</a> <input type="submit" value="ログイン">

</フォーム> <h5 class="ログインには重要ではありません">まだメンバーではありませんか? <a href="Register.php" style="color: darkslategray">こちら</a> に登録してください。 </h5> </ボディ> </html></pre> <p>その後、Login.php に戻り、ユーザーは他の更新された背景を確認します。問題は、「変更を承認」する時点で、doEditAccount.php ウェブサイト上で提示されている問題が表示されることです。 、これを除けば、私の他のウェブサイトはすべて正常に動作しています。何か問題のあるアイデアはありますか?</p><p>私は逆方向の問題であるため、ヘッダー削除("Location:Login.php) </p><p><br/>このウェブサイトは以前は正常に動作していましたが、再び動作させたときに突然この問題が発生し、対処できなくなりました。 </p>
P粉819533564P粉819533564471日前410

全員に返信(1)返信します

  • P粉994092873

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

    header('Location: Login.php'); の Location の後のスペースを削除して header('Location: Login.php'); に変更し、ヘッダー関数の下に exit ステートメントを追加して実行を防止してください。リダイレクトに header() を使用する場合は、リダイレクト ヘッダーの送信後にコードを追加することが推奨事項と見なされます。 ######このような:############ リーリー

    返事
    0
  • キャンセル返事