hotti: PHP MySql Passwortschutz

Beitrag lesen

Hello,

Jetzt möchte Kunde, dass das Bild nur in einer Anmeldung mit Level 99 zu sehen ist. Du möchtest dazu eine ordentlich formatierte Fehlermeldung einschließlich Navigation ausgeben, wenn keine Anmeldung im Level 99 vorliegt, d.h., du musst den Content-Type auf text/html ändern. Aber nicht nur den type, sondern auch Last-Modified, denn Fehlermeldungen brauchen keinen Cache. Jetzt haben wir schon zwei Attribute, die zu ändern sind, das Dritte ist der Content selbst, der URL jedoch soll ja bleiben. Wenn Du oo herangest, hast du nur _eine Methode, die das Ganze erledigt, d.h. im Fehlerfall rufst Du in Deinen Kontrollstrukturen nur noch die Methode $object->errpush("Anmleldung im Level '$level' erforderlich", "...").

Dann musst Du aber auch das Template ändern,

Nein. Templates haben mit dem PAB nichts zu tun. Es läuft so ab, dass Eingabefehler ersteinmal nur "gesammelt" werden. Die Methode errpush() kann dazu mehrfach aufgerufen werden.

Im Finale brauchts dann keine weitere Kontrollstruktur, es werden einfach nur die Methoden gerufen, die auf die relevanten Eigenschaften zugreifen; Content-Type und Last-Modified gehören in den Header, der Rest ist Body (als Beispiel). Ich rufe also die Methoden obj.header() und obj.body(). Bis dahin, ist der Body mit Inhalten gefüllt, z.b. auch mit Content, der nur im Level 2 zugänglich sein soll. Das Level wurde jedoch weiter vorn geprüft und errpush() hat eine Liste von Fehlermeldungen erzeugt. Die Methode body() schaut, ob Fehler aufgelaufen sind und tauscht den kompletten Body gegen den bisherigen Body aus.

oder kann man in einem <img>-Element jetzt auch text/html anzeigen?

Im Zweifelsfall schauen wir bei SELFHTML nach ;)

Viele Grüße aus dem sonnigen Rheinessen,
Hotti

PS: Hab heute in Hessen neue Schuhe gekauft, der letzte Schrei! Die werden am Oster-WE in Thüringen ausgiebig getestet, ob sie Harz-tauglich sind ;)