Versuchs mal so, und häng noch das
JS Script vorne dran...
PHP-Code:
<?php
session_start();
include 'sessionhelpers.inc.php';
if (isset($_POST['login']))
{
$userid=check_user($_POST['username'], $_POST['userpass']);
if ($userid!=false)
login($userid);
else
echo 'Ihre Anmeldedaten waren nicht korrekt!';
}
if (!logged_in())
echo '<form method="post" action="login.php">
<label>Benutzername:</label><input name="username" type="text">
<label>Passwort: </label><input name="userpass" type="password" id="userpass">
<input name="login" type="submit" id="login" value="Einloggen">
</form>';
else
echo '[url="logout.php"]Ausloggen[/url]';
echo '
[url="logged_in.php"]Check[/url]';
?>
Zum Überprüfen:
PHP-Code:
<?php
session_start();
include 'sessionhelpers.inc.php';
echo 'Sie sind ';
if (!logged_in())
echo 'nicht ';
echo 'eingeloggt.
';
echo '[url="login.php"]Start[/url]';
?>
Ausloggen:
PHP-Code:
<?php
session_start();
include 'sessionhelpers.inc.php';
echo 'Sie sind ';
if (!logged_in())
echo 'nicht ';
echo 'eingeloggt.
';
logout();
echo 'Sie sind ';
if (!logged_in())
echo 'nicht ';
echo 'eingeloggt.< p/>';
echo '[url="login.php"]Einloggen[/url]';
?>
Und das Script für die SQL Datenbank:
PHP-Code:
<?php
function connect()
{
$con=mysql_connect('servername','benutzer','passwort') or die(mysql_error());
mysql_select_db('datenbank, die die Benutzertabelle enthält',$con) or die(mysql_error());
}
function check_user($name, $pass)
{
$sql="SELECT UserId
FROM users
WHERE UserName='".$name."' AND UserPass=MD5('".$pass."')
LIMIT 1";
$result=mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($result)==1)
{
$user=mysql_fetch_assoc($result);
return $user['UserId'];
}
else
return false;
}
function login($userid)
{
$sql="UPDATE users
SET UserSession='".session_id()."'
WHERE UserId=".$userid;
mysql_query($sql);
}
function logged_in()
{
$sql="SELECT UserId
FROM users
WHERE UserSession='".session_id()."'
LIMIT 1";
$result=mysql_query($sql);
return (mysql_num_rows($result)==1);
}
function logout()
{
$sql="UPDATE users
SET UserSession=NULL
WHERE UserSession='".session_id()."'";
mysql_query($sql);
}
connect();
?>
-> Ziemlich umfangreicher Schutz, aber sicher
Gruß