2012-07-13 120 views
-1

我在PHP中创建了一个登录表单,并且在从数据库检查了正确的用户名和密码后,我创建了一个会话变量来存储用户名。使用会话变量的PHP登录脚本

session_start(); 
    $_SESSION['user']=$user; 
    header("Location: successPage.php"); 

此后,我将用户重定向到新页面。通过echo声明显示用户名,这在successPage.php中完美工作。然而,当我在其他页面中使用下面的代码,它只是显示了PHP代码,而不是结果

<?php 

    if(isset($_SESSION['user'])){ 
    echo "<p>You are logged in as ".$_SESSION['user']."</p>"; 
    echo "<a href='logout.php'>Click here</a>to logout";} 

?> 
+0

你是什么意思,它只显示PHP代码? – andrewsi 2012-07-13 17:55:57

+0

您已经以“。$ _ SESSION ['user'];?>'输出 – Yoosuf 2012-07-13 17:56:29

+0

登录您是否使用''来附上您的PHP?'因为这就是您的问题听起来像 – Palladium 2012-07-13 17:57:28

回答

1

你需要把<?php在文档的开始和?>在文件的结尾。

但是,文件末尾的?>是可选的。

为此,这是有效的:

<?php 

// my page 
// blabla 

// variables 
$Title = 'boom'; 

?> 

<h1><?php echo $Title; ?></h1> 

<?php 

// I got that boom boom pow 
echo $Title; 

而且,你的页面的扩展名必须是.php。如果您在Windows下,请小心。如果该选项被禁用,则Windows隐藏文件的扩展名。如果你看到一个文件名为page.php,但是你没有看到其他文件扩展名,恐怕你的文件实际上是page.php.dotsomething

+0

是的,我在标签中包含了PHP代码 – Yoosuf 2012-07-13 18:02:06

+0

@Yoosuf你的页面的扩展名是.php吗?你确定110%吗? – 2012-07-13 18:02:50

+0

是的,谢谢我的一个文件使用.HTML格式和事件我使用PHP转义字符它仍然没有解决问题。在将扩展名更改为.PHP – Yoosuf 2012-07-13 18:12:22

0

$ _SESSION ['user']; ?>`是输出

摆脱'