从2.5迁移指南:
$title_for_layout
已弃用.使用$this->fetch('title');
和$this->assign('title', 'your-page-title');
替代.
他们在视图中工作,但在Controller中做什么?使用$this->assign()
throws致命错误.
我试图阻止会话固定并从owasp网站上阅读以下内容:
会话固定
会话ID仅由您的应用程序生成.永远不要仅因为从客户端收到会话ID而创建会话,创建会话的唯一来源应该是安全的随机生成器.
我使用以下方式处理会话:
ini_set('session.use_only_cookies', 1); // Forces sessions to only use cookies.
ini_set('session.entropy_file', '/dev/urandom'); // better session id's
ini_set('session.entropy_length', '512');
session_start();
Run Code Online (Sandbox Code Playgroud)
并检查是否存在用户ID:
if(isset($_SESSION['user_id'])) {
//act like user is logged in
} else {
//refer user to the login page
}
Run Code Online (Sandbox Code Playgroud)
这是否意味着创建会话的唯一来源是通过安全的随机生成器?
我使用下面的代码创建了一个表单.
<?php $this->Form->create('Course'); ?>
Run Code Online (Sandbox Code Playgroud)
表单文本元素通过以下标签显示...
<?php $this->Form->input('code'); ?>
Run Code Online (Sandbox Code Playgroud)
但我不想显示文本字段的标签.
在上面的编码中应该做些什么改变?