使用url传递php变量

时间:2011-03-26 03:29:56

标签: php url

我想使用url传递一些php变量...我尝试了以下代码。

link.php

<html>
<body>
<?php
$a='Link1';
$b='Link2';
echo '<a href="pass.php?link=$a">Link 1</a>';
echo '<br/>';
echo '<a href="pass.php?link=$b">Link 2</a>';
?></body></html>

pass.php

<html>
<body>
<?php
$a='Link1';
$b='Link2';
echo '<a href="pass.php?link=$a">Link 1</a>';
echo '<br/>';
echo '<a href="pass.php?link=$b">Link 2</a>';
?></body></html>

点击链接(即Link1和Link2)我点击链接2 ....你能搞清楚问题吗?

6 个答案:

答案 0 :(得分:22)

在你的link.php中,你的echo语句必须是这样的。

echo '<a href="pass.php?link=' . $a . '>Link 1</a>';
echo '<a href="pass.php?link=' . $b . '">Link 2</a>';

然后在你的pass.php中你不能使用$ a,因为它没有用你想要的字符串值初始化。

虽然你可以直接将它与这样的字符串进行比较。

if($_GET['link'] == 'Link1')

另一种方法首先将变量初始化为与link.php相同的变量。更好的方法是在单个php文件中包含$ a和$ b变量。然后包括在你将要使用该变量的所有页面中,Tim Cooper在他的帖子中提到。您也可以在会话中包含此内容。

答案 1 :(得分:6)

您分别在A和B的href中传递link=$alink=$b。它们被视为字符串,而不是变量。以下内容应该为您解决:

echo '<a href="pass.php?link=' . $a . '">Link 1</a>';

// and

echo '<a href="pass.php?link=' . $b . '">Link 2</a>';

$a的价值也不包含在pass.php中。我建议制作一个公共变量文件并将其包含在所有必要的页面上。

答案 2 :(得分:2)

以上所有答案都是正确的,但我注意到一些非常重要的内容。在变量和等号之间留一个空格可能会导致问题。例如,(?variablename =value)

答案 3 :(得分:1)

使用这种简单的方法

  $a='Link1';
  $b='Link2';
  echo "<a href=\"pass.php?link=$a\">Link 1</a>";
  echo '<br/>';
  echo "<a href=\"pass.php?link=$b\">Link 2</a>";

答案 4 :(得分:0)

在skytopia找到了这个解决方案......

INSIDE“page1.php”或“page1.html”

// Send the variables myNumber=1 and myFruit="orange" to the new PHP page...
<a href="page2c.php?myNumber=1&myFruit=orange">Send variables via URL!</a> 

    //or as I needed it.
    <a href='page2c.php?myNumber={$row[0]}&myFruit={$row[1]}'>Send variables</a>

INSIDE“page2c.php”

<?php
    // Retrieve the URL variables (using PHP).
    $num = $_GET['myNumber'];
    $fruit = $_GET['myFruit'];
    echo "Number: ".$num."  Fruit: ".$fruit;
?>

答案 5 :(得分:0)

只需将$a='Link1'; $b='Link2';放在pass.php中,您将得到答案并在link.php中加双引号

此处:echo '<a href="pass.php?link=' . $a . '">Link 1</a>';