Php重定向错误,页面重定向过多

Php重定向错误,页面重定向过多,php,Php,此代码无法提交主题为外键的页面。它只是将我重定向到manage_content.php页面。我尝试过更改查询和所有其他内容,但它不起作用。我这样做主要是为了提高我的代码质量,所以如果你有任何建议。 功能页面使用 function find_selected_page(){ global $current_subject; global $current_page; if (isset($_GET["subject"])) { $current_subject= find_subject

此代码无法提交主题为外键的页面。它只是将我重定向到manage_content.php页面。我尝试过更改查询和所有其他内容,但它不起作用。我这样做主要是为了提高我的代码质量,所以如果你有任何建议。 功能页面使用

 function find_selected_page(){
 global $current_subject;
 global $current_page;
 if (isset($_GET["subject"])) {

$current_subject= find_subject_by_id($_GET["subject"]);
$current_page = null;
} elseif (isset($_GET["page"])) {
$current_subject=null;
 $current_page= find_page_by_id($_GET["page"]);
 } else {
  $current_subject=null;
  $current_page=null;
     }

}
页面:



当您重定向一次时,您的
$current\u subject
变量永远不会设置,因为您没有发送
GET
参数,因此您陷入重定向循环。我这样做主要是为了提高代码的质量。你能发布工作版和改进版但不是唤醒版吗?因此,我只能假设未设置
$\u GET[“subject”]
$\u GET[“page”]
。这意味着
if(!$current\u subject)
将始终为true,并将重定向到
manage\u content.php
   <?php find_selected_page(); ?>

   <?php if (!$current_subject){
          redirect_to("manage_content.php");
          } ?>
    <?php
        if (isset($_POST['submit'])) {
        $subject_id = $current_subject["id"];
        $menu_name = $_POST["menu_name"];
        $position = (int) $_POST["position"];
        $visible = (int) $_POST["visible"];
        $content = $_POST["content"];
        $menu_name=mysqli_real_escape_string($connection,$menu_name);


       $query = "INSERT INTO pages ( subject_id, menu_name, position, visible, content) VALUES ( {$subject_id} '{$menu_name}', {$position}, {$visible}, '{$content}')";
       $result=mysqli_query($connection, $query);
       if($result){
       $_SESSION ["message"] = "Page created";
       redirect_to("manage_content.php");
       } else{
       $_SESSION ["message"] = "Page Not Created";
       redirect_to("new_page.php");
       }
       } else {
       redirect_to("new_page.php");
       }
       ?>
       <?php include("../includes/layouts/header.php"); ?>
       <div id="main">
       <div id="navigation">


           <ul>
           <?php  $result= find_all_subjects();   ?>
           <?php
            while ($subject=mysqli_fetch_assoc($result)) {
            ?>
            <li><a href="manage_content.php?subject=<?php echo               urlencode($subject["id"]);?>"><?php echo $subject["menu_name"]; ?></a>
      <?php $page_set = find_pages_for_subject($subject["id"]); ?>
          <ul>
            <?php
            while ($page=mysqli_fetch_assoc($page_set)) {
              ?>
                 <li><a href="manage_content.php?page=<?php echo urlencode($page["id"]);?>"><?php echo $page["menu_name"]; ?></a></li>
                <?php
                  }
                ?>
                <?php mysqli_free_result($page_set); ?>
          </ul>
    </li>
    <?php
    }
         ?>
           <?php mysqli_free_result($result); ?>
           </ul>
             </div>


           <div id="page">
                <?php echo message(); ?>
           <form class="" action="new_page.php?subject=<?php echo $current_subject["id"];?>" method="post">
          <p>Menu Name:
          <input type="text" name="menu_name" value=""/>
           </p>
           <p>Position:
           <select name="position">
           <?php
            $page_set=find_pages_for_subject($current_subject["id"]);
            $page_count=mysqli_num_rows($page_set);
            for ($i=1; $i <=($page_count +1) ; $i++) {
            echo "<option value=\"{$i}\">{$i}</option>";
             } ?>
             </select>
             </p>
             <p>visible
             <input type="radio" name="visible" value="0"/>No &nbsp;
              <input type="radio" name="visible" value="1"/>Yes
               </p>
               <p>Content</br>
              <textarea name="content" rows="20" cols="80"></textarea>
               </p>
               <input type="submit" name="submit" value="Create Page"/>
               </form>
                </br>
                 <a href="manage_Content.php">Cancel</a>
                  </div>
                  </div>