2012-02-06 162 views
1

我想知道如何使用PHP將URL傳遞到另一個網頁。我知道如果我使用的是HTML表單,我可以使用隱藏字段,其值是我想要獲取的URL。在php頁面之間傳遞網址

我怎麼能一起到另一個頁面通過URL,而無需使用一種形式?然後

+0

你在做什麼?您是否使用PHP從其他頁面的POST或GET表單數據,或者您是否嘗試通過客戶端傳遞頁面之間的一些信息? – 2012-02-06 17:51:59

+0

您可以使用JavaScript或使用GET參數將URL傳遞到所有鏈接? – 2012-02-06 17:53:43

+0

是的,你可以讓查詢字符串將數據傳遞給另一個url .. – 2012-02-06 18:53:51

回答

-1
<a href="somepage.php?url=<?php echo urlencode("http://example.com/page"); ?>">Link</a> 

somepage.php將獲得在可變$_GET['url']的URL。

+0

你需要小心get和URL。根據您的代碼處理方式,以這種方式插入惡意代碼可能非常簡單。 – phpmeh 2012-02-06 17:54:46

+0

@phpmeh,沒有比使用POST或客戶端提供的任何其他數據更容易... – Brad 2012-02-06 18:52:27

+0

@Brad同意。接收URL應謹慎。 – phpmeh 2012-02-06 18:56:10

2

如果該頁面是您自己的,則可以使用會話變量。

更多細節在這裏:http://www.w3schools.com/php/php_sessions.asp

+1

會議是要走的路。你需要用session_start()來初始化它;然後你可以做$ _SESSION ['url'] ='http:// whatever'; – Mala 2012-02-06 17:53:34

1

PHP有一個服務器全局變量,它包含一個referrer變量。

$_SERVER['HTTP_REFERER'] 

http://php.net/manual/en/reserved.variables.server.php

可以呼應這一點,它會輸出,用戶就從頁面。

+0

該問題沒有指定要傳遞的URL是否是引用者,它可以是我認爲的任何URL – 2012-02-06 17:54:58

+0

同意,並且我想到了Cookie和會話以及寫作。 – 2012-02-06 18:14:08

1

你可以通過它使用GET查詢,這在某種程度上形式的數據,所以我不會進入它 或會話變量。在發送端頁面

session_start(); 
$_SESSION['url']="http://site.com" 

,並在接收器上

session_start(); 
$url=$_SESSION['url']; 
unset($_SESSION['url'])l 
+0

我可以用cURL來使用它嗎?我打算捲曲一個網頁,以獲得所有的鏈接到一個數組中。然後我想要它,所以獲取的鏈接將被傳遞到另一個cURL頁面。 – devzspy 2012-02-06 18:19:14

+0

你其實可以。並將其作爲POST數組傳遞。你到底在做什麼? – 2012-02-06 18:21:05

+0

我想製作我訪問的論壇的移動版本。所有者拒絕創建移動版本,所以我決定去做。基本上我會捲起一頁並刮掉鏈接。然後基於鏈接被刮掉,他們點擊一個通用鏈接,獲取刮掉的鏈接,然後將它撇號。 – devzspy 2012-02-06 19:42:36

0

可以發起會話。

Put session_start();在每個頁面的頂部(通常包括一個標題或功能)。 session_start();需要在任何HTML輸出之前。

然後在您的推介頁面上,您可以將值保存到會話數組中: $ _SESSION ['URL'] =「myurl.com」;

在您的第二頁上,您可以像引用任何其他變量一樣引用它: echo $ _SESSION ['URL'];