 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
13.10.2005, 06:40
|
#1
|
|
TP-Junior
Registriert seit: Oct 2005
|
Benuzer Anmeldung Session Problem
Hallo zusammen ,
ich arbeite seit einigen Tagen mit Dreamweaver und wollte eine Benutzeranmeldung
für meine HP machen . Habe mit Dreamweaver ein Formular erstellt und mit dem
Assistent für BentzerAnmeldung eine Abfrage erstellt .
Dies Klappt auch wunderbar . Wenn ich die richtigen Daten eintippen wird mir der Zugang gewährt .
Aber wenn ich jetzt eine Seite mit dem Assistent für Zugriff auf Seite beschränken erstelle . Habe ich nie Zugang zur Seite als wäre ich nie eingeloggt . Wo kann da der fehler liegen , ich habe sogar alles schon nach Tutorials versucht aber es geht nicht :-(
Hoffe mir kann da jemand helfen .
mfg
Dennis
|
|
|
13.10.2005, 08:40
|
#2
|
|
TP-Senior
Registriert seit: Mar 2004
|
Hoi DennisCM
Wenn du ein Anmeldeformular erstellst brauchst eine datenbank, welche dort den benutzername und passwort abgespeichert ist. Dann brauchst ein Formular mit zwei feldern "Benutzername" und "Passwort" zum schluss noch ein absende Button. Beim Anmeldeformular musst diese datenbank mit den benutzerdaten einbinden, und dann bei "Serververhalten" die funktion "Benutzer anmelden" wählen.
Jetzt wird beim anmelden die Benutzerdaten in der Datenbank abgefragt und fals du deine angaben richtig eingegeben hast, kommst dan auch eine Seite weiter ...
Nach erfolgreichem anmelden, werden die Seiten auf Benutzername und Passwort überprüft ... dies geschieht mit dem "Zugriff auf Seite beschränken". Wenn nur ein Benutzer das CMS verwaltet dann wählst "Beschränkung basiert auf: Benutzername und Kennwort".
Wichtig... die Funktion "Zugriff auf Seite beschränken" nicht beim Anmeldeformular selber anwenden sondern erst bei den anderen Seiten im CMS.
Hast du das genau so auch gemacht?
__________________
Gruss Uranus
_____________________________________________
>> www.wussel.ch >>
_____________________________________________
|
|
|
13.10.2005, 13:04
|
#3
|
|
TP-Specialist
Registriert seit: Feb 2002
Ort: Wien
|
Hallo Dennis,
ich weiß nicht, ob du mein Tutorial zu dem Thema schon kennst: http://www.dw-worx.de/index.php?id=110
Dort ist alle haarklein beschrieben - sollte verständlich sein
Gruß,
Jürgen
|
|
|
17.10.2005, 16:35
|
#4
|
|
TP-Junior
Registriert seit: Oct 2005
|
Hallo leute ,
also das Tutorial kenne ich , habe es auch alles so gemacht aber es geht nicht, verstanden habe ich es denke ich auch , ist ja im prinzip ganz einfach , deshalb verstehe ich es ja nicht .
Muss man denn irgendwo angeben oder irgendwie den Benutzernamen abspeichern so das die anderen seiten wissen , das sich jemand angemeldet hat ?
|
|
|
17.10.2005, 16:47
|
#5
|
|
TP-Specialist
Registriert seit: Feb 2002
Ort: Wien
|
Anscheinend kennst du das Tutorial nicht so genau  :
Zitat:
Weitere Seiten im geschützten Bereich
Die Vorgangsweise ist analog zu der oben erstellten Datei members_index.php. In jeder erstellten Datei wird das Verhalten "Zugriff auf Seite beschränken" angewendet und die Anzeige der Datei für nicht autorisierte Benutzer damit verhindert.
|
"Abspeichern" muss man den Benutzernamen in der DB natürlich auch - steht gleich auf der ersten Seite des Tutorials, also bitte einfach nur lesen.
Gruß, Jürgen
|
|
|
17.10.2005, 17:31
|
#6
|
|
TP-Junior
Registriert seit: Oct 2005
|
also so daneben bin ich nun auch wieder nicht
das ist mir klar das der benutzer sowie password abgespeichert werden muss . Die anmeldung an sich geht ja , ich werde ja z.b. an eine beliebige seite weitergeleitet wenn ich auf senden gehe und das Passwort und der Benutername richtig waren . Aber seiten mit beschränktem zugriff werden generell nicht angezeigt , immer fehler meldung .
|
|
|
17.10.2005, 17:36
|
#7
|
|
TP-Specialist
Registriert seit: Feb 2002
Ort: Wien
|
Zitat:
|
Zitat von DennisCM
also so daneben bin ich nun auch wieder nicht 
|
Alles klar, ich wollte dich nicht vorverurteilen
Zitat:
|
das ist mir klar das der benutzer sowie password abgespeichert werden muss . Die anmeldung an sich geht ja , ich werde ja z.b. an eine beliebige seite weitergeleitet wenn ich auf senden gehe und das Passwort und der Benutername richtig waren . Aber seiten mit beschränktem zugriff werden generell nicht angezeigt , immer fehler meldung .
|
Technisch läuft das so, dass eine PHP-Session den Benutzer bei jeder aufgerufenen Seite identifiziert. D. h. du musst in jeder Datei die Session weiterführen, da sonst bei einem Wechsel von einer nicht geschützten Seite auf eine geschützte Seite die Session verloren geht.
Welche Fehlermeldung bekommst du denn eigentlich angezeigt? Sonst stochern wir hier noch länger im Dunkeln ...
|
|
|
17.10.2005, 18:54
|
#8
|
|
TP-Junior
Registriert seit: Oct 2005
|
ich bekomme einfach die beschränkte site nicht angezeigt .
Ich kann ja angeben welche Site gezeigt werden soll wenn ich keinen Zugriff habe und diese kommt immer . Ich kann mich auf meiner Login seite anmelden und dann leitet sie weiter an die seite mit dem beschränkten zugriff und diese zeigt mir dann nicht den inhalt sondern leitet weiter an die seite welche anzeigt das ich nicht angemeldet bin .
Vielleicht wird ja die session nicht weitergeleitet aber was kann man da schon falsch machen wenn die sachen alle mit diesen Assistenten vom Dreamweaver laufen ?

|
|
|
17.10.2005, 19:18
|
#9
|
|
TP-Specialist
Registriert seit: Feb 2002
Ort: Wien
|
Poste einfach mal den Quellcode der zugriffsbeschränkten Site.
|
|
|
18.10.2005, 07:10
|
#10
|
|
TP-Junior
Registriert seit: Oct 2005
|
So hier mal der Quell Code , es soll einfach erstmal die meldung OK auf dem Bildschirm erscheinen .
Also hier ist er
Zitat:
<?php
if (!isset($_SESSION)) {
session_start();
}
$MM_authorizedUsers = "";
$MM_donotCheckaccess = "true";
// *** Restrict Access To Page: Grant or deny access to this page
function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) {
// For security, start by assuming the visitor is NOT authorized.
$isValid = False;
// When a visitor has logged into this site, the Session variable MM_Username set equal to their username.
// Therefore, we know that a user is NOT logged in if that Session variable is blank.
if (!empty($UserName)) {
// Besides being logged in, you may restrict access to only certain users based on an ID established when they login.
// Parse the strings into arrays.
$arrUsers = Explode(",", $strUsers);
$arrGroups = Explode(",", $strGroups);
if (in_array($UserName, $arrUsers)) {
$isValid = true;
}
// Or, you may restrict access to only certain users based on their username.
if (in_array($UserGroup, $arrGroups)) {
$isValid = true;
}
if (($strUsers == "") && true) {
$isValid = true;
}
}
return $isValid;
}
$MM_restrictGoTo = "nichtok.php";
if (!((isset($_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers, $_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {
$MM_qsChar = "?";
$MM_referrer = $_SERVER['PHP_SELF'];
if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = "&";
if (isset($QUERY_STRING) && strlen($QUERY_STRING) > 0)
$MM_referrer .= "?" . $QUERY_STRING;
$MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer);
header("Location: ". $MM_restrictGoTo);
exit;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Unbenanntes Dokument</title>
</head>
<body>
<p>ok</p>
</body>
</html>
|
Hoffe ihr könnt mir da weiterhelfen :-(
|
|
|
18.10.2005, 11:37
|
#11
|
|
TP-Specialist
Registriert seit: Feb 2002
Ort: Wien
|
Hm ... hast du schon überprüft, ob die Datenbank beim Login richtig abgefragt wird und ob die Daten in der Session gespeichert sind?
Testweise kannst du dazu ein print_r($_SESSION); ausführen. Ansonsten einfach den Wert der $_SESSION['MM_Username'] überprüfen, da haperts glaub ich schon an der DB-Abfrage.
|
|
|
18.10.2005, 13:30
|
#12
|
|
TP-Senior
Registriert seit: Mar 2005
|
Ich habe da auch mal eine Frage:
ich habe alles prima hinbekommen. Nur habe ich nachträglich die Login-Seite geändert. Sprich das Passwortfeld als Passwortfeld deklariert und den Quelltext mit MD5($_POST('passwort') erweitert. Da meine Passwörter in der DB in MD5 abgespeichert sind. Nun sagt mir DW das ich den Quelltext verändert habe und nun nichts mehr geht.
Muß ich jetzt alles neu machen oder gibt es eine andere Lösung?
Denis
|
|
|
18.10.2005, 14:10
|
#13
|
|
TP-Specialist
Registriert seit: Feb 2002
Ort: Wien
|
Wenn du den Quelltext veränderst, kann DW nicht mehr auf die Standardverhalten zugreifen. Neu machen musst du deshalb nichts, solange du so gecodet hast, dass die Anwendung noch funktioniert
Das andere Thema habe ich gelöscht - bitte keine Doppelpostings im Forum!
|
|
|
18.10.2005, 14:19
|
#14
|
|
TP-Senior
Registriert seit: Mar 2005
|
Sorry wegen dem Doppelposting. Hatte ich nciht direkt erkannt. Danke fürs Löschen.
Auf der Login-seite habe ich lediglich ein MD5() eingefügt. In der Zeile für den abgleich $_Post('passwort') also dann MD5($_Post('passwort')) das dürfte doch richtig sein.
Danach kommt halt so eine verwirrende Meldung. Und dann geht nichts mehr mit Anmeldung.
denis
|
|
|
18.10.2005, 14:22
|
#15
|
|
TP-Specialist
Registriert seit: Feb 2002
Ort: Wien
|
Was du auch immer sonst noch für Fehlerquellen drin haben könntest - aber $_Post gibts nicht - es muss $_POST heißen
Ansonsten gilt grundsätzlich: das Wegfallen der Standardverhalten im DW heißt nicht, dass die Applikation nicht funktioniert! PHP ist ganz egal, ob du selbst gecodet hast oder DW das für dich erledigt hat. Richtiges PHP muss es halt sein 
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 08:12 Uhr.
|
 |