Witam,
mam działający koszyk z tym, że można do niego ładować 1 typ elementow. Chciałbym teraz aby mozna było do niego wrzucać równiez inne typy elementow czyli rzeczy np. z 2 czy kilku roznych tabel, których id-ki mogą sie powtarzac. Coś szwankuje mi przeliczanie w koszyku tzn. nie wiem jak odpowiednio powiazac id-ki z typem dodawanego elementu. Mam klase w pliku sklep.php:
[php:1:afa52117c2]
<?
class koszyk
{
var $zawartosc, $typ_zawartosc;
function dodaj($typ, $element, $ilosc) //dodaje
{
$this->zawartosc[$element] += $ilosc;
$this->typ_zawartosc[$element] = $typ;
}
function liczba($typ, $element, $ilosc) // przelicza
{
if (0 < $ilosc) {
$this->zawartosc[$element] = $ilosc;
$this->typ_zawartosc[$element] = $typ;
} else {
$this->zawartosc[$element] = 0;
$this->typ_zawartosc[$element] = $typ;
}
}
function stan()
{
return $this->zawartosc;
return $this->typ_zawartosc;
}
}
session_start();
if (!$koszyk)
$koszyk = new koszyk;
if ($dod)
$koszyk->dodaj($zmm,$dod,1);
if($poz)
while ($a=each($poz))
{
$koszyk->liczba($a[0],$a[1],$a[2]);
}
...
?>
Teraz dodaje cos do koszyka <A HREF="sklep.php?s=koszyk&dod=<?print($myrow[id]);?>&zmm=1"> i jest ok. tzn. zwieksza sie co trzeba.
I w skrocie plik z koszykiem
<?
$stan = $koszyk->stan();
$suma=0;
if ($stan)
while (list($key, $value) = each($stan))
{
$typp = $koszyk->typ_zawartosc[$key]; // typ elementu
$result=mysql_query("SELECT * FROM sklep WHERE id=$key",$link);
while($myrow=mysql_fetch_array($result))
?>
<input type="text" name="poz[<?print($myrow[id]);?>]" value="<?print($value);?>" size="3" size="10">
<?
}
}
...
tutaj przycisk z przeliczaniem...
?>
[/php:1:afa52117c2]
Problem tkwi w przerobieniu tego tak aby zapamietywal odpowiednio typ pozycji i pozniej w zaleznosic od niego przeliczal (funkcja liczba() prezlicza).
Pozdrawiam,
Marek
----
Proszę użyć odpowiedniego BBCode (Instrukcja) dla zaznaczenie listingu php. (scanner)
Nie męcz sie scanner, on nawet tego nie zauważył [KaMeLeOn]