problemer med PludsLigmed
Heyjeg har dette script, som er en del af min webshop
<?
session_start();
?>
<h3> Din Kurv </h3>
<br />
Din kurv indeholder:<br />
<br />
<?php
include('config.php');
######### PRODUKT OVERSIGT ##############
if ( $_SESSION['kurv'] != NULL ) {
$id = array_unique($_SESSION['kurv']);
$antal = array_count_values($_SESSION['kurv']);
foreach ($id as $v) {
$query1 = @mysql_query("SELECT * FROM produkter WHERE id='$v' ");
$row1 = @mysql_fetch_array($query1);
if (!$_SESSION['kurv']) { echo "Du har ikke valgt nogle produkter endnu"; }
if($row1[fast] == 0) {
$nantal = $antal[$v];
if ( ($nantal < 10) && ($nantal > 0) ) {
$dbpris = ($row1[c_pris]/100)*110;
}
elseif ( ($nantal >= 10) && ($nantal < 20) ) {
$dbpris = ($row1[c_pris]/100)*110;
}
elseif ( ($nantal >= 20) && ($nantal < 30) ) {
$dbpris = ($row1[b_pris]/100)*110;
}
elseif ( $nantal >= 30 ) {
$dbpris = ($row1[a_pris]/100)*110;
}
} else {
$dbpris = ($row1[pris]/100)*110;
}
echo $antal[$v]." stk. ".$row1[navn]." á ".$dbpris." Dkr. <a href=\"?side=kurv.php&dbid=".$row1[id]."&antal=".$antal[$v]." \">Fjern</a> <br />";
$_SESSION['pris'] = $antal[$v] * $dbpris; // her er problemet
}
}
######### FJERNER PRODUKTER ##############
if( isset($_GET['dbid']) ) {
$dbid = $_GET['dbid'];
$bla = $_GET['antal'];
$j = 1;
while($j <= $bla) {
$key = array_search($dbid,$_SESSION['kurv']);
unset($_SESSION['kurv'][$key]);
$j++;
}
$pquery = @mysql_query("SELECT * FROM produkter WHERE id='$dbid' ");
$rabat_query = @mysql_query("SELECT rabat FROM rabat WHERE fra<=$bla AND $bla<=til AND produktid='$dbid' ");
$rabat = @mysql_result($rabat_query,0);
$rowp = @mysql_fetch_array($pquery);
if($rowp[fast] == 0) {
$nantal = $antal[$v];
if ( ($nantal < 10) && ($nantal > 0) ) {
$enpris = ($rowp[c_pris]/100)*110 - (($rowp[c_pris]/100)*$rabat);
}
elseif ( ($nantal >= 10) && ($nantal < 20) ) {
$enpris = ($rowp[c_pris]/100)*110 - (($rowp[c_pris]/100)*$rabat);
}
elseif ( ($nantal >= 20) && ($nantal < 30) ) {
$enpris = ($rowp[b_pris]/100)*110 - (($rowp[b_pris]/100)*$rabat);
}
elseif ( $nantal >= 30 ) {
$enpris = ($rowp[a_pris]/100)*110 - (($rowp[a_pris]/100)*$rabat);
}
} else {
$enpris = ($rowp[pris]/100)*110 - (($rowp[pris]/100)*$rabat);
}
$netpris = $_SESSION['pris'] - $bla * $enpris;
unset($_SESSION['pris']);
$_SESSION['pris'] = $netpris;
header("Location: index.php?side=kurv.php");
}
############ TØMMER KURVEN TOTAL #############
if( isset($_GET['empty']) ) {
if ( $_GET['empty'] = 'true' ) {
session_unset();
session_destroy();
header("Location: index.php?side=kurv.php");
} }
############ FEJL MEDDELSE ###########
if ( $_SESSION['pris'] != NULL ) {
if ( $_SESSION['pris'] < 0 ) {
die("<br /><b>Der er sket en fejl, luk venlig din browser, og prøv igen</b>");
}
############ PRIS OVERSIGT ##########
echo "<br /><br /><b>Total Pris: <u>".$_SESSION['pris']. "</u> Dkr. </b>";
echo "<br /><br /><b><a href=\"?side=betaling.php\">Gå til betaling</a> </b>";
echo "<br /><br /><b><a href=\"?side=kurv.php&empty=true\">Tøm</a> </b><br /><br />";
}
?>
problemet er at ved ' $_SESSION['pris'] = $antal[$v] * $dbpris; ' så udregner den kun prisen for det seneste produkt som kommer i kruven , og ikke total.
Jeg har prøvet med += men så bliver prisen størrere hver gang man trykke Opdater, og dette er absolut ikke meningen.
Nogen som har nogle forslag til en løsning ?
