« 1 2
Autor Zpráva
juriad
Profil
byXick:
Upravil jsem kód, teď už snad funguje. To jsem myslel tím, že je to možné odladit samostatně. A teď si můžeš vytvořit podobné funkce pro další části eshopu (hlášky pro uživatele), počítání cen. Dále pak funkce, které budou zpracovávat POSTové requesty (akce přidej do košíku, akce odešli objednávku). Si vlastně vytváříš takovou stavebnici; jakmile ji budeš mít hotovou, vytvoření produktových stránek, seznamů produktů, zobrazení košíku, objednávek už je hračka.
byXick
Profil *
jojo, teď už to funguje korektně bez chyby
jasný, jdu na to
ještě jednou díky
byXick
Profil *
další problém: u produktu v košíku nechci mít v poli pouze množství, ale také cenu, název atd
řeším to upravením řádku 5 ($_SESSION['cart'] = array();) na:
$_SESSION['cart'] = array(array('nazev','mnozstvi','cenaks','cenacelkem'));
dále jsem upravil řádek 15 ($_SESSION['cart'][$id] = $amount;) na:
$_SESSION['cart'][$id]['mnozstvi'] = $amount;
ale vyhazuje mi to následující chybu:
Cannot use a scalar value as an array
tiso
Profil
byXick: „u produktu v košíku nechci mít v poli pouze množství, ale také cenu, název atd

Ale veď to ti už včera na predchádzajúcej strane vyhováral juriad:
Košík nepotřebuje znát název a cenu, to si můžeš vždy dotáhnout dotazem, také je košiku docela jedno, že může obsahovat id produktu, který neexistuje.
juriad
Profil
byXick:
A uvědomuješ si, že je blbost ty další informace udržovat v košíku? Vždyť název a cenu zjistíš z databáze a cenacelkem je vypočítatelná.
Klidně si vytvoř další funkci, která se bude jmenovat getProductsForCart(), bude sahat do databáze, bude počítat cenu a bude vracet to pole, které ty chceš za každou cenu dát do košíku.
Je to mnohem univerzálnější. Co když ti k produktu přibude například barva a skladové číslo? To budeš upravovat všechna místa, kde se provádí elementární operace s košíkem?

To, co navrhuješ samozřejmě jde udělat, ale poradím ti, až mi dáš jediný dobrý důvod, proč to tak řešit.
byXick
Profil *
jasně, máte pravdu, je to blbost, jdu na to tvým způsobem
« 1 2

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: