【发布时间】:2018-06-14 05:06:30
【问题描述】:
我想在 codeigniter 控制器中添加 __construct() 以将用户数据存储在 localStorage 中,
这是我下面的代码
<?php
class Dashboard extends CI_Controller
{
public function __construct() {
?>
<script type="text/javascript">
localStorage.setItem('ruuser_id', '<?php echo $_SESSION['ruuser_id'];?>');
localStorage.setItem('rufname', '<?php echo $_SESSION['rufname'];?>');
localStorage.setItem('rulname', '<?php echo $_SESSION['rulname'];?>');
localStorage.setItem('bru_staff', '<?php echo $_SESSION['bru_staff'];?>');
localStorage.setItem('ruuser_emailid', '<?php echo $_SESSION['ruuser_emailid'];?>');
localStorage.setItem('ruseller_id', '<?php echo $_SESSION['ruseller_id'];?>');
</script>
<?php
parent::__construct();
}
当我添加脚本代码时,出现以下错误:
Severity: Warning
Message: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/deveventadviser/public_html/development/application/controllers/Dashboard.php:7)
Filename: Session/Session.php
你能建议如何添加 __construct 函数
【问题讨论】:
-
在控制器中你不能这样设置。您必须加载视图并尝试在页脚中添加 JavaScript
-
我上面的代码在 localhost 上运行,但在服务器上不运行
-
您应该在控制器中加载会话或自动加载,然后只有您可以调用会话。请通过此链接=> codeigniter.com/user_guide/libraries/sessions.html
-
你所写的方式根本不是正确的方式......你应该只在视图中编写javascript代码......
-
会话已经在自动加载中加载
标签: php codeigniter codeigniter-3