Session's fejl
Jeg har et problem. Jeg er ved at lave en hjemmeside med et login. når man har logget ind skal menuerne ændre sig. Hvis jeg skriver session_start(); i min index.php side hvor min login form ligger for jeg følgende fejl meddelse:Warning: Cannot send session cache limiter - headers already sent (output started at c:\apache\htdocs\test\index.php:18) in c:\apache\htdocs\test\index.php on line 19
Men den skifter til de rigtige menuer. hvis jeg udelukker session_start();, så logger den ikke på eller rettere det gør den måske , men den åbner ikke mine menuer som den skal
Min index.php kode ser sådan her ud:
<html>
<body bgcolor="#c8c8c8">
<div align="center">
<table width="800" border="0" cellspacing="2" cellpadding="0">
<tr>
<td colspan="3" bgcolor="white">
<div align="center">
<img src="images/head.jpg" alt="" height="100" width="800" border="0"></div>
</td>
</tr>
<tr>
<td bgcolor="white" width="120">
<!-- login -->
<?php
session_start();
if($_SESSION[id]){
echo $_SESSION[id];
}
else
{
?>
<form method="post" action="dologin.php">
<input type="hidden" name="logind" value="logind">
<font size="1" face="Verdana, Arial" color="#000000">Brugernavn<br>
</font>
<input type="text" name="navn" size="14">
<font size="1" face="Verdana, Arial" color="#000000">Password<br>
</font>
<input type="password" name="password" size="14">
<input type="submit" name="submit" value="Login">
</form>
<?php
}
?>
</td>
<td rowspan="2" colspan="2" bgcolor="white"></td>
</tr>
<tr>
<td width="120"> <body bgcolor="#ffffff">
<?php
if($_SESSION[id]){
?>
<table height="100" border="0" align="center">
<tr>
<td>
<table border="0" align ="center">
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111">MENU</a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111"><a href='../../netakvariet%20folder/netakvariet/<? echo $_SERVER["PHP_SELF"];?>?side=brugere/profil.php'><b>Profil</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111"><a href='../../netakvariet%20folder/netakvariet/index.php'><b>home</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111"><a href="../../netakvariet%20folder/netakvariet/index.php?side=brugere/brugere.php"><b>Bruger side</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111"><a href="../../netakvariet%20folder/netakvariet/index.php?side=images/annak/index.php"><b>Anna K</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111"><a href="../../netakvariet%20folder/netakvariet/index.php?side=images/saragellar/index.php"><b>Sara Gellar
</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111"><a href="../../netakvariet%20folder/netakvariet/index.php?side=images/Christina/index.php"><b>Christina</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111"><a href="../../netakvariet%20folder/netakvariet/index.php?side=test/index.php"><b>Download</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="111"><a href='logud.php'><b>Logout</b></a></td>
</tr>
</table>
</td>
</tr>
</table>
<?php
}
else
{
?>
<table width="100%" height="80" border="0" align="center">
<tr>
<td>
<table border="0" align ="center">
<tr>
<td width="10"></td>
<td width="111"><b>MENU</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="110"><a href="../../netakvariet%20folder/netakvariet/index.php?side=test.php"><b><font color="#000000">test</font></b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="110"><a href='../../netakvariet%20folder/netakvariet/index.php'><b><font color="#000000">home</font></b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="110"><a href="../../netakvariet%20folder/netakvariet/index.php?side=opret.html"><b><font color="#000000">opret</font></b></a></td>
</tr>
</table>
</td>
</tr>
</table>
<?php
}
if($_SESSION[aid]){
?>
<table width="100%" height="100" border="0" align="center">
<tr>
<td>
<table border="0" align ="center">
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="110">ADMIN MENU</a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="110"><a href="../../netakvariet%20folder/netakvariet/index.php?side=admin/admin.php"><b>Server info</b></a></td>
</tr>
<tr>
<td width="10"><img src=../../netakvariet%20folder/netakvariet/images/arrow.gif></td>
<td width="110"><a href="../../netakvariet%20folder/netakvariet/index.php?side=admin/opret.php"><b>Opret</b></a></td>
</tr>
</table>
</td>
</tr>
</table>
<?php
}
////////////// MENU SLUT ////////////
?>
</body></td>
</tr>
</table>
</div>
<p></p>
</body>
</html>
Min dologin.php ser sådan her ud:
<?php
session_start();
//hvis form er submittet
if (isset($_POST['logind'])) {
//password i databasen er krypteret, så det gøres også med indtastet password
$dopass = $_POST['password'];
//skift selv bruger og pass til databasen.
$db = mysql_connect("localhost", "slum", "1234") or die ("Desværre ingen forbindelse til databasen");
mysql_select_db("password", $db) or die ("Kunne ikke vælge databasetabel");
$tjek = mysql_query("SELECT navn, password FROM brugere WHERE navn='$_POST[navn]' AND password='$dopass'") or die ("Kunne ikke vælge felter i database-tabellen");
if(mysql_num_rows($tjek) != 0) {
$_SESSION['sessionnr'] = session_id();
$_SESSION['Name'] = $_POST['navn'];
$_SESSION[id] = $_POST['navn'];
header("Location:index.php");
}
}
?>
Håber der er en der kan hjælpe
