[PHP & MySQL] Uneingeloggter User kommt inden Internbereich

Paty
Hi,
Ich hab da so ein problemchen.
Ich hab grad einen Login gemacht,aber das Problem ist, auch Uneingeloggte Gäste können den Internbereich ansehen!
Der I-Bereich sieht immoment so aus:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
<?php
include("checkuser.php");
?>
<html>
<head>
<title>Interne Seite</title>
</head>
<body>
Du bist eingeloggt
</body>
</html>


Und Checkuser:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
<?php 
session_start(); 

if(!isset($_SESSION["name"])) 
   { 
   echo "Diese Seite ist nur für Mitglieder verfügbar.<br>Bitte <a href="login.php">einloggen</a>!.";
   exit; 
   } 
?>


Was ist daran falsch?
LG Paty
Kuhmuhphu
Zeig mal bitte dein login action
Paty
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
<?php
session_start();
include("datenbank.php");
?>
<html>
<head>
 <link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<?php
if(!empty($_POST["username"]) && !empty($_POST["password"])) 
{

$username = $_POST["username"]; 
$passwort = $_POST["password"]; 

$abfrage = mysql_query("SELECT name, passw FROM mitglieder WHERE name = '$username' LIMIT 1");
$daten = mysql_fetch_array($abfrage);

if($daten[passw] == $passwort)
    {
    $_SESSION["name"] = $username; 
    echo "Login erfolgreich! <br> <b><a href="internbereich.php" target="_self">Weiterleitung</a></b>";
    } 
else 
    { 
    echo "Benutzername und/oder Passwort waren falsch. <br><a href="login.php">Login</a>";
    }
}
else
	{
	echo "Bitte fülle alle Felder aus! <br><a href="login.php">Zurück</a>";
}

?>
</body>
</html>
Kuhmuhphu
hm.. also ich kann jetzt nicht so gut bei helfen.. ich bin ja kein guter PHP Coder..

Bei mir funktioniert es gut und ich habe es im Grunde genauso gemacht wie du...außer das ich die Session username anstatt name genannt habe.. versuch mal die Session statt name username zu nennen.

Wenn der Fehler woanders liegt dann beachte mich einfach gar nicht xD
Paty
ich glaub der Fehler liegt wo anders^^
Weil jetzt hat sich 0.0% geändert großes Grinsen
Kuhmuhphu
Zitat:
Original von Paty_Pu
ich glaub der Fehler liegt wo anders^^
Weil jetzt hat sich 0.0% geändert großes Grinsen


Genau das mein ich ja xDD wirklich seltsam.. ich habs im Grunde genau gleich wie du gemacht smile
Paty
und bei dir kommt ein uneingeloggter nich rein? großes Grinsen
Kuhmuhphu
Genau smile

deshalb find ichs ja so seltsam
Paty
hm...blöd=/
Julia712
Was heißt denn genau "uneingeloggt"? Du fährst PC hoch, öffnest deinen Browser und kommt in die Seite? Oder du bist auf der Seite, surfst wo anders und dann kommst du einfach so wieder rein? Oder wie genau? smile
Itoe
Könnte man vllt. alle dateien dafür sehen? Weil in den Codes ist bisher kein Fehler Augenzwinkern Habs mit meinen verglichen und die stimmen auch überein ^^
Paty
Also ich öffne das internet,und komm einfach rein..also ja großes Grinsen
Die dateien kommen gleich^^
Kuhmuhphu
Zitat:
Original von Paty_Pu
Problem gelöst..kann geschlossen werden großes Grinsen


woran lags denn?^^
Paty
Geht schonwieder nich=/

Login.php
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
<html>
<head>
 <link rel="stylesheet" type="text/css" href="style.css">
 </head>
 <body>
 <h3>Login</h3>
<form action="login_action.php" method="post">
Username:<br>
<input type="text" size="24" maxlength="50"
name="username"><br><br>

Passwort:<br>
<input type="password" size="24" maxlength="50"
name="password"><br> <br>

<input type="submit" value="Login">
</form>
</body>
</html>


Datenbank.php
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
<?php
// Verbindungsdaten
$sqlhost = "localhost";
$sqluser = "psliquide";
$sqlpassword = "geheim:P";
$sqldb = "psliquide";

// Verbindung herstellen
mysql_connect($sqlhost,$sqluser,$sqlpassword) or die ("Fehler beim Verbinden mit der Datenbank!");
mysql_select_db($sqldb) or die ("Die Datenbank existiert nicht");
?>


Login_action.php
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
<?php
session_start();
include("datenbank.php");
?>
<html>
<head>
 <link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<?php
if(!empty($_POST["username"]) && !empty($_POST["password"])) 
{

$username = $_POST["username"]; 
$passwort = $_POST["password"]; 

$abfrage = mysql_query("SELECT name, passw FROM mitglieder WHERE name = '$username' LIMIT 1");
$daten = mysql_fetch_array($abfrage);

if($daten[passw] == $passwort)
    {
    $_SESSION["name"] = $username; 
    echo "Login erfolgreich! <br> <b><a href="internbereich.php" target="_self">Weiterleitung</a></b>";
    } 
else 
    { 
    echo "Benutzername und/oder Passwort waren falsch. <br><a href="login.php">Login</a>";
    }
}
else
	{
	echo "Bitte fülle alle Felder aus! <br><a href="login.php">Zurück</a>";
}

?>
</body>
</html>


Checkuser.php
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
<?php 
session_start(); 

if(!isset($_SESSION["name"])) 
   { 
   echo "Diese Seite ist nur für Mitglieder verfügbar.<br>Bitte <a href="login.php">einloggen</a>!.";
   exit; 
   } 
?>


Logout.php
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
<?php 
session_start(); 
?>
<html>
<head>
 <link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<?php
//Im Grunde der selbe Check wie in checkuser.php
if(session_is_registered('name')){ 

//Beende die Session
session_unset(); 
session_destroy();
echo "Du wurdest erfolgreich ausgeloggt.<br><b><a href="index.php" target="_self">Zurück zur Startseite</a>";
} 
else{ 

//Der User ist nicht eingeloggt und sollte gar nicht hier sein, deshalb wird er zur login-seite geleitet
header( "Location: /login.php" );
} 
?> 
</body>
</html>