为什么我得到未定义的索引

时间:2015-01-23 22:24:50

标签: php url undefined-index

我试图通过网址和使用php在两个网页之间传递变量。我收到了未定义的索引错误。

我尝试了多种方法,并且花了最后几个小时来搜索问题,并认为以下代码应该可行 - 可能只是一个概念错误。此时我没有使用ISSET,因为这是一个url pass并且应该设置它。

以下代码位于传递页面上:

<DIV>
   <ul>                                    
     <li> <a href ="bulletindisplay.php?link = Bulletins/December_24_2014.pdf" title="Christmas Eve 2014">Christmas Eve, 2014 </a>; </li>     
   </ul>  
  </DIV>

以下代码在bulletindisplay.php

   <div>        
    <?php   
       $link =  $_GET['link'];
       echo $link;
      ?> 
    </div>   

有人看到我的错误吗?非常感谢你的帮助。

5 个答案:

答案 0 :(得分:1)

删除href属性中的所有空格:

  <DIV>
   <ul>                                    
     <li> <a href="bulletindisplay.php?link=Bulletins/December_24_2014.pdf" title="Christmas Eve 2014">Christmas Eve, 2014 </a>; </li>     
   </ul>  
  </DIV>

答案 1 :(得分:1)

您需要删除网址中link之后的空格。您应该使用isset,因为如果查询字符串中不存在link,您将看到PHP错误。

1. if(isset($_GET['link'])) {
2.     $link = $_GET['link'];
3.     echo $link;
4. }

答案 2 :(得分:1)

只需删除链接中的空格。

  

bulletindisplay.php?链接=公告/ December_24_2014.pdf

答案 3 :(得分:1)

删除所有空格并使用以下代码:

<li> <a href="bulletindisplay.php?link=Bulletins/December_24_2014.pdf" title="Christmas Eve 2014">Christmas Eve, 2014 </a>; </li> 

并在php中:

if(isset($_GET['link'])) {
 $link = $_GET['link'];
 echo $link;
 }

答案 4 :(得分:1)

link = Bulletins / December_24_2014.pdf
//链接后有空格
如果您打印$ _GET,您将获得这样的输出

Array ( [link_] => Bulletins/December_24_2014.pdf )

所以

$_GET['link'] !=$_GET['link_']
//$_GET['link'] is not set that's why you got the error