login olurken aşağıdaki Serialization of 'Closure' is not allowed hatasını almaktayım
Hata
[== PHP ==]
Open: /opt/www/www/ACU/laravel/vendor/laravel/framework/src/Illuminate/Session/Store.php
*/
public function save()
{
$this->addBagDataToSession();
$this->ageFlashData();
$this->handler->write($this->getId(), serialize($this->attributes));
$this->started = false;
Exception message: Serialization of 'Closure' is not allowed
LoginControllerdaki postLogin fonksiyonu
[== PHP ==]
public function postLogin() {
//|recaptcha
$rules = array("e_posta" => "required", "password" => 'required');
$validate = Validator::make(Input::all(), $rules);
if ($validate->fails())
return Redirect::back()->with(array('mesaj' => 'true', 'title' => 'Doğrulama Hatası', 'msg' => 'Kullanıcı adı,şifre yada güvenlik kodunu hatalı girdiniz. Lütfen Tekrar Deneyiniz', 'type' => 'error'))->withInput();
$ayar = Ayar::get()->first(); //eğer ldap ile authentice yapılacaksa 1. 0 ise veritabanı ile login olunur
if ($ayar->login_type == 1) {
if (static::ldapLogin(Input::all())) // ldap veritabanında kullanıcı adı ve şifreyi sorgulayıp doğru ise true yanlışsa false döndürür. çalışıyor problem yok
{
return Redirect::intended('portal/index'); // portalControllerdaki getIndex metodunu çağırıyor.
} else {
return Redirect::back()->with(array('mesaj' => 'true', 'title' => 'Hata', 'msg' => 'Kullanıcı adı yasa şifre hatalı', 'type' => 'error'))->withInput();
}
} else {
if (static::databaseLogin(Input::all())) {
return Redirect::intended('portal/index');
} else {
return Redirect::back()->with(array('mesaj' => 'true', 'title' => 'Hata', 'msg' => 'Kullanıcı adı yasa şifre hatalı', 'type' => 'error'))->withInput();
}
}
}
private static function ldapLogin() {
$ldap = new LDAP();
if ($ldap->authenticate(Input::get('email'), Input::get('password')))
{
//eğer böyle bir kullanıcı varsa bilgilerini çek. yoksa yeni kullanıcıyı veritabanına ekle -- Senkranizasyon
$user = User::where('e_posta', Input::get('email'))->first();
if ($user)
{
static::yetkiSenkronla($user->id,$privs);
Auth::login($user);
}
else
{
$userKaydet = new User;
$userKaydet->adi = $adsoyad;
$userKaydet->lastname = $soyad;
$userKaydet->e_posta = $maili;
if($userKaydet->save())
{
static::yetkiKaydet($userKaydet->id,$privs);
Auth::login($userKaydet);
}
else
return false;
}
return true;
}
else
{
return false;
}
}
postLogin fonksiyonu ile yapmak istediğim kullanıcının email adresini ve şifresini alarak LDAP dan sorgu yaparak kullanıcıyı Authenticate yapmak.
postLogin fonksiyonunda return Redirect::intended('portal/index'); satırına kada herşey çalışıyor. dd(); yapınca sayfa sonlanıyor. Ancak return Redirect::intended('portal/index'); gitmesi gereken kontrollerin ilgili metodunda dd(); yapınca sonuç alamıyorum. yukarıdaki hatayı alıyorum. İnternette aradım ancak hatayı gideremedim. Hatayı çözmemde yardımcı olurmusunuz.
son olarak aynı kod localde çalışmakta ancak sunucuya atınca çalışmıyor. storage klasörüne yazma yetkisi de verdim. problem ne olabilir.