Hi lieber Stuttgarter
Also, hab mal was rumgetüftelt, bei mir klappt es mit 2 separaten Bereichen, aber teste doch mal folgendes Login-Modul:
Code: Alles auswählen
<?php
global $REX;
$thispage = "tvsfeuser";
$areaname = "feuser";
$table_pre = "rex_" . $REX['ADDON']['rxid'][$thispage];
$user_table = $table_pre . "_user";
session_start();
// Auslesen von Benutzern und Passworten
$users = array();
$sql = new rex_sql();
$sql->setQuery("SELECT * FROM " . $user_table);
if ($sql->getRows() > 0 )
{
for ($i = 1; $i <= $sql->getRows(); $i++) {
$users[$sql->getValue('login')]['psw'] = $sql->getValue('psw');
$users[$sql->getValue('login')]['rights'] = $sql->getValue('rights');
$users[$sql->getValue('login')]['status'] = $sql->getValue('status');
$sql->next();
}
}
if (rex_post('username', 'string', '') != "" && rex_post('userpw', 'string', '') == $users[rex_post('username', 'string', '')]['psw']) {
$userrights_array = explode(",", $users[rex_post('username', 'string', '')]['rights']);
if ($users[rex_post('username', 'string', '')]['status'] == 1) {
if (in_array(rex_get('target_id', 'int', 0), $userrights_array)) {
$_SESSION[$thispage][$areaname]['user'] = rex_post('username', 'string', '');
$_SESSION[$thispage][$areaname]['rights'] = $users[rex_post('username', 'string', '')]['rights'];
$_SESSION[$thispage][$areaname]['access'] = "yes";
}
else
unset($_SESSION[$thispage][$areaname]);
}
else
unset($_SESSION[$thispage][$areaname]);
}
else {
$userrights_array = explode(",", $users[$_SESSION[$thispage][$areaname]['user']]['rights']);
if ($users[$_SESSION[$thispage][$areaname]['user']]['status'] == 1) {
if (in_array(rex_get('target_id', 'int', 0), $userrights_array)) {
$_SESSION[$thispage][$areaname]['access'] = "yes";
} else {
$_SESSION[$thispage][$areaname]['access'] = "no";
}
}
}
// Frontend?
if($REX['REDAXO'] != 1) {
if ($REX['CUR_CLANG'] == 0) {
$loginmessage = "Bitte melden Sie sich an!";
$username = "Benutzername:";
$password = "Passwort:";
$buttonlabel = "Anmelden";
}
else {
$loginmessage = "Please log in first!";
$username = "Username:";
$password = "Password";
$buttonlabel = "Login";
}
// Benutzer nicht angemeldet? Dann Formular anzeigen!
if($_SESSION[$thispage][$areaname]['access'] != "yes") {
echo '<p>' . $loginmessage . '</p>
<form name="loginform" method="post" action="">
<label for="username">' . $username . '</label><br />
<input type="text" size="40" name="username" /><br />
<label for="userpw">' . $password . '</label><br />
<input type="password" size="40" name="userpw" /><br />
<input type="submit" name="buttonSubmit" id="buttonSubmit" value="' . $buttonlabel . '" />
</form>';
}
else {
rex_redirect(rex_get('target_id', 'int', 0), $REX['CUR_CLANG']);
}
}
?>
Bin mir da nicht sicher, aber wenns bei Dir klappt hau ich das mal als neue Version raus
Gruß, Michael
