php urlencode不起作用或者是别的东西

时间:2014-12-21 16:41:02

标签: php urlencode

我正在尝试PHP并且遇到了urlencode。请参阅两个代码

第一份文件@

<HTML>
   <HEAD>
      <TITLE>My Movie Site</TITLE>
   </HEAD>
   <BODY>
    <?php 

    // delete as per page 34 define ('FAVMOVIE', 'The life of Brian'); 
    echo    'My favorite movie is ';
    echo    $_GET['favmovie'];
    echo '<br/>';
    $movierate = 5;
    echo 'My movie rating for this movie is: ';
    echo $movierate;
    ?>

   </BODY>
</HTML>

第二份文件

<HTML>

   <HEAD>

   <TITLE>Find my Favorite Movie!</TITLE>

   </HEAD>

   <BODY>
            <?php 

                $myfavmovie = urlencode ('Life of Brian');
                echo    '<a href = "http://php.aryapratinidhisabha.org.uk?favmovie=$myfavmovie\">'  ;
                echo    'Click here to see information about my favorite movie!' ;
                echo    '</a>'  ;

            ?>

   </BODY>

</HTML>

我一直得到以下结果:

在第一行:&#34;我最喜欢的电影是$ myfavmovie \&#34;

在第二行:&#34;我对这部电影的评分是:5&#34;

我的任务是:

  1. 为什么我没有进入第一行:&#34;我最喜欢的电影是Life of Brian&#34;?
  2. 这本书说,在网址中结果应为&#34; http://php.aryapratinidhisabha.org.uk/?favmovie= $ Life + of + Brian而不是它给出http://php.aryapratinidhisabha.org.uk/?favmovie= $ myfavmovie。那是为什么?
  3. 谢谢,

    纳温

2 个答案:

答案 0 :(得分:0)

你应该使用双撇号。变量不会在单个变量之间进行评估。

这样:

echo    "<a href = \"http://php.aryapratinidhisabha.org.uk?favmovie=$myfavmovie\">"  ;

答案 1 :(得分:0)

除非使用双引号,否则不能像在几乎所有其他情况下那样将字符串插入字符串中。意思是:你应该反转单引号和双引号链,如下所示:

echo "<a href='http://php.aryapratinidhisabha.org.uk?favmovie=$myfavmovie'>";

或连接字符串,如下所示:

echo '<a href="http://php.aryapratinidhisabha.org.uk?favmovie='.$myfavmovie.'">';