2016-03-17 68 views
0

我有一個表單位於包含get參數的url,我的表單也使用此方法。當表單被提交時,它重寫previos get參數。 有沒有簡單的方法來重寫我的表單參數?如何發送獲取表單wthout失去獲取參數

我記住了一個Javascript解決方案,但是我想知道是否有更簡單的方法?也許使用HTML/PHP?

+0

發送形式該網址包含舊的get參數。頁面A:pageA?old = param包含表單應發送到頁面B:pageB?old = param而不是pageB。並添加你的代碼,看看你現在有多遠 –

回答

1

比方說你從一個GET請求獲得一個參數P1,它應該是這樣的:

http://server.com/?p1=123 

在您的表單,您可以添加隱藏字段,當你提交,將有同樣的效果,這樣的:

<form method="GET"> 
<input type="hidden" value="<?php echo $_GET["p1"]; ?>" name="p1"> 
</form> 

這樣,您可以根據需要多次重新發送變量。

1

我不確定我是否理解你的問題...你可以發佈你的代碼嗎?

我認爲你的意思是這樣的?在index.php中

<input type="hidden" name="id" value="<?php echo $id; ?>" /> 

在return.php

<a href="index.php?id=' . $user['id'] . '">Edit</a> 
u有像這個 -
2

據我所知,UU沒有興趣使用JS,然後使用形式的隱藏元素是唯一的出路

<form action="demo_form.asp"> 
 
    First name: <input type="text" name="fname"><br> 
 
    <input type="hidden" name="country" value="Norway"> 
 
    <input type="submit" value="Submit"> 
 
</form> 
 

 
<p>Notice that the hidden field above is not shown to a user.</p>

問題是你如何使用PHP,對吧?

的解決方案是這裏 -

//In PHP 
if(isset($_GET['fromPerson'])) 
{ 
    echo $fromPerson; 
} 

如此地結合HTML和PHP代碼將是這樣的(假設從prevous網頁A元素被命名爲從FROMPERSON) -

<form action="demo_form.asp"> 
     First name: <input type="text" name="fname"><br> 

     <?php 
     if(isset($_GET['fromPerson'])) 
     { 
      echo '<input type="hidden" name="country" value=".$_POST['fromPerson'].">'; 
     } 

     ?> 

     <input type="submit" value="Submit"> 
</form>