Ah, OK, jetzt geht es:
- Code: Alles auswählen
class UsersController
extends AppController
{ var $name = 'Users'; var $helpers = array('Form'); function login
() { if(empty($this->data) == false) { //$this->User->validate($this->data['User']); if(($user = $this->User->validateLogin($this->data['User'])) == true) { $this->Session->write('User', $user); $this->redirect('/posts/adminpanel'); exit(); } else { $this->redirect('/pages/accessdenied'); //$this->Session->setFlash('Zugriff verweigert'); exit(); } } } function logout
() { $this->Session->destroy('user'); $this->redirect('/posts'); } }
Aber komischer weise funktioniert der Redirect zum Adminpanel nicht mehr. Dabei bin ich mir ziemlich sicher, dass der schon funktioniert hat.
Um mal den Zusammenhang zu erläutern. Das ist ein Blog. Ich habe eine Tabelle posts in der alle Blog-Einträge abgeleht werden. Dazu gehört:
models\posts.php
controller\post_controller.php
views\posts\index.php -> Zeigt alle Beitrage an ohne Möglichkeiten zum Verfassen, Löschen und Editieren
views\posts\adminpanel.ctp -> Zeigt alle Beiträge an mit Möglichkeiten zum Verfassen, Löschen und Editieren
Dann habe ich eine Tabelle users. In dieser stehen die Personen, die das Blog verwalten:
models\users.php
controllers\user_controller.php
\viewa\users\login.ctp -> Loginformular
So, nach dem der Login erfolgreichwar, das funktioniert, muss jetzt das adminpanel Template aufgerufen werden. Und ich dachte das geht wie oben im Code. Verschiebe ich die Datei adminpanel.ctp nach views\pages ist die Variable
posts unbekannt, deswegen hatte ich sie unter posts liegen, was auch am Freitag noch funktioniert hatte, aber jetzt irgendwie nicht mehr.
Wie löst man so was am besten? Ich hatee mir schon überlegt irgendwie einen admin_controller hinzuzufügen, nur bin ich da irgendwie stecken geblieben.