使用$ _GET无法正常通过URL发送信息

时间:2012-01-21 02:22:10

标签: php url get

所以我试图做一些非常简单的事情,在通过论坛阅读,并在谷歌上研究后,我仍然无法弄清楚为什么这不起作用。但这主要是因为我仍然是一个非常noobie程序员。我正在尝试通过网址发送信息,并使用$ _GET超级全局脚本来获取信息。

这是链接代码,在名为TESTFORM.php的文件中:

<p>
Here's a link:
<a href = "TESTGET.php?id = 5">ID</a>
</p>

这是TESTGET.php脚本:

<?php
    if (isset($_GET['id']))
        echo 'it is set<br />';
    else
        echo 'it is not set<br />';
?>

每次在页面上出现“未设置”。有什么想法吗?我的电脑里有鬼影破坏了我的代码吗?感谢您花时间阅读本文!快乐的编码!

4 个答案:

答案 0 :(得分:7)

我不是PHP程序员,但我从HTML中知道计算机(尤其是文件名)不喜欢“空格”。请尝试删除id = 5代码中的空格。

答案 1 :(得分:2)

您的问题是URL参数周围的无关空间:

<a href = "TESTGET.php?id = 5">ID</a>

这将导致PHP将参数视为$_GET["id_"]。空间被转换为下划线。

在遇到此类问题时,最好使用var_dump($_GET);var_dump($_REQUEST)。其次,在这种情况下摆脱isset有时是有帮助的。虽然您有自定义错误消息,而不是仅用于此的语言通知。

答案 2 :(得分:1)

您是否尝试删除链接中的空格?

<a href="TESTGET.php?id=5">ID</a>

答案 3 :(得分:1)

代码似乎一目了然,你试过删除空格吗? ?id = 5?id=5