PHP - Sessionverwaltung
Hi!
Ich bin noch ein ziemlicher PHP-Neuling und habe ein Problem mit der Sessionverwaltung. Hier die Codes:
<html>
<head>
<title>Login</title>
<?php
include("includes/database.inc.php");
include("includes/session.inc.php");
?>
</head>
<body>
<form action="<?php echo $_SERVER[PHP_SELF]; ?>" method="post">
Name: <input type="text" name="formname">
Password: <input type="password" name="formpw">
Senden: <input type="submit" name="formsub">
</form>
<?php
connectdb("testdb");
if (!empty($_POST[formsub])) {
$sql=mysql_query("SELECT * FROM user");
while ($pointer=mysql_fetch_assoc($sql)) {
if ($pointer[user]==$_POST[formname] && $pointer[pw]==$_POST[formpw]) {
setsession("testname","testvalue");
}
}
}
disconnectdb();
?>
</body>
</html>
Hier die Datei database.inc.php:
<?php
$connection=mysql_connect("xxx", "xxx", "xxx");
function connectdb($database) {
global $connection;
mysql_select_db($database, $connection);
}
function disconnectdb() {
global $connection;
mysql_close($connection);
}
?>
Und hier die Datei session.inc.php:
<?php
function setsession($varname,$varvalue) {
session_start();
session_name("Session");
$sessionid=session_id();
$_SESSION[$varname]=$varvalue;
}
?>
Wenn ich die Datei nun ausführe kommen folgende Meldungen:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Programme\xampp\htdocs\website\login.php:6) in C:\Programme\xampp\htdocs\website\includes\session .inc.php on line 3
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Programme\xampp\htdocs\website\login.php:6) in C:\Programme\xampp\htdocs\website\includes\session .inc.php on line 3
session.path_name (oder so ähnlich) in der php.ini verweist auf das richtige Verzeichnis, und es wird auch ein Sessioncookie abgelegt. Wo liegt das Problem?
Danke schon mal für die Antworten,
sesselhocker
|