Autor Zpráva
Phoenix
Profil *
Mám otázku, lámu si hlavu nad způsobem, jak udělat v košíku (tvorba eshopu) přepočítávání položek..
Že formulářem, je mi jasné, ale jak mám nazvat input pro každou položku a jak to pak během procesu přepočítávání vytáhnout z toho formuláře? Abych pravdu řekla, vubec nevím, čeho se chytit... Budu vděčná za každou radu..

Ještě dodávám, jak mám v databázi udělanou tabulku košík:
kos_session (session zákazníka)  	
kos_pol_id  (id výrobku)
kos_pol_nazev (název výrobku)
kos_pol_mnozs (množství, kolikrát)
kos_pol_cena (cena za jeden výrobek)
kos_pol_kod  (kod výrobku)
kos_zak_id (id zákazníka)
Akacko
Profil
Phoenix
Co myslíš tím přepočítávání položek? Kolik položek má uživatel v košíku? To zjistíš dotazem na db.
SELECT SUM(kos_pol_mnozs) FROM tabulka WHERE kos_session=SESSION_ZAKAZNIKA
Phoenix
Profil *
Já se hlavně nemužu odpíchnout od jednoho bodu.. Každý má v košíku jiný počet položek, jeden např. 5, další 40 položek. V případě prvním mám 5 inputů a v případě druhém 40.. a já nevím jak to dostat do zpracování, prostě netuším, co dělat po odeslání formuláře.
Vždycky jsem měla přesně daný počet inputů (a dalších možností ve formu), ale tady daný počet není, tady ho ovlivňuje sám zákazník...
souki
Profil
Phoenix
a co tomu inputu dát jméno kosik[] a pak to v php zpracovat jako pole? :)
Phoenix
Profil *
Jak jméno kosik[]? co to je? já mám input nazvaný vždy podle id položky spolu s "pocet", takže pocet2, pocet4, pocet49
souki
Profil
Phoenix
tak si ho pojmenuj pocet[2],pocet[4],...
Phoenix
Profil *
ale čeho tím docílím?
Akacko
Profil
Phoenix
Pak budeš mít pole $_POST['pocet'] jehož hodnota bude hodnota všech inputů. Poté stačí jednoduše pole projít třeba foreach().

Takže input bude vypadat takto
<input type="text" name="pocet[]" value="njaka_hodnota" />
Následně se to zpracuje např. pomocí foreach()
foreach($_POST['pocet'] as $index => $hodnota)
{
     echo 'pole #' . $index . ' má hodnotu ' . $hodnota . '<br />';
}

Vyzkoušej tento kód, přečti manuál a snad pochopíš jak dál.
Phoenix
Profil *
děkuju moc, tohle mi pomohlo (vážně :) ).

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:

0