PHP & MySql

PHP & MySql

offline
  • Marko Radukin
  • Mikro-X
  • Pridružio: 21 Nov 2008
  • Poruke: 29
  • Gde živiš: Novi Sad

Pozdrav,
Pravim neki program u PHP, a usput koristim i MySQL. E ovako ja preko PHP-a unosim podatke koji se kasnije sabiraju i unose u bazu podataka. U bazi imam jednu kolonu UKUPNO, i tu imam oko 100 podataka, naravno sve su brojevi. E sad, ja treba da seberem sve rezultate iz te kolone i da ih upisem u kolonu SVEUKUPNO. Znam kako bih sabrao te dve kolone, ali meni treba da saberem sve podatke iz samo jedne kolone. To bi trebalo da izgleda ovako:
+---------+ +-------------+
+UKUPNO+ +SVEUKUPNO+
+---------+ +---------------+
+ 20 + + 60 +
+---------+ +--------------+
+ 40 +
+---------+
Nadam se da ste me razumeli šta hoću. Hvala unapred Smile



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 10 Avg 2006
  • Poruke: 1009
  • Gde živiš: Beograd

To što ti hoćeš je, naravno, moguće uraditi. Međutim, deluje mi glupo i nepraktično. Imaš čitavu kolonu za samo jedno polje (SVEUKUPNO).

Po mom mišljenju bi trebalo da napraviš novu tabelu u koju ćeš ubacivati te stvari kojima je potrebno samo jedno polje, a trebala bi da izgleda ovako:

+IME PROMENLJIVE++VREDNOST+

gde bi u koloni ime promenljive ubacivao baš kao što i reč kaže, imena promenljivih, a u "vrednost" ubacivao vrednosti tih promenljivih. Druga stvar koja mislim da ti ne valja je to što nemaš "ID" kolonu. Ja ID kolonu imam u 99% tabela. Ona drži identifikacione brojeve svakog reda tabele, tako da ne može da dođe do zabune pri računanju, brisanju, prepravljanju.

Kako god, podatke iz kolone ukupno bi sabrao ovako:

$zbir = 0; $rezultat = mysql_query("SELECT UKUPNO FROM IME_TABELE"); while ($red=mysql_fetch_array($rezultat,MYSQL_NUM)) { $zbir += $red[0]; }

Onda taj zbir ubaci gde već želiš.



offline
  • PHP Developer
  • Pridružio: 02 Okt 2005
  • Poruke: 546

a moze i mysql da uposlis brze je
$query = "SELECT SUM(UKUPNO) as SVEUKUPNO FROM products;";
[Link mogu videti samo ulogovani korisnici]

offline
  • PHP developer
  • Pridružio: 22 Mar 2006
  • Poruke: 3760
  • Gde živiš: 127.0.0.1

A moze i ovako:

SELECT SUM(`ukupno`) FROM `ime_tabele`;

Dobija 1 red, nema potrebe za while petljom i sabiranjem kroz PHP. Ili, ako zeli sve u jednom upitu, ovako:

UPDATE `druga_tabela` SET `sve_ukupno` = SELECT SUM(`ukupno`) FROM `prva_tabela`;

offline
  • Marko Radukin
  • Mikro-X
  • Pridružio: 21 Nov 2008
  • Poruke: 29
  • Gde živiš: Novi Sad

Napisano: 09 Okt 2011 14:17

E ovako,
kao prvo, hvala na odgovorima, a kao drugo Smile ... Ta baza podataka naravno ne sadrzi samo kolone UKUPNO i SVEUKUPNO. U njoj imaju i kolone ID, KUKURUZ, SOJA, TOP. Ja imam php program "http://mikro-x.com/farma/cene.php", koji mi trazi da unesem cenu kukuruza, sojine pogace i top-a. Kada ja unesem te cene, on onda mnozi cenu kukuruza sa 54, soju sa 40 i top sa 5. Kasnije to upise u bazu, a iz baze cita te podatke. U koloni ukupno u programu, on sabira te izmnozene vrednosti, i tako popunjava tu tabelu. Trenutne vrednosti u redu ukupno su 3630 i 2986. Naravno, posto ce se to azurirate dnevno, on bi trebao da sabira to iz kolone ukupno i da upise u drugu kolonu sve ukupno, što bi u ovom slucaju iznosilo 6616, ali naravno da se to sabira automatski, da ne moram ja da uzimam digitron, i tako na hiljade redova sabiram... Predpostavljam da sam sada malo više pojasnio šta želim da uradim.
Hvala još jednom Smile

Dopuna: 09 Okt 2011 15:59

Uspeo sam da uradim, hvala puno Smile

Ko je trenutno na forumu
 

Ukupno su 1079 korisnika na forumu :: 88 registrovanih, 5 sakrivenih i 986 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 20624 - dana 04 Apr 2026 04:18

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 33 bren, 4fat, amstel, aramis s, Asteker, Avalon015, Ba4e, Battlehammer, blue, Bobrock1, boj.an, bokisha253, boro975, boskelazo, C-Gun, cekic, dekiz, Dioniss, djboj, Djokislav, djonsule, Djota1, doktor1964, drale12, Giskard, Halabit, HogarStrashni, Ice, Igorkg77, igorkozar83, ikan, ivan1973, jarovitt, Jeremiah, JimmyNapoli, kaisarevic1, Kiki98TZ, koom0001, Kruger, Krusarac, kybonacci, lacko, lcc, louderik, lukac, M74AB3, macak44, mgolub, Milan1996, Milun24, miodrag, mir, mirkoro, mist-mist, moldway, museum, N.e.m.a.nj.a., nenooo, opt1, Pale2025, Pc-21, ping15, PitterBg, proljece, Pv123, RJ, Romibrat, ruma, sabros, shone34, Smd, stegonosa, synergia, tanakadzo, tanzanija, Tas011, tomigun, Tribal, vathra, veljko82, Vlado82, volimpivuvolimrakiju, Volkcho, wexy, Zadonbas, zemljanin, zljubomir, Zrcalo