Flitze
|
Administrator
|
|
registriert
|
17.10.2006
|
wohnt in
|
Eschwege
|
Beiträge
|
332
|
|
Zitat: thx! hat endlich geklappt! Aber ich sehe keine session die mitübergeben wurde, ist das normal?
Also standardmäßig wird ein Cookie gesetzt, wenn eine Session gestartet wird. In diesem Fall wird keine SessionID an die URL angehangen.
Wenn du möchtest, dass auch Benutzer, die Cookies deaktiviert haben, sich einloggen können, dann musst die Weiterleitung folgendermaßen schreiben:
PHP:
echo "<meta http-equiv=\"refresh\" content=\"1; URL=usercenter.php?".SID."\">\n";
Das ist aber erstmal nicht so wichtig, da eh nur sehr wenige User Cookies deaktiviert haben.
Zitat:1: ich bräuchte bei dem loginformular so etwas ähnliches wie ne if() anweisung die erkennt ob der user eingeloggt ist oder nicht. etwa so:
if( user eingeloggt) -> zeige formular mit "Hallo User"
else -> zeige loginformular
Kennst du sonen code?
Na aber klar 
Also, du speicher ja bei erfolgreichem Login die ID und den Nickname des Users in der Session, d.h. dass nur ein eingeloggter User die Variable $_SESSION['UserID'] besitzt, obwohl jeder User (eingeloggt oder nicht) eine Session besitzt.
Du kannst nun also schreiben
PHP:
if(isset($_SESSION['UserID']))
echo "Hallo ".$_SESSION['Nickname'];
else {
// Zeige Loginformular
}
Zitat:Und wie setz ich den code auf der site die geschützt werden soll?
Das hat schonmal ein User vor dir gefragt, un zwar in diesem Thread
PHP:
<?php
session_start();
// Prüfen ob der User eingeloggt ist
if(!isset($_SESSION['UserID'])){
// Falls nein, Skript beenden
die("Sie sind nicht eingeloggt, nur eingeloggte User dürfen diese Seite betreten.");
}
else{
echo "Sie dürfen diesen Bereich betreten.";
// Skript ausführen
}
?>
|
mdean
|
Forenposter
|
|
registriert
|
03.01.2007
|
wohnt in
|
Schweiz
|
Beiträge
|
90
|
|
Gut, aber ich hab gemerkt, dass meine tabelle ja gar nicht im php skript selber ist, also nützt der else {} befehl gar nichts. Was muss ich eingeben, dass es z.B. so aussieht:
else { zeige tabelle mit id="blabla"}?
|