将cookie存储在数据库中

时间:2013-01-03 13:44:12

标签: php cakephp

当用户登陆页面时,我想在我的数据库中自动存储cookie。 cookie“someCookie”之前已设置在不同的页面上。

我的想法是将cookie存储在变量中,然后通过表单发送。

<?php
$someCookie = $_COOKIE['somecookie'];
echo $this->Form->create('Some object');
echo $this->Form->input('something', array('type' => 'hidden', 'value' => $someCookie));
echo $this->Form->end('Save this');
?>

然后我会做一些按下提交按钮的东西。然而,这对于解决这个问题感觉就像一个非常黑客的方式。

这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

为什么不直接在会话中保存当前时间?然后在下一页阅读会话并进行比较? 那似乎不那么“hacky”

$this->Session->write('pageStart', time() );

然后在下一页:

$timeOnPage = $this->Session->read('pageStart', time()) - time();

然后你可以继续保存$ timeOnPage变量,而不会在视图中出现问题。

一些阅读:http://book.cakephp.org/2.0/en/core-libraries/components/sessions.html