Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Internet > Web razvoj > Serverske aplikacije i baze podataka

Serverske aplikacije i baze podataka PHP, Perl, ASP, ASP .NET, ColdFusion...
MySQL, PostgreSQL, MSQL, Oracle...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 12.5.2015, 14:17   #1
Mirina
Novi član
 
Član od: 25.1.2015.
Poruke: 12
Zahvalnice: 12
Zahvaljeno 0 puta na 0 poruka
Određen forumom Kako prikazati komentare za odredjenu vest MySQL

Cao svima! Treba mi mala pomoc...
Pravim sajt i imam problem kako da iscitam iz baze komentare za odredjenu vest. U bazi imam dve tabele. U jednoj cuvam vesti a u drugoj komentare. U tabeli vesti nalaze mi se vesti_id, zemlja_id, naslov, opis vesti, image_name i vreme_vesti, a u komentarima komentari_id, vesti_id, korisnickoIme, komentar i vreme. Ne znam kako da izvucem iz baze komentare za odredjenu vest.
Mirina je offline   Odgovor sa citatom ove poruke
Stara 12.5.2015, 20:41   #2
Dekip
V.I.P. Recenzent
 
Član od: 8.11.2008.
Lokacija: XV535
Poruke: 3.198
Zahvalnice: 767
Zahvaljeno 1.024 puta na 568 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

U prvu tabelu unosiš vesti. Svaka vest ima svoj id.
U drugu tabelu unosiš komentare. Svaki komentar ima svoj id i plus u zasebnu kolonu za svaki komentar unosiš i id od vesti.

Pri listanju stranice vežeš za svaku vest komentare koji imaju id od te vesti i to je to.

edit: Malo bolje sam pročitao tvoje pitanje.

Ti koliko vidim sve te kolone imaš. Dakle, pri listanju stranice sa vestima, listaš vest sa vesti_id (recimo) 10 i u drugom upitu baze listaš komentare gde tražiš da se prikažu samo vesti gde je vesti_id isto 10.

Poslednja ispravka: Dekip (12.5.2015 u 20:53)
Dekip je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Dekip na korisnoj poruci:
Mirina (13.5.2015)
Stara 12.5.2015, 21:00   #3
Ivan1981
Veteran
 
Član od: 25.10.2005.
Lokacija: Beograd
Poruke: 1.186
Zahvalnice: 57
Zahvaljeno 283 puta na 191 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

select
k.komentari_id,
k.komentar,
k.korisnickoIme,
k.vreme,
v.vesti_id
from vesti v
inner join komentar k on k.vesti_id=v.vesti_id
where v.vesti_id=id_vesti_za koju_zelis_da_vidis_komentare_po_redovima.

Tabela vesti je tabela sa vestima, a komentar tabela sa komentarima.
Znaci poenta je da odradis spajanje po parametru vesti_id, i onda ispises komentar, korisnika koji ga je ostavio i sve drugo sto ti je eventualno potrebno.

Ovakvo funkcionise u postgresu, ali ces verovatno morati malo da izmenis kod za mysql.
Ivan1981 je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Ivan1981 na korisnoj poruci:
Mirina (13.5.2015)
Stara 13.5.2015, 15:14   #4
Game fever
Starosedelac
 
Član od: 3.4.2007.
Lokacija: London
Poruke: 1.330
Zahvalnice: 2.477
Zahvaljeno 283 puta na 198 poruka
Slanje poruke preko MSN-a korisniku Game fever
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Ako vec imas vest prikazanu na stranici onda pretpostvljam da imas i ID_vest sto znaci da samo treba da uradis ovo:

Kod:
SELECT * FROM komentari WHERE vesti_id = var_koja_sadrzi_id_prikazane_vesti
I samo uradi loop za sve rezultate
Game fever je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Game fever na korisnoj poruci:
Mirina (13.5.2015)
Stara 13.5.2015, 19:23   #5
Mirina
Novi član
 
Član od: 25.1.2015.
Poruke: 12
Zahvalnice: 12
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Hvala Vam svima puno, divni ste.

Citat:
Game fever kaže: Pregled poruke
Ako vec imas vest prikazanu na stranici onda pretpostvljam da imas i ID_vest sto znaci da samo treba da uradis ovo:

Kod:
SELECT * FROM komentari WHERE vesti_id = var_koja_sadrzi_id_prikazane_vesti
I samo uradi loop za sve rezultate
Ovo mi je puno pomoglo, ali mi treba jos jedna mala pomoc: da izracunam broj komentara za odredjeni komentar (kada imam 4 komentara, da mi pise da ih ima toliko). Znam da se to radi sa ,,count" ali nikako da to lepo namestim.
Mirina je offline   Odgovor sa citatom ove poruke
Stara 13.5.2015, 19:34   #6
Ivan1981
Veteran
 
Član od: 25.10.2005.
Lokacija: Beograd
Poruke: 1.186
Zahvalnice: 57
Zahvaljeno 283 puta na 191 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Mozes za count upotrebiti sledece:

select count(*) from komentari where vesti_id=id_vesti

ili

select count(distinct komentari_id) from komentari where vesti_id=id_vesti
Ivan1981 je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Ivan1981 na korisnoj poruci:
Mirina (14.5.2015)
Stara 14.5.2015, 0:52   #7
Mirina
Novi član
 
Član od: 25.1.2015.
Poruke: 12
Zahvalnice: 12
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Hvala puno! Bilo je od pomoci!
Nadam se da ce to biti to.
Mirina je offline   Odgovor sa citatom ove poruke
Stara 27.5.2015, 22:12   #8
Mirina
Novi član
 
Član od: 25.1.2015.
Poruke: 12
Zahvalnice: 12
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Opet ja sa mojim problemima sa Mysql...
Evo pokusacu slikovito da objasnim novi problem sa kojim sam se susrela. Imam ovu tabelu u koju upisujem rezultate:





Treba da kada izaberem zemlju iz baze mi prikaze rezultate za tu izabranu zemlju, ali samo rezultate poslednjeg kola.
Kad izaberem zemlju, prikaze mi sve rezultate iz baze:



Upit mi ide ovako:

$q = "SELECT DISTINCT * FROM kola WHERE zemlja_id = " . $_GET['zemlja'] ." ORDER BY kolo DESC;";

Pomagajte, to mi je poslednja stvar koja mi je ostala da resim.

Poslednja ispravka: Mirina (27.5.2015 u 22:40)
Mirina je offline   Odgovor sa citatom ove poruke
Stara 27.5.2015, 23:16   #9
JohnnyNT
Deo inventara foruma
 
Član od: 15.4.2006.
Lokacija: Srbija
Poruke: 4.037
Zahvalnice: 1.298
Zahvaljeno 1.396 puta na 948 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Možeš valjda sa MAX(kolo) to da uradiš.
JohnnyNT je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku JohnnyNT na korisnoj poruci:
Mirina (28.5.2015)
Stara 28.5.2015, 0:01   #10
Ivan452
Veteran
 
Član od: 25.7.2008.
Lokacija: Beograd
Poruke: 772
Zahvalnice: 33
Zahvaljeno 189 puta na 152 poruka
Slanje poruke preko MSN-a korisniku Ivan452
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

dobar ti je upit, dodaj samo na kraju "LIMIT 1".
Ovo znači da će ti iz celog seta povući samo prvi red.

http://www.w3schools.com/php/php_mysql_select_limit.asp
Ivan452 je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Ivan452 na korisnoj poruci:
Mirina (28.5.2015)
Stara 28.5.2015, 17:46   #11
Mirina
Novi član
 
Član od: 25.1.2015.
Poruke: 12
Zahvalnice: 12
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Izgleda da nisam lepo objasnila problem



I meni je palo na pamet da stavim ,,limit", ali problem je to sto kad izaberem npr. Srbiju u jednom kolu ima 5 odigranih utakmica, a ako npr. obelezim Nemacku ona ima u jednom kolu 6 odigranih utakmica. Znaci ne mogu nikako sa ,,limit" to da odradim nego nekako da ga razvrstam po poslednjem odigranom kolu, kada korisnik izabere odredjenu zemlju. Baza mi nije popunjena, samo sam nalupala par utakmica da imam par primera dok pokusavam da lepo namestim upit.
@JohnnyNT Sa ,,max" nisam nikako uspela da namestim... Jedino sam dobila zbir kola i nista vise.
Mirina je offline   Odgovor sa citatom ove poruke
Stara 28.5.2015, 18:21   #12
Game fever
Starosedelac
 
Član od: 3.4.2007.
Lokacija: London
Poruke: 1.330
Zahvalnice: 2.477
Zahvaljeno 283 puta na 198 poruka
Slanje poruke preko MSN-a korisniku Game fever
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Znaci treba ti sve utakmice odigrane u poslednjem kolu?
Game fever je offline   Odgovor sa citatom ove poruke
Stara 28.5.2015, 18:38   #13
Mirina
Novi član
 
Član od: 25.1.2015.
Poruke: 12
Zahvalnice: 12
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Da, to bi mi trebalo

Poslednja ispravka: Mirina (28.5.2015 u 18:54)
Mirina je offline   Odgovor sa citatom ove poruke
Stara 28.5.2015, 20:29   #14
Ivan452
Veteran
 
Član od: 25.7.2008.
Lokacija: Beograd
Poruke: 772
Zahvalnice: 33
Zahvaljeno 189 puta na 152 poruka
Slanje poruke preko MSN-a korisniku Ivan452
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Nije optimalan query, ali verujem da je jednostavniji da se razume i da će da odradi posao.

Kod:
SELECT DISTINCT * FROM kola WHERE zemlja_id = " . $_GET['zemlja'] ." 
and kolo = (SELECT MAX(KOLO) FROM kola where zemlja_id = " . $_GET['zemlja'] ";
Ivan452 je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Ivan452 na korisnoj poruci:
Mirina (28.5.2015)
Stara 28.5.2015, 21:53   #15
Mirina
Novi član
 
Član od: 25.1.2015.
Poruke: 12
Zahvalnice: 12
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Nece ovako Pokusala sam sa nekim malim varijacijama ali nista
Mirina je offline   Odgovor sa citatom ove poruke
Stara 28.5.2015, 22:31   #16
Remedy
Veteran
 
Član od: 5.11.2005.
Poruke: 826
Zahvalnice: 177
Zahvaljeno 199 puta na 154 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Pomozi ljudima koji pokusavaju da ti pomognu. Da li dobijas sql error, ili dobijas pogresan set rezultata (kakav)? Upit bi trebalo da je ok, osim sto nedostaje zagrada na kraju.

Poslednja ispravka: Remedy (28.5.2015 u 22:44)
Remedy je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Remedy na korisnoj poruci:
Mirina (29.5.2015)
Stara 29.5.2015, 16:06   #17
Mirina
Novi član
 
Član od: 25.1.2015.
Poruke: 12
Zahvalnice: 12
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Ja se stvarno trudim da objasnim sto bolje u cemu je problem i zahvalna sam sam svima sto se trude da pomognu .
Elem, sto se upita tice koji je predlozio Ivan452, da problem je bio u zagradi. Kada sam nju ubacila proradilo je ali sam se susrela onda sa drugom vrsta problema Posto imam 4 kolo u 2015 i 2014 godini, prikaze mi rezultate za obe godine. Znaci trebalo bi jos nekako u upit ubaciti da se izvuku samo rezultati za poslednju godinu.
Nemojte da mislite da samo kukam ovde po forumu, evo od jutros preko 6 sati googlam po netu i gledam razne primere ali ne uspavam da namestim i tek kad mi ponestane ideja dodjem i pitam.
Pokusavala sam isto kao sto je Ivan dao sa MAX(godina), sa LAST(godina) i svasta nesto ali velika mi je greska sto na faxu nisam izabrala baze podataka vec sam uzela programiranje(i ako sam znala da sa tim necu nikada da se bavim) i sad pokusavam da to nadoknadim gledajuci razne tutorijale. Uspela sam da savladam neke osnove ali treba mi pomoc sa kompleksnijim upitama
Stvarno se nadam da vas nisam smorila i jos jednom PUNO hvala svima.

Poslednja ispravka: Mirina (29.5.2015 u 16:21)
Mirina je offline   Odgovor sa citatom ove poruke
Stara 29.5.2015, 17:44   #18
Remedy
Veteran
 
Član od: 5.11.2005.
Poruke: 826
Zahvalnice: 177
Zahvaljeno 199 puta na 154 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Vide ljudi da se trudiš, zato i pokušavaju da ti pomognu. Možeš da nastaviš da "kitiš" prethodni upit:
Kod:
SELECT DISTINCT * FROM kola WHERE zemlja_id = " . $_GET['zemlja'] ." 
and kolo = (SELECT MAX(KOLO) FROM kola where zemlja_id = " . $_GET['zemlja'] ")
and godina=(SELECT MAX(godina) FROM kola WHERE zemlja_id=" . $_GET['zemlja'] . ");
Ali "slon u sobi" je dizajn ove tabele, koji je naopak. Tu su zajedno babe, žabe, čvarci i opanci. I kad treba da izvršiš praktično 3 upita (jedan upit koji sadrži još 2) za nešto što je jedan od osnovnih zadataka, jasno ti je da ćeš tek imati probleme. Banalan primer, zamisli da treba da izvučeš sve rezultate za recimo Zvezdu. I ko zna koliko puta je neko progutao slovo kad je unosio ime kluba (zamisli umesto Zvezde neki klub npr iz Danske). Onda treba da se ubiješ dok nađeš te redove.

Kasnije ili pre moraćeš da proučiš dizajn relacionih baza (npr Beginning Database Design: From Novice to Professional - Clare Churcher). Za MySQL imaš MySQL Developers Library - Paul DuBois, koja ima i solidan odeljak za učenje osnova SQL-a. Da bi neko dizajnirao bazu, mora da zna kakvi podaci će se skladištiti i kakve zadatke treba da obavi ta baza. Pravila koja se pri tom koriste nisu sveta krava i mogu da se krše, ali moraš da zanaš kad možeš da ih prekršiš. Ako je dizajn loš, kasnije se muke samo uvećavaju.

I nemoj da se vadiš na fakultet, ja sam studirao farmaciju .
Remedy je offline   Odgovor sa citatom ove poruke
Sledećih 2 korisnika se zahvaljuje korisniku Remedy na korisnoj poruci:
Game fever (31.5.2015), Mirina (30.5.2015)
Stara 29.5.2015, 19:49   #19
Ivan452
Veteran
 
Član od: 25.7.2008.
Lokacija: Beograd
Poruke: 772
Zahvalnice: 33
Zahvaljeno 189 puta na 152 poruka
Slanje poruke preko MSN-a korisniku Ivan452
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

OK, deluje mi kao da će ovde biti još pitanja.
Mirina, ako išta želiš da budeš u IT-ju onda ćeš osnove SQL-a morati da znaš.

Kao što ti je Remedy rekao, dizajn jeste malo naopak. Međutim, veći problem ja ovde vidim je to što ti ne znaš ni select da napišeš. Umesto što tako nasumično tražiš po internetu rešenje za svaki pojedinačni problem, moj predlog ti je da nađeš interaktivni SQL tutorijal na internetu. baš sam skoro video jedan gde ti kroz pretraživač zadaje zadatke i ti odmah kucaš upite.
SELECT, UPDATE, DELETE i agregatne funkcije možeš da savladaš za sat-dva vremena rada. I onda ćeš jednostavnije upite znati i sama da napišeš, a za nešto kompleksnije ćeš znati šta i gde da tražiš.
Ivan452 je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Ivan452 na korisnoj poruci:
Mirina (30.5.2015)
Stara 30.5.2015, 0:13   #20
Remedy
Veteran
 
Član od: 5.11.2005.
Poruke: 826
Zahvalnice: 177
Zahvaljeno 199 puta na 154 poruka
Određen forumom Re: Kako prikazati komentare za odredjenu vest MySQL

Da se nadovežem, nisam danas imao knigu pri ruci. MySQL Developers Library, 1. poglavlje, zaključno sa 1.4 MySQL Tutorial. Tu na 80 strana na primerima imaš objašnjeno ovo što je Ivan452 naveo, plus osnove rada sa datumima i selekciju podataka iz više tabela (join). Može da se pređe za nekoliko sati, nije to Rat i mir, ima tu listinga kodova i rezultata upita. Sigurno treba manje vremena nego što si danas potrošila tražeči rešenje za ovaj upit (knjiga je popularna i lako se nalazi u pdf formatu, za početak).

Što se tiče dizajna relacionih baza, te knjige su lagane za čitanje, jer nema puno koda (a i nije poenta u njemu). Principi su objašnjeni na primerima uz pomoć šema i dijagrama, Nije bitno da ih zapamtiš (neće te niko pitati da izdeklamuješ pravila za normalizaciju baze), nego da ih razumeš, da bi zanala kako da razmišljaš kada praviš bazu, odakle da kreneš, kako da formiraš tabele.
Remedy je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Remedy na korisnoj poruci:
Mirina (30.5.2015)
Odgovor

Bookmarks sajtovi

Alatke vezane za temu
Vrste prikaza

Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Kako optimizovati plugin za Facebook komentare? hallooo Web razvoj 0 23.10.2014 13:11
Kako da obrisem komentare sa YT? PS mode Zanimljive Web lokacije 1 30.11.2012 19:49
MYSQL i PHP i Apache vladakg Programiranje 18 25.6.2009 7:21
Kako uplodovati MYSQL na server Boris Zegarac Serverske aplikacije i baze podataka 1 25.10.2007 0:58


Sva vremena su po Griniču +2 h. Sada je 11:45.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com