2012-11-22 48 views
0
独特的网页

,当我登录...我想它来寻找我的新$ _SESSION变量,然后重新装入该页面与所有选定的数据。但不是http://www.theqlick.com/findFriends/lesson.php?username=noahtheteacher重定向到

我得到这个代替:http://theqlick.com/findFriends/lesson.php?username=%3C?%20echo%20noahtheteacher;%20?%3E

这是为什么?它没有加载正确的页面要么...我的代码如下

页面的顶部:

 $new_user = $_SESSION['user_login']; 

     if (!isset($_SESSION["user_login"])) { 
     echo ""; 
     } 
     else 
     { 
    echo "<meta http-equiv=\"refresh\" content=\"0; url=lesson.php?username=<? echo $new_user; ?>\">"; 

     } 

登录实际的html代码:

 <h2>If your a teacher, login below ...</h2> 
     <form action="lessons_login.php" method="post" name="form1" id="form1"> 
      <input type="text" size="40" name="user_login" id="user_login" class="auto-clear" title="Username ..." /><p /> 
      <input type="text" size="40" name="password_login" id="password_login" value="Password ..." /><p /> 
      <input type="submit" name="button" id="button" value="Login to your account"> 
     </form> 
     </div> 
+0

回声 “”; –

回答

0

更换你下面一行:

echo "<meta http-equiv=\"refresh\" content=\"0; url=lesson.php?username=<? echo $new_user; ?>\">"; 

这一个:

echo "<meta http-equiv=\"refresh\" content=\"0; url=lesson.php?username=$new_user\">"; 

由于您不需要使用<? echo $new_user; ?>语法,因为该语法用于将html代码嵌入到PHP代码中,而不是像PHP那样使用PHP本身。

1

由于@nelson建议,你有一个已经被解析线内标签。因此,解释器不会将其解析为开始和结束标签,而是将其作为要回显的字符。

我进一步建议你使用双引号来打开和关闭你的路线,那里面然后单引号,这样你就不必逃避它们。然后,在变量周围放置{}以确保正确解析。

例如,

<?php 
echo "<a href='www.example.com'>{$my_variable}</a>"; 
?>