簡體   English   中英

使用隱藏的“表單”傳遞變量

[英]Using hidden “form” to pass variables

只是學習有關在php中逐頁傳遞變量,並嘗試為我找到最好的方法,因為我必須在5個頁面之間傳遞〜10個變量。 在第一頁上,具有一個表格是否有意義:

<form method="post">
    <input type="hidden" name="test" value="<?php $test ?>" />
</form>

然后在下一頁上可以使用POST接收此變量嗎? 我不希望使用ACTUAL形式,只需將其用作變量的存儲區域即可。 另外,如果第二頁稱為second.php,我該如何使用action=

任何幫助表示贊賞,謝謝

簡短的回答:表單僅在提交時起作用。 您可能要使用會話

更長的答案:

  • 沒有用戶輸入的表單是沒有意義的。 那就是它的存在。
  • 表單上的action=屬性反映了表單的提交位置。 如果處理頁面為second.phpaction=屬性應指向該頁面。
  • 會議不是唯一的可能性。 PHP也可以設置cookie ,如果服務器不關心數據(僅用作媒介),則可以使用HTML5的localStorage

確實,如果您需要在所有五個頁面中傳遞10個變量,那么最好使用session 您可以將它們全部存儲為$_SESSION變量的一部分,並在任何會話保持活動狀態下從任何頁面訪問它們。

您不能使用$ _POST變量在用戶會話中存儲數據。

您應該使用:

  • 屆會
  • 餅干
  • HTML5存儲

這取決於您要執行的操作,您可以有多種選擇:1.使用表單並按照概述進行張貼。 在這種情況下,在第1頁上,您的action =“ second.php” 2.使用GET通過URL傳遞數據3.會話,如前兩篇文章所述4. Cookies

如果我正確理解了您的問題,則可以嘗試以下操作來發布您的值,而無需使表單出現在頁面上或實際上不在頁面上。 您需要引用jQuery庫才能使用此代碼。

    function hiddenPost(param1) {
        $('<form />')
        .hide()
        .attr({ method: "post" })
        .attr({ action: "http://my-URL-here.com/SomePage.php" })
        .append($('<input />')
            .attr("type", "hidden")
            .attr({ "name": "post_data" })
            .val(param1)
        )
        .append('<input type="submit" />')
        .appendTo($("body"))
        .submit();
    }

您可以以與帶有表單標簽的常規POST相同的方式在POST到的頁面上檢索POST值。

對於PHP:var postData = $ _POST [“ post_data”];

希望能有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM