我有一个指向网页的链接,例如“land.php”。 链接如下所示:
<a href="land.php?id=1&cd=a">link</a>
这将我带到页面land.php,在那里我可以用$id
读取第一个参数(并且它正确地等于1),但我无法读取第二个参数。我试过了$cd
或$_GET['cd']
。它们都不起作用。
如果我尝试isset($cd)
,则说false
。 isset($_GET['cd'])
也是如此。
我怎样才能传递第二个参数(并阅读它!)?
编辑:
一些代码(所以人们很高兴。我认为在这种情况下这是毫无意义的......)。
land.php
<?php
if($_GET['cd']==a)
echo "<h2>HI</h2>";
else
echo "<h2>BY</h2>";
?>
如果我使用$cd
代替$_GET['cd']
,则无论如何都无效..
EDIT2我没有得到任何语法错误,它只是没有表现出预期的效果。
答案 0 :(得分:1)
该值存储在$_GET['cd']
。
尝试使用$_GET
print_r($_GET);
数组
Array
(
[id] => 1
[cd] => a
)
这应该在land.php
页面中,因为get变量仅在请求的页面中可用。
答案 1 :(得分:0)
您的服务器可能已设置为接受分号而不是&符号。尝试更换&amp;与;
答案 2 :(得分:0)
$_GET['cd']
是正确的语法。你实际上在land.php
页面上,即你的浏览器的地址栏是否类似于
example.com/land.php?id=1&cd=a
此外,如果您可以阅读register_globals
,则看起来已启用$id
。这是一个非常糟糕的主意。
您的代码段包含语法错误。我建议如下,包括为开发启用合适的错误报告
ini_set('display_errors', 'On');
error_reporting(E_ALL);
if(isset($_GET['cd']) && $_GET['cd'] == 'a') {
echo "<h2>HI</h2>";
} else {
echo "<h2>BY</h2>";
}