2014-07-09 62 views
1

我在點擊表單提交按鈕時發生PHP檢查時出現問題,但是通過jQuery加載了該表單。因此,我有如果(isset($ _ POST [「submit_content」])),並且完成時,使用變量$ content回顯「將被髮送」,但它什麼也不做。加載jQuery的POST表單

這裏是我的index.php

<html> 
<head> 
<title>INDEX</title> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
</head> 
<?php 
session_start(); 
$content = ""; 
if(isset($_SESSION["logged"])) 
{ 
    $con = mysqli_connect("localhost","root","","ntech") or die("Error " . mysqli_error($link)); 
    $get = mysqli_query($con, "SELECT * FROM users WHERE ses_id='$_SESSION[logged]'"); 
    $got = mysqli_fetch_array($get); 
    $header_account = "Signed in as ".$got[1]." | <a href='?&logout=true'>Logout</a><br/>"; 
    $access = $got[6]; 
    if($access >= 2) //moderator - can submit & edit 
    { 
     $content = "<p id='content'></p><script>$('document').ready(function(){ 
      $('#content').load('mod_view.html'); 
      });</script>"; 
      if(isset($_POST["submit"])) 
      { 
       if(isset($_POST["mod_view_radio"])) 
       { 
        $val = $_POST["mod_view_radio"]; 
        if($val == "radio_send") 
        { 
         $content = "<p id='content'></p><script>$('document').ready(function(){ 
           $('#content').load('send_content.html'); 
          }); 
          </script>"; 
         if(isset($_POST["submit_content"])) 
         { 
          $content = "will be sent"; 
         } 
        } 
        else 
        { 
         $content = "<p id='content'></p><script>$('document').ready(function(){ 
            $('#content').load('see_content.php'); 
          });</script>"; 
         if(isset($_POST["text"])) 
          echo "LOLED"; 
        } 
       } 
       else 
        echo "nothing set<br/>"; 
      } 
      //else echo "not submitted<br/>"; 
    } 
} 
else 
    $header_account = "<a href='login.php'>Login</a> | <a href='register.php'>Register</a>"; 
?> 
<body> 
<?php echo $header_account.$content; ?> 
</body> 
</html> 

,這是send_content.html,其中載有JQ:

<html> 
<head> 
<style> 
h1,h2,h3,h4,h5,h6,p {margin:0;} 
</style> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
</head> 
<body> 
<form action="#" id="send_content" method="post"> 
    <input type="number" placeholder="year" name="year" id="year"> 
    <input type="number" min="1" max="31" placeholder="day" name="day" id="day"> 
    <select placeholder="month" id="month" name="month"> 
     <option>January</option> 
     <option>February</option> 
     <option>March</option> 
     <option>April</option> 
     <option>May</option> 
     <option>June</option> 
     <option>July</option> 
     <option>August</option> 
     <option>September</option> 
     <option>Octomber</option> 
     <option>November</option> 
     <option>December</option> 
    </select><br/> 
    <h6>*NOTE: Years below 0 will be considered as years B.C.!</h6><br/> 
    <textarea placeholder="Description" style="max-width:350px" name="description" id="description"></textarea><br /> 
    <input type="submit" name="submit_content" id="submit_content"> 
</form> 
</body> 
</html> 

我在做什麼錯?請幫忙!

+1

我可以肯定地告訴你,你對header(「Refresh:1; url ='index.php'」);'的調用將會在腳本當前的放置中失敗。在執行該語句時,您已經開始輸出HTML。它應該在這一點上拋出一個錯誤或警告(不記得是哪一個)。有什麼影響_「頭文件無法修改,輸出已經發送。」_... – War10ck

+0

是否在您的提交按鈕幫助中添加'value =「Submit」'?即使值是空的,isset也應該返回true,但是不會試圖嘗試。 – Kyle

+0

@ War10ck我對logout()函數沒有任何問題,也在其他站點上嘗試過。當然,我可以用jQ來刷新或者類似的東西,但是這個功能對我來說就像是一種魅力。 – user2908353

回答

0

從我可以告訴$內容將永遠是if($val == "radio_send")

"<p id='content'></p><script>$('document').ready(function(){ 
     $('#content').load('send_content.html'); 
    }); 
</script>"; 

結果是否爲truefalse

而且由於echo "LOLED"if(isset($_POST["text"]))計算結果爲true只被調用,它可能只是if($val == "radio_send")回報false和腳本走下else分支。