将变量$ _get传输到另一个页面

时间:2011-02-16 03:16:07

标签: php

我需要将 /files/pvtexp.php?mid=162664&iid=410046&idat=2008/09&sec=2 发送到页面set.html,以便我可以检索信息。我试图让这个工作,我错过了什么?

第1页:

<?php
$uid = "1500"
$sndlnk = "/files/pvtexp.php?mid=162664&iid=410046&idat=2008/09&sec=2";
?>

<a href="set.html?lnk=$sndlnk&user=$uid"> Send to set.html </a>

第2页(set.html):

<?php
$lnk = $_GET['lnk'];
$user = $_GET['uid'];
echo $lnk ."\n";
echo $user ."\n";
?>

5 个答案:

答案 0 :(得分:2)

您需要urlencode() $sndlink

此外,您的网页为set.html。您是否设置了要使用PHP解析的html个文件?

你也可以试试这个......

<?php
$params = http_build_query(array(
   'lnk' => '/files/pvtexp.php?mid=162664&iid=410046&idat=2008/09&sec=2'
   'user' => '1500'
), '', '&amp;');
?>

<a href="set.html?<?php echo $params; ?>"> Send to set.html </a>

答案 1 :(得分:1)

首先,你缺少一个分号。

应该是 $uid = "1500";

然后使用echo语句在你的php中包含链接

echo ('<a href="set.php?lnk='.urlencode($sndlnk).'&user='.urlencode($uid).'">Send to set.html </a>');

答案 2 :(得分:1)

你需要做

<a href="set.html?lnk=<?php echo urlencode($sndlnk); ?>&user=<?php echo $uid; ?>"> Send to set.html </a>

答案 3 :(得分:1)

您需要在通过url发送变量$sndlnk之前对其进行编码:

<?php
$uid = "1500"
$sndlnk = urlencode("/files/pvtexp.php?mid=162664&iid=410046&idat=2008/09&sec=2");
?>

<a href="set.html?lnk=$sndlnk&user=$uid"> Send to set.html </a>

在第二页只需解码字符串:

<?php
$lnk = urldecode($_GET['lnk']);
$user = $_GET['uid'];
echo $lnk ."\n";
echo $user ."\n";
?>

好吗?

答案 4 :(得分:1)

在您的第1页示例中,您设置的查询参数为lnkuser

<a href="set.html?lnk=$sndlnk&user=$uid"> Send to set.html </a>
                  ^^^         ^^^^

但是在您的PHP中,您正在检索lnkuid

$lnk = $_GET['lnk'];
              ^^^
$user = $_GET['uid'];
               ^^^

由于您的Page 1链接中没有“uid”,因此$ user将显示为空白。将页面1上的uid更改为user,事情应该会更好一些