2013-02-07 48 views
0

我有2個php頁面。從第一個php頁面(比如1.php)打印一個iframe(顯然使用html)&保持其源代碼作爲第二個PHP頁面(說2.php),所以我的問題是否可以使用2.php中的1.php初始化變量? 像在1.php中我有一個變量$名稱,那麼我可以使用2.php本身$ name的值嗎? 如果沒有,那麼應該比會話更好(我正在使用免費服務器!)。如果從第二個php頁面訪問的第二個php頁面從第一個頁面加載到iframe中,可以從第二個php頁面訪問變量

+0

如果您可以與我們分享您的代碼,以便人們可以幫助您,請注意。並對你的問題更具體。 –

+0

@DevangRathod:我認爲給出的數據是有問題的(已經有2個答案!)並給出代碼會讓你更加困惑,我簡化它,因爲代碼很長,複雜和笨拙:) –

回答

0

您可以通過該變量在iframe的那個URL,然後你可以訪問在IFRAME頁面 - page.php文件VAR1 =值

如:

echo "<iframe src='sitename.com.au/directory/app/pagename.cfm?var1='$val' 
     width='100%' scrolling='vertical'></iframe>"; 
+0

這個機制不會傾向於各種注入?敏感數據不能通過! –

1

沒有,

想想事件的序列,導致頁面被渲染:

  1. 1.PHP請求
  2. 1.PHP執行時,產生的iframe
  3. iframe的返回到瀏覽器時,指向2.PHP
  4. 2.PHP請求
  5. 2.PHP執行時,產生HTML
  6. 2.PHP的輸出返回給瀏覽器

1.PHP執行完畢(和它的所有變量忘了)之前,瀏覽器甚至知道就是了2.PHP。

您可以使用iframe的URL中的查詢字符串將變量傳遞給2.php,如example.com/2.php?var1=val1&var2=val2

另一方面,我認爲你應該重新考慮你是如何構建網站的。例如,您可以使用<div>overflow: scroll代替iframe,以便不需要第二個請求。您也可以考慮使用$_SESSION來跟蹤一些用戶數據。

+0

不通過獲取傳遞數據將是非常不安全的,受各種形式的注入? &敏感的數據只是不能通過:) 我是避免會議,因爲我將在免費的服務器上主持,所以使用大量的會議將減少我可以主辦的天數(會話將分配給我非常快帶寬分配給我):) –

+0

你需要注意逃避通過查詢字符串進入的數據。如果數據很敏感,那麼連接應該被加密。會話不會吃大量的帶寬。 –

+0

會話不會吃大量的帶寬? 我在我最後一個網站進行了實驗,幾乎每個重要機制都使用會話,我的10 Gb帶寬在10到20天內就結束了,而且這樣做的流量並不多? –

相關問題