Autor Zpráva
GagraT
Profil *
Prosím, muže mi někdo poradit, jak udělat sčítání položek v košíku v internetovém obchodě?

Výpis v košíku mám takto (ten funguje ber problému):

$idr = $_SESSION["idr"];
$pako = session_id();
echo "<table>";
$resu = mysql_query("SELECT * FROM kosik WHERE kos_session = '$pako' AND kos_zak_id = '$idr'");
    while ($rowe = MySQL_Fetch_Row($resu)):
    $cena = $rowe[3] * $rowe[4];
    echo "<tr><td><a href=\"index.php?page=detail#id=\">$rowe[2]</a></td><td>" . $rowe[3] . "x</td><td>$cena</td></tr>";
    endwhile;
echo "</table>";


v databázi:

CREATE TABLE `kosik` (
`kos_session` varchar(128) collate cp1250_czech_cs NOT NULL default '',
`kos_pol_id` int(5) default '0',
`kos_pol_nazev` varchar(250) collate cp1250_czech_cs NOT NULL default '',
`kos_pol_mnozs` int(5) default '0',
`kos_pol_cena` int(4) default '0',
`kos_zak_id` int(5) default '0'
) ENGINE=MyISAM DEFAULT CHARSET=cp1250 COLLATE=cp1250_czech_cs;

kde kos_pol_mnozs je množství položky a kos_pol_cena cena položky...
Takže potřebuju vynásobit množství a cenu každé položky a sčítnout to. Ale já nevím jak:(
Mastodont
Profil
select sum(kos_pol_mnozs * kos_pol_cena) from kosik group by kos_session where kos_session = X


A jinak je vhodnější mít údaje ve dvou tabulkách, předpokládám, že pro jeden kos_session je vždy stejný kos_zak_id
GagraT
Profil *
a prosím, to X je $pako?
Já jsem že jsem to dosadila tedy a:

$countuz = mysql_result(mysql_query("select sum(kos_pol_mnozs * kos_pol_cena) from kosik group by kos_session where kos_session = '$pako'"), 0);
echo "celkem $countuz";


Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /var/www/web5/czechbeadwork.net/spolek.czechbeadwork.net/kosik.php on line 15
celkem You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where kos_session = 'e0f8426b1b4d131d47235351084c92ee'' at line 1
GagraT
Profil *
už to mám, vyhodila jsem
group by kos_session
a funguje to, děkuju moc:)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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