Gästebuch und Sessions

Touya

Mitglied
Hi!,
Ich möchte bevor auf das Gästebuch zugegriffen wird, überprüfen ob derjenige auch eingeloggt ist.
Wenn er nicht eingeloggt ist sollen nur die Beiträge angezeigt werden, wenn er eingeloggt ist soll dazu noch ein formular zum eintragen eingefügt werden.

PHP:
<?php session_start (); 

if ((session_is_registered ("user_eingeloggt")) AND ($user_eingeloggt)) {
include("eintragen.php")
} 

else {

<p><hr><div align="center"><b>Gästebuch</b></div><hr><br>

readfile ("gb.txt");

</p>
}
?>

so funktioniert es leider nich :(

wie könnte ich das sonst lösen? :)
 
Eigentlich sollte es so gehen, aber wieso fragst du noch nach der user_eingeloggt Variable ab?
Ich habe es so gelöst, dass ich nach einer Variable in der Session abfrage und wenn sie nicht vorhanden ist, ruf ich ein JS auf, welches ne andere Page lädt.

Code:
<?PHP
	if (!(session_is_registered('sessioncheck'))){
		session_unset();
		session_destroy();
?>
 <script>
	Break()
</script>

<?PHP
	}	
	else{......

Gruss
 
Ich habe meine Version mal ein wenig abgeändert:
PHP:
<?php session_start (); 

if ((session_is_registered ("user_eingeloggt"))) {
include("eintragen.php")
}

else {
include("nureinträge.php")
}
?>

funktioniert aber immer noch nicht...
Ich möchte einfach nur eine if else anweisung mit der ich entweder die eine oder die andere Seite einbinde.

Ich hab mir auch mal deine Lösung angesehen, aber da blicke ich noch nicht durch :(
Von php habe ich eigendlich genauso wenig ahnung wie von js...

wäre toll wenn du mir da weiterfehlen könntest :)
 
Hallo

fügst du die Variable user_eingeloggt der Session selber hinzu? Dann sollte es eigentlich klappen.

Es ist wichtig, dass du den Sessionstart auf die erste Zeile schriebst, vor jedem anderen Code egal ob HTML, PHP oder JS. Keine Ahnung wieso, ich hatte zumindest das Problem auch.

Wenn es sonst nicht geht, kannst du mal den Code zeigen der die Session erstellt?

Gruss

Cthulhu
 
Versuch mal folgendes :

Code:
<?php session_start (); 

if (session_is_registered("user_eingeloggt"))
{
include("eintragen.php");
die;
}
else {
include("nureinträge.php");
}

?>

Müsste gehen...tuts bei mir eigentlich zumindenst ^^

:)
 
Dieses Beispiel funktioniert ansich schon, aber wenn ich mich eingeloggt habe, wird trotzdem nicht die datei eintragen.php eingebunden, sondern weiter so fortgefahren, asl ob ich nciht eingeloggt wäre.
Muss ich bei session start nicht noch irgendwelche angaben machen, auf welche session zugegriffen werden soll?
 
Nein. EInfach nur session_start(); mehr nicht...

Überprüf mal, ob die Session überhaupt gesetzt wird...
 
Naja, ob die session existiert einfach so:

PHP:
if(session_is_registered("deinesession"){ bla }
else{
bla
}
 
also folgender code funktioniert nicht:
PHP:
<?php 
session_start();

if(session_is_registered("deinesession"){ 
bla 
}
else{
bla
}
?>
 
Zurück