'da oturum açmış olsa bile Null değerini döndürür. Burada yeni kayıtlı kullanıcının mağaza yöntemi verileri veritabanına kaydedilir ve sonra yeni kullanıcı oturum açar. Kullanıcı kimlik doğrulamasından sonra mağaza yöntemi denetleyiciyi tetikler. yöntemini göster ve show yöntemi içinde dd (Auth :: user()) null null döndürür. Route middleware grubunda benim rotalarım ve denetleyicileri var.Onun oturum açamayacağımı anlamadımBu sorunu çözebilirim? Auth :: user(), kullanıcı
public function store(Request $request)
{
//
$data = $request->all();
print_r($data);
$rules = array(
'username' => 'unique:users,username|required|alpha_num',
'password'=>'required|alpha_num',
'full_name'=>'required',
'email'=>'required|unique:users,email'
);
// Create a new validator instance.
$validator = Validator::make($data, $rules);
if($validator->fails()){
$errors=$validator->messages();
return Redirect::route('user.create')->withErrors($validator);
}else{
$user=new User();
$user->username=$request->username;
$user->password=Hash::make($request->password);
$user->full_name=$request->full_name;
$user->email=$request->email;
$user->joined=date('d-m-y H-i-s');
$user->save();
if(Auth::attempt(['username'=>$request['username'],'password'=>$request['password']])){
return redirect()->route('user.show',[$request['username']]);
}
}
}
public function show($user)
{
$indicator=is_numeric($user)?'user_id':'username';
$info=User::where($indicator,'=',$user)->get()->first();
if($info){
dd(Auth::user()); // returns null
$data=array('info'=>$info);
return View::make('user.show')->with('info',$data);
}else{
echo "this user doesn't exist";
$info=User::where($indicator,'=', Auth::user()->$indicator)->first();
$data=array('info'=>$info);
return View::make('user.show')->with('info',$data);
}
}
benim kullanıcı modeli:
namespace App;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Contracts\Auth\Authenticatable;
class User extends Model implements Authenticatable
{
use \Illuminate\Auth\Authenticatable;
protected $table = 'users';
public $timestamps = false;
}
Varsayılan kimlik doğrulamayı kullanıyorsunuz veya elle düzenlediniz mi? – Hamelraj
kullanıcı modelimi benim soruma ekledi ..plz kontrol .. nasıl kimlik doğrulaması kullanıyorum ... hiçbir şey manuel –
Eğer laravel 5.2 kullanırsanız, tüm URL'lerde rotalarda web bekçi grubuna sahip olmalısınız. Çünkü "web" ara katmanındaki oturum ara katman yazılımı. –