2013-01-12 17 views
-3

我正在使用PHP检查HTML页面顶部的$ _SESSION变量。这里是我的代码:为什么PHP Object Operator在浏览器中被视为关闭标签?

<?php require('sessions.class.php'); 
$session= new session(); 
$session->start_session('_s',false); 

if (!isset($_SESSION('session_id'))){ 
    header(location:'login.html'); 
    } 
?> 

<!DOCTYPE html> 

似乎一切工作,直到达到目标运算符(->)。这就像服务器将其视为PHP结束标签。 ->之后的文字在网页顶部回显。

这类似于在这里问的问题:

why-php-tag-is-closing-on-user

但OP没有去成与很多细节的解决方案。

浏览器= Mozilla

任何帮助,将不胜感激。谢谢!

+1

这不是谁“意见”指出,PHP是服务器端,而不是由浏览器解释浏览器。 – Cristy

+0

您是否复制并粘贴代码?用手写在你的文本编辑器中?这可能是一个看不见的角色 –

+0

@ Cristy-刚刚更新了帖子以纠正它。谢谢 – UberNubIsTrue

回答

1

问题可能是您正尝试在不可能的html文档中运行PHP代码。 PHP开始标记的<被识别为html标记的开始,因此第一个>之后的代码被输出为文本,因为它被解释为关闭html标记。

如果你想使用PHP,使它成为一个.php文件并且回显html。更好的是,你希望尽可能将你的逻辑(PHPcode)和标记(html)分开放在不同的文件中。

搜索“分离PHP和HTML” To get you started

+0

感谢Pankrates。我很欣赏上面提供的解释和链接。 – UberNubIsTrue

相关问题