Empfehlungen: Erweiterte Suche

Validierungs-Fehler in Element anzeigen

Datenbankobjekte strukturieren und validieren

Validierungs-Fehler in Element anzeigen

Beitragvon enigmartin » Fr 15. Apr 2011, 19:36

Hallo, da ist er wieder.

Ich hab ein Problem mit der Validierung, eigentlich kein übliches, denn ich komme mit der Validierung von CakePHP ganz gut klar.

Um mal kurz das Prinzip zu beschreiben. Ich habe eine Art Akkord-Community programmiert. Die erste Seite die ein nicht registrierter/angemeldeter Benutzer bekommt ist eine optimierte Startseite, auf der nur eine kleine Übersicht der Einträge im Blog (Neuigkeiten zu der Seite), die Anzahl der Künstler, Alben, Lieder und der Benutzer angezeigt wird und das Registrierungsformular, natürlich noch das Anmeldeformular. Um das Anmeldeformular und die Registrierung geht es mir.

Üblicherweise werden die Anmeldung und die Registrierung über eine bestimmte Aktion wie www.example.com/users/login oder www.example.com/users/register aufgerufen. Diese Formulare habe ich nun aber in Elemente ausgelagtert bzw. kopiert und für die Startseite optimiert.

Das Anmeldeformular schicke ich zu aller erst an UsersController::login() und schicke es bei Erfolg an die Startseite zurück und bei Mißerfolg ebenfalls. Je nach dem ob der Benutzer angemeldet oder nicht angemeldet wurde, wird ihm eine andere Startseite angezeigt. Demnach bei erflogreicher Anmeldung den Inhalt der nur für registrierte Benutzer sichtbar sein soll und bei Mißerfolg wieder die Startseite wie vorher beschrieben.

Wenn nun bei der Registrierung irgendwelche Daten falsch sind, Benutzername schon vorhanden, e-Post schon vorhanden, Passwort zu kurz uvm. dann werden die Daten zwar nicht in die Datenbank geschrieben, also die Validierung klappt, aber das Problem ist es werden keine Fehler angezeigt, außer der Auth-Meldung, die Global auf jeder Seite angezeigt wird.

Ich hab nun schon versucht die Validierung einfach im AppModel zu schreiben und darüber die Fehler auch für alle Seiten verfügbar zu machen aber das klappte nicht. Ich weiß das da irgendwas mit der Variabe $uses möglich ist, wobei die ja nur für Controller ist, aber wie ich das ganzen umsetzen soll, weiß ich nicht.

Ich denke sowas sollte doch schonmal vorgekommen sein, wenn man Beispielsweise ein Newsletterformular via Element auf die Seite bringt, das müsste ja auch validiert werden, oder sehe ich das falsch.

Ich würde mich freuen wenn auch da mir jemand mit seinen Erfahrungen aushelfen könnte.

Danke im vorraus.

PS: Zum besseren Verständniss habe ich mal zwei Schnappschüsse hochgeladen.

Benutzer ist nicht angemeldet und hat versucht sich zu registrieren, landet demnach wieder auf der Startseite; ohne Fehleranzeige:
startseite-abgemeldet.png
startseite-abgemeldet.png (125.12 KiB) 107-mal betrachtet


Benutzer hat sich angemeldet und bekommt ebenfalls die Startseite, die nur Angemeldete Benutzer sehen:
startseite-angemeldet.png
startseite-angemeldet.png (147.19 KiB) 107-mal betrachtet
Benutzeravatar
enigmartin
 
Beiträge: 40
Registriert: So 27. Mär 2011, 10:42
CakePHP-Version: 1.3.8
OS: Windows 7

Zurück zu Models

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste