Hallo liebe Redaxo-Gemeinde,
ich möchte gerne in R3.0 ein Mitgliederbereich erstellen. In 2.7 habe ich ein Login- und ein Authentifizierungsskript gehabt! Dieses funktioniert aufgrund der Änderung an der Datenbankstruktur nicht mehr.
Gibt es in 3.0 vieleicht eine schnelle und einfache Lösung einen Mitgliederbereich einzurichten (Username und Passwort als Logindaten)...????
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
- Thomas.Blum
- Entwickler
- Beiträge: 5063
- Registriert: 24. Aug 2004, 22:11
- Wohnort: Dresden
- Kontaktdaten: Website
Hilfe!!!!!!!!!!!!!!!!!
Addon simple user ist installiert und aktiviert....tbaddade hat geschrieben:Hej,
habe mich selbst damit noch nicht beschäftigt, brauchst aber wahrscheinlich das Addon "Simple User". Einfach aus dem CVS laden und installieren.
Thomas
kann mir jemand sonst sagen, was an einstellungen in r3.0 vorgenommen werden müssen oder evtl ein link zu ner doku o.ä. schicken???
Gruß
Toshy
Ich würde es Dir gerne zur Verfügung stellen. Jedoch basiert meine (angefangene) Lösung auch auf Sessions. Dh. also, es dauert noch ein wenig bis alle Unklarheiten beseitigt sind.
Aber für den Anfang:
Loginbox:
Auth-Datei:
Was jetzt noch fehlt, ist $this->getValue("type_id");
Es ist, wie gesagt, nur ein Anfang. Die letzten Unklarheiten kommen später nach
Aber für den Anfang:
Loginbox:
Code: Alles auswählen
<!-- / LOGIN-USER BEREICH -->
<div class=content>
<?
$gu = new sql;
?>
<?
if ($_COOKIE['PHPSESSID'] != ''){
$anhang = '';
$anhang1 = '';
} else {
//Check if from the Database
$anhang = '?sess=' . urlencode($_GET['sess']);
$anhang1 = '&sess=' . urlencode($_GET['sess']);
}
if ((!isset($sess_user_id)) || ((int)$sess_user_id == '0')){
// ------------------------- LOGIN
echo "<table width=100% cellpadding=0 cellspacing=0 border=0>
<form action=index.php" . $anhang . " method=post name=login>
<input type=hidden name=login_go value=true>
<input type=hidden name=article_id value=".$this->getValue("id").">";
if ($err_msg != "") echo "<tr><td colspan=2>$err_msg</td><td width=1><img src=$REX[HTDOCS_PATH]/pics/leer.gif width=1 height=25></td></tr>";
echo "
<tr>
<td>NAME: </td>
<td><input type=text name=FORM[rex_login] value='".$FORM[rex_login]."' size=10 class=inp100grey></td>
<td width=1><img src=$REX[HTDOCS_PATH]/pics/leer.gif width=1 height=25></td>
</tr>
<tr>
<td>PSW: </td>
<td><input type=password name=FORM[rex_psw] size=10 class=inp100grey></td>
<td> </td>
</tr>
<tr>
<td><input type=image src=$REX[HTDOCS_PATH]/pics/leer.gif width=1 height=1 border=0></td>
<td><a href=javascript:document.login.submit();>» LOGIN</a>
<td> </td>
</tr>
" . /*
<tr><td colspan=2>$select_out</td><td><img src=$REX[HTDOCS_PATH]/pics/leer.gif width=1 height=40></td></tr>
<tr><td colspan=2>$message</td><td><img src=$REX[HTDOCS_PATH]/pics/leer.gif width=1 height=60></td></tr>
" . /*<tr><td colspan=2><a href=index.php?article_id=10>» REGISTRIEREN</a></td><td><img src=$REX[HTDOCS_PATH]/pics/leer.gif width=1 height=25></td></tr>*/ "
</form></table>";
}else{
// ------------------------- EINGELOGGT
echo "<table width=100% cellpadding=0 cellspacing=0 border=0>
<tr><td colspan=2><a href=index.php?article_id=1&FORM[LOGOUT]=1". $anhang1 . ">» LOGOUT </a></td><td><img src=$REX[HTDOCS_PATH]/pics/leer.gif width=1 height=25></td></tr></table>";
}
?>
</div>
<!-- / LOGIN-USER BEREICH -->
Code: Alles auswählen
<?
setlocale(LC_ALL,"de_DE");
// -------------------------------------------------------------- USER AUTH
$FORM[USR] = false;
$sql = new sql;
$abfrage = new sql;
$islog = new sql;
if ($_COOKIE['PHPSESSID'] != ''){
$anhang = '';
} else {
//Check if from the Database
$anhang = '&sess=' . urlencode($_GET['sess']);
}
//Überprüfen ob Sesion noch gültig
$islog->setQuery("select * from rex__session where session='".session_id()."' limit 1");
if ($islog->getRows() > 0){
$time_minus = time()-1800;
if ($islog->getValue('stamp') < $time_minus){
$islog->query("delete from rex__session where session='".session_id()."' limit 1");
} else {
$islog->query("update rex__session set stamp='".time()."' where session='".session_id()."' limit 1");
}
} else {
$islog->query("insert into rex__session set session='".session_id()."', user_id='0',stamp='".time()."'");
}
//Ende Sessionüberprüfung
$abfrage->setQuery("select * from rex__session where session='".session_id()."' limit 1");
$sess_user_id = $abfrage->getValue('user_id');
$sess_user = $abfrage->getValue('name');
if ((int)$sess_user_id != '0'){
$user_id = $sess_user_id;
$user_name = $sess_user;
}
if ($FORM[LOGOUT] != ''){
$sql->query("delete from rex__session where session='".session_id()."' limit 1");
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time()-42000, '/');
}
session_destroy();
header("Location: index.php?article_id=1&FORM[errmsg]=".urlencode($err_msg).$anhang ."");
exit;
}
if ($FORM[rex_login] != ""){
$user_id = 0;
$user_name = "";
$FORM[USER] = new login();
$FORM[USER]->setSqlDb(1);
$FORM[USER]->setSysID("rex");
$FORM[USER]->setLanguage("de");
$FORM[USER]->setSessiontime(3000);
$FORM[USER]->setLogin($FORM[rex_login],$FORM[rex_psw]);
if ($FORM[LOGOUT] == 1) $FORM[USER]->setLogout(true);
$FORM[USER]->setUserID("rex_2_user.id");
$FORM[USER]->setLoginquery("select * from rex_2_user where user_login='$FORM[rex_login]' and user_password='$FORM[rex_psw]' and user_status=1");
if ($FORM[USER]->checkLogin()) {
$FORM[USR] = true;
// if ((int)$user_id =='0')
$user_id = $FORM[USER]->getValue("rex_2_user.id");
$user_name = $FORM[USER]->getValue("rex_2_user.user_name");
$sql->query("update rex__session set user_id='$user_id',name='$user_name',stamp='".time()."' where session='".session_id()."' limit 1");
$err_msg = 'Login success';
header("Location: index.php?article_id=8&FORM[errmsg]=".urlencode($err_msg). $anhang ."");
exit;
} else {
$err_msg = $FORM[USER]->message;
header("Location: index.php?article_id=8&FORM[errmsg]=".urlencode($err_msg). $anhang ."");
exit;
}
}
?>
Es ist, wie gesagt, nur ein Anfang. Die letzten Unklarheiten kommen später nach
danke
Vielen Dank....
werde bei den nächsten Projekten wohl wieder R2.7 nehmen...
R3.0 ist zwar Klasse, aber es müssen Skripte teilweise komplett neu geschrieben werden...
Falls noch jemand Infos oder zum Thema Mitgliederbereich hat, wäre ich dankbar.....!!!!!
Gruß
Toshy
werde bei den nächsten Projekten wohl wieder R2.7 nehmen...
R3.0 ist zwar Klasse, aber es müssen Skripte teilweise komplett neu geschrieben werden...
Falls noch jemand Infos oder zum Thema Mitgliederbereich hat, wäre ich dankbar.....!!!!!
Gruß
Toshy
geschützter bereich
hi tbaddade,
versteh nicht ganz wie das mit d auth datei funken soll. wo soll die hin und wie soll die genau heissen ?
ausserdem: gibts vielleicht schon eine weiterentwickelte version des "moduls" ?
schöne grüße,
ape
versteh nicht ganz wie das mit d auth datei funken soll. wo soll die hin und wie soll die genau heissen ?
ausserdem: gibts vielleicht schon eine weiterentwickelte version des "moduls" ?
schöne grüße,
ape
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
User online?
Huhu, ich schreibe es mal hier rein, um nicht ein neues Topic zu öffnen.
Ich suche die Lösung zu folgendem Problem. Wie lautet denn dieser kleine Codeschnippsel mit dem ich sehe, welche User sich eingeloggt haben.
Ich hab hier schon gekuckt, ob es irgendwo sowas im Forum gibt, hab aber leider nix gefunden. Wäre schön, wenn mir da jemand helfen könnte, mein PHP ist da leider noch nicht so der hit ;(
Ich suche die Lösung zu folgendem Problem. Wie lautet denn dieser kleine Codeschnippsel mit dem ich sehe, welche User sich eingeloggt haben.
Ich hab hier schon gekuckt, ob es irgendwo sowas im Forum gibt, hab aber leider nix gefunden. Wäre schön, wenn mir da jemand helfen könnte, mein PHP ist da leider noch nicht so der hit ;(