Benutzer auf private Seite weiterleiten
Aktuelle Themen - Websitebaker Hilfe
Wer seinen Benutzer in Websitebaker eine persönliche oder gruppenabhängige Seite zur Verfügung stellen möchte, kann wie folgt beschrieben seinen Benutzern den Standart-Redirect zur Websitebaker Startseite ersparen und den Benutzer auf seine Persönliche Seite weiterleiten.

Für die Anmeldung verwenden wir die normale Websitebaker Login Maske mit einem redirect auf eine versteckte Zwischen-Seite (im Beispiel wbuser.php)
Diese könnte bspl. so aussehen:
Login im Template:
<?php if(FRONTEND_LOGIN AND !$admin->is_authenticated()) {
$page = 'http://' .$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
?>
<form name="login" action="<?php echo LOGIN_URL; ?>?redirect=<?php echo WB_URL; echo'/pages/'; echo 'wbuser.php';?>" method="post">
<fieldset class="topbox">
<legend><?php echo $TEXT['LOGIN']; ?></legend>
<fieldset class="topbox">
<div class="topboxbody">
<label for="username"><?php echo $TEXT['USERNAME']; ?>:</label>
<input type="text" name="username" id="username" class="text" />
<label for="password"><?php echo $TEXT['PASSWORD']; ?>:</label>
<input type="password" name="password" id="password" class="text" />
<input type="submit" name="submit" value="<?php echo $TEXT['LOGIN']; ?>" class="submit" /><br />
<a href="<?php echo FORGOT_URL; ?>"><?php echo $TEXT['FORGOT_DETAILS']; ?></a><br />
</div>
</fieldset>
</form>
Was macht diese Anmeldung im Template? Da wir vorher noch keinen Benutzernamen haben leiten wir nach dem Login den User nun auf die Seite "meinedomain.de/pages/wbuser.php weiter.
Den User auf seine persönliche Seite weitergeben!
Sobald der User sich jetzt auf unserer wbuser Seite befindet kennen wir seinen Benutzernamen und können diesen verwenden.
Die Code Section erhält nun folgenden Code:
echo'<meta http-equiv="refresh" content="5; url=';
echo WB_URL; echo'/pages/'; echo $admin->get_display_name(); echo '.php';
echo'">';
Websitebaker Login Ziel erreicht:
Gruppenabhängiger Login
Wer anstelle auf die Userseite auf Gruppenseiten weiterleiten möchte kann sich die Variable $group_name zunutze machen und den User aus Gruppe "familie" auf die Seite "familie" weiterleiten.
Beispiel zur Websitebaker Login Weiterleitung für Gruppen:
echo'<meta http-equiv="refresh" content="5; url=';
echo WB_URL; echo'/pages/'; echo $admin->get_group_name(); echo '.php';
echo'">';
Alternative zur Weiterleitung über Location:
<?php
header('location: www.meine.domain.de/pages/username.php');
exit;
?>
Zuletzt geändert am: 06.09.2010 um 07:33
ZurückKommentare
Vielen Dank für die Anleitung - das war genau das, was ich brauchte!
Ich glaube aber, dass die ersten Zeilen überflüssig sind , da wir die Variable $page hier gar nicht weiter verarbeiten, ausserdem wird ein Fehler produziert, da die if-Bedingung nicht mit ener Klammer abgeschlossen ist.
WICHTIG!! auch noch der Hinweis, dass man sich aus dem Backend abmeldet, bevor man das Ganze ausprobiert, da sonst immer auf den aktuell angemeldeten Backenduser weitergeleitet wird - z.B. "Administrator.php"
Bin etwas unerfahren, aber soweit alles hinbkommen, aber was ist wenn ich den Ordner pages nicht benutze sondern das installationspafad benutze?
CODE:
habe sogar den pfad:
echo WB_URL; echo'/pages/'; echo $admin->get_display_name(); echo '.php';
in
echo WB_URL; echo'/'; echo $admin->get_display_name(); echo '.php';
geändert, klapt irgendwie nicht :(
Kommentar hinzufügen
