2014-01-28 45 views
-1
<script type="text/javascript"> 
function myFunction(){ 
document.getElementById("form1").submit(); 
document.getElementById("form2").submit();} 
</script> 

<form id="form1" action="php/create.php"> 
Name </br><input type="text" name="inputName" value="" id=""> </input> 
Hemsida </br><input type="text" name="inputPage" value="http://" id=""> </input> 

<input type="button" onclick="return myFunction()" value="Submit"/> 

</form> 
<form id="form2" action="php/createhemerb.php"> 
<input type="text" name="inputFon" value="" id="fnid" hidden/> 
<input type="text" name="inputJob" value="" id="fnid" hidden/> 
</form> 

我伸手到PHP文件,但都出來了「請填寫表格1」和「請填寫表格2」的Javascript不提交表單TRUE

if(!$_POST['submit']) { 
echo "please fill out the form"; 
header ('Location: please fill out the form 1');} 

我有幾個小時後,我試圖回到第四個位置,但卻無法完成它的工作。

+0

1.內聯JavaScript不好。 2.你的功能不會返回任何東西。 –

+0

另外,爲什麼JavaScript提交呢?組合成一種形式會更容易。另外,如果您確實想使用JavaScript提交,請使用e.preventDefault; – MrJellyhands

+0

我有兩種形式之間的搜索表單,這就是爲什麼我有兩個,但它會工作,如果我只是把兩個相同的ID? –

回答

1

請執行以下操作來解決您的問題:

  1. 添加method='post'到您的形式
  2. 如果您打算檢查$_POST['submit']的價值,你需要命名按鈕「提交」。
  3. 你不能使用echo和header(''),它會設置'header already sent exception'。
  4. header('Location:some text')沒有意義,header('Location:file.html')是正確的語法。

全碼:

<script type="text/javascript"> 
function myFunction(){ 
    document.getElementById("form1").submit(); 
    document.getElementById("form2").submit(); 
} 
</script> 

<form id="form1" action="php/create.php" method="post"> 
Name </br><input type="text" name="inputName" value="" id=""> </input> 
Hemsida </br><input type="text" name="inputPage" value="http://" id=""> </input> 

<input type="button" onclick="return myFunction()" value="Submit" name="submit"/> 

</form> 
<form id="form2" action="php/createhemerb.php" method="post"> 
<input type="text" name="inputFon" value="" id="fnid" hidden/> 
<input type="text" name="inputJob" value="" id="fnid" hidden/> 
</form> 

PHP:

if(empty($_POST) || !$_POST['submit']) { 
echo "please fill out the form"; 
//you can't set the header after echoing 
//header ('Location: please fill out the form 1');//use header('Location: error.html') instead. 
//or output a Javascript redirect echo "<script>window.location = 'error.html';</script>"; 
} 

希望這有助於!

+0

我得到「TypeError:屬性'提交'對象#不是一個函數」 對於位置名稱感到抱歉,用於知道id我去了所有的PHP文件。 –

+0

爲什麼你甚至使用myFunction()來提交表單?只需將改爲,然後移除onclick事件。 – Yani

+0

當我僅使用submit提交時,只能悲傷地提交其中一個表單。 –