Bir kullanıcı CakePHP ile oturum açtıktan sonra nasıl kullanıcı oturumunu değiştirebilirim?

3 Cevap php

Ben

$user = $this->Auth->user();

hangi oturumdan geçerli kullanıcıyı alır.

Ben bir yönetici kullanıcı bir müşteri 'olarak hareket' muktedir yapmak istiyorum. Ve ben onlar müşteri arayüzüne girerken sadece kullanıcı oturumunda customer_id değiştirmek edebilmek için umuyordum.

$user['User']['customer_id'] = 4;

Ben Auth geri $ kullanıcı verilerini itmek için bir yol bulamıyorum, çünkü bu çalışmıyor

3 Cevap

Bu çalışması gerekir:

$this->Session->write('Auth.User.customer_id', 4);

Ayrıca Acl ve grup tabanlı izin modelini kullanıyorsanız, sadece customer_id değişen bu yaklaşım bazı yan etkileri olabilir unutmayın.

Sadece o kullanıcı yerine tip müşteri olup olmadığını belirlemek için oturum customer_id kontrol ediyorsanız:

$ User ['Kullanıcı'] ['customer_id'] = 4;

Ben denemek istiyorum:

$ This-> Session-> write ('User.customer_id', '4 ');

Müşteri verileri ile $this->Auth->logout() birleştiren ve daha sonra $this->Auth->login() sahipsiniz.

Ancak, yönetici yine onun kimlik bilgilerini girmeden kendi hesabına iade edebilmek istiyorsanız ek mantığı uygulamak gerekir. Bu bir hayır beyin, ama kayda değer bulunuyor.