Moin,
Ich habe da eine frage,
hab mir via Anleitung ein Login-Script
zusammengesnippelt,...
http://www.tutorials.de/forum/php-tuto…t-sessions.html
Meine Datenbank ist vom typ UTF-8 Binär
Bein starten der index.php spuckt er folgende fehler aus:
Code
[B]Warning[/B]: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at A:\xampp\htdocs\iozeugs\iospace\index.php:3) in [B]A:\xampp\htdocs\iozeugs\iospace\index.php[/B] on line [B]3[/B]
[B]Warning[/B]: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at A:\xampp\htdocs\iozeugs\iospace\index.php:3) in [B]A:\xampp\htdocs\iozeugs\iospace\index.php[/B] on line [B]3[/B]
index.php
PHP
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<?php session_start (); ?>
<html>
<head>
<title>ioSpace</title>
<meta name="author" content="...">
<meta name="date" content="2009-11-19">
<meta name="robots" content="noindex">
<meta name="generator" content="...">
<meta http-equiv="content-type" content="text/html; UTF-8">
<meta http-equiv="content-language" content="de">
</head>
<body>
<?php
if (isset ($_REQUEST['fehler']))
{
echo "Die Zugangsdaten waren ungültig.";
}
?>
<form action="login.php" method="post">
Name: <input type="text" name="name" size="20"><br>
Kennwort: <input type="password" name="pwd" size="20"><br>
<input type="submit" value="Login">
</form>
</body>
</html>
Alles anzeigen
login.php
PHP
<?php
// Session starten
session_start ();
// Datenbankverbindung aufbauen
$connectionid = mysql_connect ("localhost", "...", "...");
if (!mysql_select_db ("usr_web16_1", $connectionid))
{
die ("Keine Verbindung zur Datenbank");
}
$sql = "SELECT ".
"Id, Nickname, Nachname, Vorname ".
"FROM ".
"benutzerdaten ".
"WHERE ".
"(Nickname like '".$_REQUEST['name']."') AND ".
"(Kennwort = '".md5 ($_REQUEST['pwd'])."')";
$result = mysql_query ($sql);
if (mysql_num_rows ($result) > 0)
{
// Benutzerdaten in ein Array auslesen.
$data = mysql_fetch_array ($result);
// Sessionvariablen erstellen und registrieren
$_SESSION['user_id'] = $data['Id'];
$_SESSION['user_nickname'] = $data['Nickname'];
$_SESSION['user_nachname'] = $data['Nachname'];
$_SESSION['user_vorname'] = $data['Vorname'];
header ("Location: intern.php");
}
else
{
header ("Location: index.php?fehler=1");
}
?>
Alles anzeigen
checkuser.php
PHP
<?php
session_start ();
if (!isset ($_SESSION['user_id']))
{
header ("Location: index.php");
}
?>
intern.php
PHP
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<?php include ("checkuser.php"); ?>
<html>
<head>
<title>ioSpace</title>
<meta name="author" content="...">
<meta name="date" content="2009-11-19">
<meta name="robots" content="noindex">
<meta name="generator" content="...">
<meta http-equiv="content-type" content="text/html; UTF-8">
<meta http-equiv="content-language" content="de">
</head>
<body>
BenutzerId: <?php echo $_SESSION['user_id']; ?><br>
Nickname: <?php echo $_SESSION['user_nickname']; ?><br>
Nachname: <?php echo $_SESSION['user_nachname']; ?><br>
Vorname: <?php echo $_SESSION['user_vorname']; ?>
<hr>
<a href="logout.php">Ausloggen</a>
</body>
</html>
Alles anzeigen
logout.php
PHP
<?php
// Wird ausgeführt um mit der Ausgabe des Headers zu warten.
ob_start ();
session_start ();
session_unset ();
session_destroy ();
header ("Location: index.php");
ob_end_flush ();
?>
Alles anzeigen
Was ist falsch?
Liebe Grüße