Autor Zpráva
qwertz31
Profil *
Ahoj mám problém - nikde v dokumentaci jsem nenašel nic kde bych po výpisu z databáze mohl určité buňky sečíst - například seznam objednávek a zde na každém řádku jméno a cena tak pokud bude více produktů než 2 tak pod tabulku vytvořit buňku se součtem... Php část zvládám ale jakým způsobem ověřit, kolik se vypsalo položek z databáze (SELECT * FROM $table ORDER BY id WHERE 'cena' LIKE '1') a zadruhé jakým způsobem ony konkrétní kolonky sečíst.. Děkuji za cenné rady, qwertz PS: LIKE používám protože se nejedná o vyhledávání nýbrž o filtr..
joe
Profil
Zjistíš počet položek, buď

SELECT COUNT(*) AS count FROM $table ORDER BY id WHERE 'cena' LIKE '1';

a nebo pomocí mysql_num_rows. Záleží na tom, jak s těmi daty pak dále pracuješ.

Součet pak můžeš počítat pokud je počet (count) větší než 1 buď v PHP a nebo přímo pomocí úpravy v dotazu.

SUM(column)
qwertz31
Profil *
díky mysql_num_rows přímo zapadne je to tak ideální... Funguje to tak jak má i když mi příjde ž i když píšu do sql dotaz pokaždý stejně vždycky to dělá něco jinýho :D
diky ještě jednou qwertz31
joe
Profil
Zkoušej si dotazy v phpMyAdmin.
qwertz31
Profil *
SELECT SUM(price * qty) FROM objects WHERE `order` LIKE '1' - mám funkční sql dotaz - zdá se že vše chápu ale jak to zakomponovat do PHP? definuji to jako

$results = mysql_query("SELECT SUM(price * qty) FROM objects WHERE `order` LIKE '$ordr'",$db);
kdy $db je připojení do databáze. potřebuji sql dotaz převést v číslo... díky
joe
Profil
Asi takhle:)

$results = mysql_query("SELECT SUM(price * qty) AS sum_all FROM objects WHERE `order` LIKE '$ordr'",$db);
$results = mysql_fetch_assoc($result);
$results = $results['sum_all'];

echo "Celkova suma: $results";
qwertz31
Profil *
nj tak tam je ta chyba nepouzivam omylem mysql_fetch_assoc :D nj este se ucim :D diky 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: