您好我想在URL链接中设置一个关键字值,我必须通过邮件发送,所以在点击该链接时,用户将会出现在我的网站上,我希望通过此$this->params['url']
读取该关键字值获得此值后,我必须将其设置为我的视图页面,其中所有结果将根据关键字值进行。
我对不同的电子邮件有不同的关键字,因此根据收件人邮件,当他/她点击它时,他/她应该根据他/她的关键字在他/她的视图中获得结果。所有编码都在cakephp中完成
答案 0 :(得分:0)
如果你的行动是 -
public function identify_user($userId = null){
}
然后任何网址都会在www.example.com/users/identify_user/4以$userId
为4;
现在,如果
public function identify_user($userId = null, $identificationId = null){
}
然后任何网址都会显示为www.example.com/users/identify_user/4/abcdef12345
,$userId
为4,$identificationId
为abcdef12345;
还有其他方法,如命名参数或查询参数。命名参数找到名称=> $值; (注意:尽量避免使用命名参数,它会折旧)
您可以使用查询参数构建网址,然后使用$this->request->query();
如果您使用第一个方法平均通过参数,那么将链接作为 -
$link = $this->Html->link('Link name to display', array('controller' => 'Users', 'action' => 'identify_user', $user['User']['id']));
此处$user['User']['id']
来自数据库;
命名参数:
$link = $this->Html->link('Link name to display', array(
'controller' => 'Users',
'action' => 'identify_user',
'user_name' => $user['User']['name'],
'unique_id' => String::uuid()
)
);
读取命名参数 -
$this->request->params['named']['unique_id'];
查询参数 -
$link = $this->Html->link('Link name to display', array(
'controller' => 'Users',
'action' => 'identify_user',
'?' => array(
'user_name' => $user['User']['name'],
'unique_id' => String::uuid()
)
)
);
读取查询参数 - $这 - >请求 - >查询( 'UNIQUE_ID');