2012-02-06 95 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'];