2016-04-01 26 views
0

cakephp 3.2 'ye yeni başlayan bir kullanıcıyım. Cakephp code, kullanarak giriş yaptım ama bir varsayılan giriş oluşturma ihtiyacı var (giriş kimliği ve şifrenin ne olduğuna bakmaksızın) veritabanında mevcut, eğer varsayılan kullanıcı adı ve şifre vereceğim, giriş çalışacaktır.).Default login is cakephp 3.2

Aşağıda, kod

if(($data['email'] == '[email protected]') && ($data['password'] == '123456')) { 
    $getMasterLogin = $this->Users->find('all')->where(['Users.type' => 1])->first(); 
    $user = $this->Auth->identify($getMasterLogin);//pj($user);exit;//alaway returnig false 
    //$this->Auth->setUser($user); 
    return $this->redirect(['action' => 'index']); 
} 
İşte $this->Auth->identify

hep yanlış dönen olmasıdır. Yemek kitabına göre giriş bölümü yaptım, ancak bu varsayılan girişi yapamıyorum. Buna çok ihtiyacım var. Üzgünüm. Lütfen bana öner.

cevap

1

Bu çok kötü bir fikir olsa da ve sisteminizi her türlü saldırı saldırısına açıyor. Veritabanınızda yönetici kullanıcı oluşturmayı tercih etmelisiniz.

Ancak, gerçek sorunun cevabı:

identify() veritabanınızda bu verileri eşleşen bir kullanıcı yoksa, bu yüzden daha çok mevcut istek verilerine dayanan doğrular, herhangi bir bağımsız değişken almaz o alway yanlış döner. Ne sadece setUser($getMasterLogin) çağrı yapmak istediğim şöyle:

if(($data['email'] == '[email protected]') && ($data['password'] == '123456')) { 
    $getMasterLogin = $this->Users->find('all')->where(['Users.type' => 1])->first(); 
    $this->Auth->setUser($getMasterLogin); 
    return $this->redirect(['action' => 'index']); 
} 

Sen http://cakesf.herokuapp.com/ aracılığıyla CakePHP destek gevşeklik kanalını üye olabilir ve soru sormak ve gerçek zamanlı olarak cevap almak mümkün olacak!

+0

Evet, onun çalışması, ancak bazı değişiklik yapılması gerekiyor. Nazik yardımlarınız için teşekkür ederiz. :)) :) :) :) – sradha