counter i session
Ref. fra tidligere spørgsmål http://www.eksperten.dk/spm/647855Når jeg require min side med kurv-counter (basket_counter1.php) så "glemmer" den at skrive hvad der er i kurven, den udskriver kun antallet. Dette gølder for dokument kurv.php
Min kode se nu sådan ud. (der er 3 dokumenter)
index.php:
<?php
session_start();
$id = $_REQUEST['id'];
$slet = $_REQUEST['slet'];
// Tildele pris og navn på baggrund af ID
if ($id =$id) {
$tilkurv = $hf_foder_navn;
$pris = $hf_foder_pris;
$maengde = $hf_foder_maengde;
}
if (isset($tilkurv)) {
$_SESSION["varer"]["id".$tilkurv]["antal"]++;
$_SESSION["varer"]["id".$tilkurv]["navn"] = $tilkurv;
$_SESSION["varer"]["id".$tilkurv]["pris"] = $pris ;
$_SESSION["varer"]["id".$tilkurv]["maengde"] = $maengde;
$_SESSION["varer"]["id".$tilkurv]["antal_kurv"] = $antal_kurv;
$_SESSION['count'] += 1;
}
?>
<Html>
<Head>
<Title>Indkøbskurv</Title>
</Head>
<Body>
<?php
//henter counter i kurv
require("req/basket_counter1.php");
print"<br><br><a href='kurv.php'>Kurv</a><br><br>";
?>
<?php
require("req/db_connect.php");
$query ="SELECT * FROM akvarie_hf_foder ;";
$result = mysql_db_query ($database, $query, $link );
print"<table border='1' cellspacing='0' cellpadding='0'>
<tr valign='top'>
<td><b>Vare nummer</b></td>
<td><b>Navn</b></td>
<td><b>Beskrivelse</b>
</td><td><b>Mængde</b></td>
<td><b>Pris</b></td>
<td><b>Tilføj til kurv</b></td></tr> ";
while($row = mysql_fetch_array($result)){
$id = $row[id];
$hf_foder_varenr = $row[hf_foder_varenr];
$hf_foder_navn = $row[hf_foder_navn];
$hf_foder_beskrivelse = $row[hf_foder_beskrivelse];
$hf_foder_maengde = $row[hf_foder_maengde];
$hf_foder_pris = $row[hf_foder_pris];
print" <tr><td>$hf_foder_varenr</td>
<td>$hf_foder_navn </td>
<td width='300'>$hf_foder_beskrivelse </td>
<td>$hf_foder_maengde kg </td>
<td>$hf_foder_pris kr </td>
<td align='center'><a href='index.php?id=$id&hf_foder_navn=$hf_foder_navn&hf_foder_beskrivelse=$hf_foder_beskrivelse&hf_foder_pris=$hf_foder_pris&hf_foder_maengde=$hf_foder_maengde'>Kurv </a> </td>
</tr>";
}
?>
</Body>
</html>
kurv.php:
<?php
session_start();
$id = $_REQUEST['id'];
$slet = $_REQUEST['slet'];
require("req/basket_counter1.php");
if (isset($slet)) {
$ialt -= $pris;
unset($_SESSION["varer"][$slet]);
}
print"<Font face=verdana, arial, helvetica size=2>";
if (count($_SESSION["varer"])>0) {
while (list ($key, $val) = each ($_SESSION["varer"])) {
$navn =$_SESSION["varer"]["$key"]["navn"];
$antal =$_SESSION["varer"]["$key"]["antal"];
$pris =$_SESSION["varer"]["$key"]["pris"] * $antal ;
$maengde =$_SESSION["varer"]["$key"]["maengde"];
$ialt += $pris;
echo "$antal x $navn DKK " . number_format($pris,2);
echo " Antal kg: $maengde ";
printf("<A HREF=\"kurv.php?slet=%s&\"> Slet</A></Td></Tr>", urlencode($key) );
echo "<br>";
}
}
if ($ialt>0) {
echo "<B> I alt DKK ". number_format($ialt,2)."</b>";
}
/* Hvis indkøbsvognen er tom */
if (count($_SESSION["varer"])==0) {
echo "Din indkøbskurv er tom";
$count = 0;
}
print"<br><br><a href='index.php'>Tilbage </a>til shop";
?>
basket_counter1.php:
<?php
$antal = 0;
foreach($_SESSION['varer'] as $vare)
{
$antal += $vare['antal'];
}
echo "Antal: " . $antal;
?>
