habe ein login gebastelt und möchte das ein einmal eingeloggter user nicht beim nächsten aufruf der seite sich neu einloggen muß.
also speicher ich den namen und das passwort in einem cookie
jetzt hab ich aber festgestellt das er zu der kennung auch noch die session-id speichert.
und das ist mein problem: wenn ich mir ne neue session-id hole dann nimmt er das cookie nicht mehr
also wenn ich mich ne stunde später neu anmelden will nimmt er das cookie nicht mehr
mmh, ist nicht einfach zu erklären hier ist ein bisschen code
index.php:
PHP-Code:
<?php
session_start ();
if (!isset($_SESSION["status"]))
{
include "login.php";
}
.....
die login.php:
PHP-Code:
<?php
session_start ();
$_SESSION["status"] = 1;
$_SESSION["name"] = "Gast";
if (isset($username)&& ($username<>""))
{
$sqlname=trim($_REQUEST["username"]);
$sqlwort=trim($_REQUEST["pwt"]);
}
elseif(isset($_COOKIE["name"]))
{
$sqlname = $_COOKIE["name"];
$sqlwort = $_COOKIE["wort"];
}
if (isset($sqlname))
{
$connectionid = mysql_connect ("+++", "+++", "+++");
if (!mysql_select_db ("+++", $connectionid))
{
die ("Keine Verbindung zur Datenbank");
}
$sql = "SELECT
*
FROM
spieler
WHERE
(name like '".$sqlname."') AND
(passwort = '".md5($sqlwort)."')";
$result = mysql_query($sql) OR die(mysql_error());
if (mysql_num_rows ($result) > 0)
{
$data = mysql_fetch_array ($result);
$_SESSION["id"] = $data["id"];
$_SESSION["status"] = $data["status"];
$_SESSION["name"] = $data["name"];
setcookie ("name", $data["name"], time()+30*24*3600);
setcookie ("wort", $data["passwort"], time()+30*24*3600);
}
}
header("location: index.php?seite=news.php");
?>
was mache ich falsch ??