2010-11-04 81 views
1

我有一個頁面。用戶提交頁面並將其發送到PHP結果頁面。它工作正常。現在,我希望結果頁面鏈接到另一個頁面,並且該頁面上的元素取決於結果頁面上的內容。我知道如何將表單變量傳遞到另一個頁面,但我不知道任何有關傳遞非表單變量的信息。PHP:在頁面之間傳遞非表單變量?

從我在網上搜索,我最好的猜測是我應該通過URL傳遞。它是否正確?如果是這樣,一個可能的問題:我希望結果頁面傳遞給的頁面將有一個表單,用戶將通過單擊提交轉到另一個結果頁面(表單數據將通過POST發送)。如果用戶使用POST轉到其他頁面,我可以發送非表單數據(舊結果頁面變量)以及表單數據嗎?

+0

可能重複(http://stackoverflow.com/questions/871858/php-pass-variable-to-next-page) – outis 2011-12-28 11:26:43

回答

1

有幾種選擇。然而,最簡單的可能是簡單地使用隱藏的輸入字段傳遞數據。

其他選項將使用會話,存儲到表單之間的數據庫或其中的某種組合。

1

如果您打算使用POST轉到下一頁,最簡單的選擇是在表單中使用input type =「hidden」元素包含要發送的數據。

0

您可以將非表單數據作爲隱藏字段嵌入到第二個表單中。只要

http://..../blah.php?var1=val1&var2=val2

爲你傳遞可以放入一個網址的數據:要確保它也是在鏈路中傳遞,你可以將它添加到URL作爲查詢字符串,如。請確保urlencode()您追加到URL的任何內容。

1

您可能會考慮使用會話來傳遞數據。

2

我強烈建議使用會話。這並不難,PHP使用http://php.net/session_start$_SESSION變量非常容易。 優點是您無需每次點擊都提交表單,也不會在URL中以純文本形式顯示任何信息。

+0

這是一個很好的(或可能即使是最好的)解決方案,如果你的應用程序不只是一系列的形式。 – 2010-11-04 20:28:41

0
<?php 

start_session(); 

$_SESSION['Foo'] = 'Bar' // Add stuff here. 

?> 
[PHP變量傳遞到下一個頁面]的