2011-09-23 34 views
1

在控制器我嘗試這個閱讀和打印$ cookieee,它給我陣列CakePHP的:餅乾並不在視圖

$this->Cookie->write('User', $cookie, true, '+2 weeks'); 

$cookieee = $this->Cookie->read('User') 
echo "<pre>"; 
print_r($cookieee); 
echo "</pre>"; 

但 我的問題

當我打印的任何視圖文件,它不打印任何值。

我嘗試使用下面

echo "<pre>"; 
print_r($cookie); 
echo "</pre>"; 
echo $cookie['username']."=cokie="; 

打印它
$cookieee = $this->Cookie->read('User'); 
echo "<pre>"; 
print_r($cookieee); 
echo "</pre>"; 
+0

閱讀控制器,並設置在一些變量!檢查此 - > http://stackoverflow.com/questions/3264498/how-to-read-cookie-value-in-cakephp-view-file – Rikesh

+0

我知道它但它不正確的方式。 – chetanspeed511987

+0

那麼什麼是「正確的方式」? – JJJ

回答

3

您認爲沒有訪問到cookie ..基本上$這指的是兩個不同的東西的情況下你的控制器和你的視圖..因此基本上將其設置在傳遞給視圖的模型中,即視圖模型,然後在您的視圖中使用它。

與PHP因此沒有代碼不famililar但這是基於.NET中

使用MVC框架,我想這個問題,告訴你如何做同樣的PHP我的理解:how to read cookie value in cakephp view file

,如果你想在這裏打破你可以使用的MVC模式:$_COOKIE[<cookie_name>]

+0

我知道它但它不是正確的方式 – chetanspeed511987

+0

我很抱歉,但如果有人決定擺脫cookie並使用會話(或別的東西)然後考慮你將面臨的問題,這是實現分離關注明日的最佳方式 – Baz1nga

+0

使用'$ _COOKIE'然後 – Baz1nga

2

CakePHP中沒有Cookie助手,既不是在View中訪問它的方法。

您可能希望將cookie 設置爲控制器中的變量,然後在相應的視圖中訪問該變量。

+0

但是當頁面被緩存時,不可能從控制器讀取cookie。 – meotimdihia