Főoldal   Súgó Bejelentkezés Regisztráció  
Üdvözlünk, Vendég. Kérlek jelentkezz be vagy regisztrálj.

Jelentkezz be a felhasználóneveddel, jelszavaddal és add meg a munkamenet hosszát
1 évet fizetsz kettőt kapsz a CakePHP tárhely programban!
Silver csomag pl.: 1000MB tárhely, MySQL vagy PostgreSQL.
.hu domain címmel - 12.900 Ft + Áfa / 2év
Hírek: Exkluzív bejelentés CSAK CakePHP.hu fórumlátogatóknak!  Általános blabla...
Oldalak: [1]   Le
Nyomtatás
Téma: Utolsó bejelentkezés dátuma  (Megtekintve 147 alkalommal)
« Dátum: 2011. November 22. - 15:20:31 »
kisspepe Nem elérhető
Kölyök tag

Profil megtekintése E-mail
**
Hozzászólások: 88



Sziasztok!

Szeretném letárolni minden felhasználónál az utolsó bejelentkezés dátumát. Ehhez a User táblában létrehoztam a last_login mezőt.

A mező mentését a login metódusban végezném, de a mező tartalma változatlan marad. Rákerestem a problémára, találtam is fórumokat, ahol ugyan így próbálták megoldani a problémát, de végülis megoldást nem találtam.

Jelenleg a login függvényem a last_login mező mentésével a következőképpen néz ki:

Kód:
function login() {
if($this->Session->read('Auth.User')) {
$this->Session->setFlash(__('You are logged in!', true));

$this->User->id = $this->Auth->User('id');
$this->User->saveField('last_login', date(DATE_ATOM));
$this->redirect('/', null, false);
}
}

A bejelentkezés működik, hibaüzenetet nem dob, de a last_login mezőt változatlanul hagyja.
Naplózva
« Válasz #1 Dátum: 2011. November 23. - 09:40:32 »
rrd Nem elérhető
Adminisztrátor
Teljes tag

Profil megtekintése WWW E-mail
*****
Hozzászólások: 206



Itt egy működő változat. A gond így ránézésre az, hogy a session változó később jöhet létre annál mint ahol vizsgálod. Ezért az helyett az auth-ot vizsgáljuk.

Kód:
if(!empty($this->data)){
                        //updateeljük a last_logint
                        if($this->Auth->user('id')){
                                $this->User->id = $this->Auth->user('id');
                                $this->User->saveField('last_login', date('Y-m-d H:i:s'));
                                $this->redirect('/');
                        }
}
Naplózva
« Válasz #2 Dátum: 2011. November 26. - 15:24:17 »
kisspepe Nem elérhető
Kölyök tag

Profil megtekintése E-mail
**
Hozzászólások: 88



Elkezdtem a program más részével foglalkozni, és el is felejtettem, hogy ez még nem működik. Most jutott eszembe.

A login metódusba betettem egy az egybe a kódot amit írtál, és nem működik. Bejelentkezéskor üresen hagyja a last_login mezőt.
Naplózva
« Válasz #3 Dátum: 2011. November 28. - 16:38:03 »
rrd Nem elérhető
Adminisztrátor
Teljes tag

Profil megtekintése WWW E-mail
*****
Hozzászólások: 206



Akkor valahol máshol lesz a gubanc. Pl elgépelted az sql-ben a mező nevet és pl lst_login van last_login helyett. Vagy a modelben szerepel valami rosszul. Vagy be van cachelve és amiatt nem megy. Vagy valami más Mosolyog
Szóval alaposan át kell nézni a kódot ilyen hibákat keresni.
Debug nem ír ki semmit? Ilyenkor tele szoktam tűzdelni debug üzenetekkel a kódot - esetenként még a szóban forgó cake alaprendszer kódot is - és csak kijön valami.
Naplózva
« Válasz #4 Dátum: 2011. November 29. - 11:21:06 »
kisspepe Nem elérhető
Kölyök tag

Profil megtekintése E-mail
**
Hozzászólások: 88



Hát majd megpróbálom megoldani valahogy, de nem most. Egyenlőre erre a részre nincs időm. Dec 17-re egy alapjaiban működő progit kell összehoznom, így ez majd marad az utánra.

Ha rájövök a hiba okára, majd megírom.
Naplózva
Oldalak: [1]   Fel
Nyomtatás
Ugrás:  

2007 CakePHP Magyarország Fóruma
Powered by SMF 1.1.4 | SMF © 2006, Simple Machines LLC
Magyar fordítás: SMF Magyarország
| Üzemelteti / Hosting: Elite Media     -     Támogatóink: Loovers Szexshop | És a HHO generátor