我使用;
$referrer = $_GET['_url'];
如果我echo $referrer;
它將正確顯示。
如果我在$ _POST中使用$ referrer,它是空的。我認爲由於$ referrer被分配給$ _GET。
如何將$ referrer的值提取到另一個變量中,以便它不再分配給$ _GET?
我希望是有道理的..
我使用;
$referrer = $_GET['_url'];
如果我echo $referrer;
它將正確顯示。
如果我在$ _POST中使用$ referrer,它是空的。我認爲由於$ referrer被分配給$ _GET。
如何將$ referrer的值提取到另一個變量中,以便它不再分配給$ _GET?
我希望是有道理的..
使用clone
關鍵字,如在本文中的例子: http://php.net/manual/en/language.references.php
__clone方法調用非對象 – DT85 2011-03-21 07:49:07
$_POST
將只包含數據如果從形式發送。
所以,你的代碼基本上是正確的。因爲您在URL中使用引薦來源。
如果你真的想從$_POST
$referer
,你就會有這樣的代碼的東西:
<form method="post" action="somewhere.php">
<input type="hidden" name="_url" value="{place the referrer here}" />
</form>
或者,像@邁克爾吉列的回答,您可以更改與$_REQUEST。
將工作在我的應用程序?這件事真的讓我煩惱!我完整的代碼:http://www.stackoverflow.com/questions/5363810/get-and-post-issue – DT85 2011-03-21 08:11:05
你能發表一個你可能喜歡做什麼的例子嗎?
$referrer = $_REQUEST['_url'];
將返回上都獲得真正的和POST請求
謝謝@邁克爾吉列 - 我的完整示例:http://www.stackoverflow.com/questions/5363810/get - 問題 – DT85 2011-03-21 08:12:02
希望是有道理的..
抱歉,但它不:)
$referrer
成爲與$_GET['_url']
無關的獨特變量。它已經包含從$ _GET提取的值你的問題在別的地方。 看來你只是試圖訪問不存在的變量。因爲每個變量在執行後都會與整個PHP一起死亡。
PHP腳本執行是原子的。它不像桌面應用程序一直在你的瀏覽器中運行,甚至不是持久連接到你的桌面應用程序的惡魔。它更像是一個命令行工具 - 執行它並退出。它運行離散:
所以,如果你設置你的$引用在一個實例中,並試圖在另一個實例中訪問它,它會失敗。你必須重新發送它的價值與下一個電話
@Col。 Shrapnel:我一直在試圖找出這個問題2天了..我試圖理解爲什麼$ referrer變空了以及如何解決它.. http://stackoverflow.com/questions/5363810/get- and-post-issue – DT85 2011-03-21 08:06:31
@ DT85 $ _GET ['_ url']在你的其他問題中顯然是空的。你爲什麼期待它和爲了什麼? – 2011-03-21 08:12:32
@Col。 Shrapnel:方案:'$ referrer =「1234567」'。好的,當用戶在表單中提交他們的電子郵件地址時,'if($ _POST ['email']){',它應該這樣做:'$ mysqli-> query(「UPDATE coming_soon_emails SET signup = signup + 1 WHERE code = '「。$ referrer。」'「);'在JS中它應該隱藏表單並顯示其他div。在$ if($ _POST ['email']){'之前和之後'$ referrer'不是空的。我需要它,因爲如果用戶註冊,它應該更新引用者的「註冊」列(通過在DB中使用$ referrer的查找)並用count +1來表示「他們引用了另一個人」。 – DT85 2011-03-21 08:23:42
你是什麼意思與「我使用$ _POST內的$ referrer」? – 2011-03-21 08:04:46
@Col。彈片:我會給你我的例子在你的答案.. – DT85 2011-03-21 08:05:47