Script glemmer session?
Jeg har en side der glemmer sessions! Hvorfor pokker gør den det? Koden til kurv.php kan ses her:<?
session_start();
require("config.php");
if(!isset($_SESSION['UserID'])){
mysqlaccess();
$spoerg = mysql_query("select UserID FROM ordrer ORDER BY nr DESC limit 1") or die('MySQL fejl: '.mysql_error());
$data = mysql_fetch_row($spoerg);
$sessionuserid = $data[0];
$_SESSION['UserID'] = $sessionuserid + 1;
}
$ersendt = $_POST["send"];
$vareantal = $_POST["antal"];
$varenr = $_GET["nr"];
if($ersendt){
$_SESSION[$varenr] = $vareantal;
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Onlineshop</title>
<link href="style/style.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width='500' height='550' cellpadding='0' cellspacing='0'>
<tr>
<td height='50' width='500' colspan='3'>
<p><img src="pics/banner.gif"></p>
</td>
</tr>
<tr>
<td height='485' width='100' valign="top">
<div align="center"><a href="kurv.php" class="menu">Kurv</a></div><p>
Produkter:<br><br>
Køling:<br>
-<a href="index.php?kategori=blæsere">Blæsere</a><br>
-<a href="index.php?kategori=gitre">Gitre</a><br>
-<a href="index.php?kategori=kølere">Kølere</a><br><br>
Shoppen:<br>
-<a href="profil.php">Profil</a><br>
-<a href="kontakt.php">Kontakt</a><br>
-<a href="info.php">Info</a><br>
-<a href="betingelser.php">Salg/levering</a><br>
</p>
</td>
<td width='15' class="usynlig"></td>
<td height='500' width='385' class='usynlig' rowspan="2" valign="top">
<table width="70%" cellpadding="1" cellspacing="0"><tr><td width="40%"><p>Varenavn:</p></td><td width="30%"><p>Antal:</p></td width="30%"><td><p>Pris pr. styk:</p></td></tr>
<?
mysqlaccess();
while(list($key, $value) = each ($_SESSION)) {
$spoerg = mysql_query("select navn,pris FROM onlinevarer WHERE nr = '$key' ORDER BY nr DESC") or die('MySQL fejl: '.mysql_error());
while($data = mysql_fetch_row($spoerg)){
$_SESSION['samletpris'] += $data[1] * $value;
echo "<tr><td><p>$data[0]</p></td><td><p>$value</p></td><td><p>$data[1]</p></td>";
echo "<br>";
}
}
$prisialt = $_SESSION['samletpris'];
echo "<tr><td height='15' class='usynlig'></td></tr>";
echo "<tr><td colspan='2'><p>Pris i alt:</p></td><td><p>$prisialt kr</p></td></tr>";
echo "</td></tr></table>";
tilbage();
?>
</td>
</tr>
<tr>
<td height='15' align="center">
<p>Copyright 2002<br>PeeCee.dk</p>
</td>
</tr>
</table>
</body>
</html>
Den får dataene fra index.php. kurv.php viser det rigtigt lige når man har trykket "køb" ved en vare, men når man går videre til en anden side forsvinder dataene der ligger i sessionen. For at vise det har jeg lavet en tabel der viser indhold af alle sessions på alle sider på hjemmesiden. Siden kan ses her http://www.peecee.dk/onlineshop man kan heller ikke tilføje flere varer til kurven da dataene i session forsvinder lige så snart man går ind på en anden side. På forhånd tak for hjælpen, jeg har brug for den.
