2011-05-22 33 views
1

我試圖從頁面中獲取一些數據然後郵寄給他們。表單方法 - POST刪除以前的數據

所以從一種形式我得到項目的標題:

//Form1 
<form class="orderFormFields" method="post" action="order"> 
<input type="hidden" name="productName" value="<?php the_title(); ?>"> 
<input class="oButton" value="Order" type="submit"/> 
</form> 

然後就是另一種形式(見下頁)與其他領域的巫婆我需要郵寄:

<?php 
//getting a variable from previous form 
$product = $_POST['productName']; 

if(isset($_POST['submit'])) 
{ 
$name = $_POST['order_name']; 
$mail = $_POST['email']; 
$phone = $_POST['mobile']; 
$date = $_POST['date']; 
$comment = $_POST['comment']; 



//simple mail function goes here 

$done = true; 
} 

?> 

//Form2 goes here 

所以,如果我在if(isset($_POST['submit']))之前插入<?php echo $product; ?>我可以從前一頁看到我的變量,所有作品都找到了。但是當我在郵件功能女巫插入相同的變量if(isset($_POST['submit'])),我不能郵寄該變量,好像它是空的。

表單方法POST是否刪除以前的所有表單數據?因爲,如果我將Form1方法更改爲GET,並且$product = $_POST['productName'];$product = $_GET['productName'];我在Form2提交後獲取該變量,並且我可以將該變量發送給該變量。但我想更喜歡使用POST方法,因爲它具有很好的URL。

回答

1

你忘了你的名字提交按鈕,所以沒有$ _ POST [「提交」]

<input class="oButton" value="Order" type="submit" name="submit" /> 

編輯: 好吧,$ _ POST是數組,只有POST請求後有自己的價值觀。如果您發出另一個帖子請求或更改頁面,$ _POST的先前值將被刪除,並且這些來自新請求的值將被存儲。 可以從第一篇文章在會話存儲數據 - 例如

$_SESSION['postData']['form1'] = $_POST; 
+0

它是窗體2不爲Form1。有2頁。 – iKaspars 2011-05-22 10:53:44

+0

好的,我編輯我的答案。 – T1000 2011-05-22 11:01:16