[ koya.90 @ 28.04.2013. 00:38 ] @
Pozdrav svima. Molim za pomoć! Radim "Studentski Servis", za školu na kojoj studiram a ujedno i sebi diplosmki rad... Imam problem sa sql select-om. Da bi vas upoznao sa mojim problemom, prvo pogledajte tabele putem linka: https://docs.google.com/file/d...ZpVTFLYVBpUlE/edit?usp=sharing E sad, problem mi je u stranici za prijavu ispita. Da bih prijava ispita radila pravilno mora se dobro organzovati upit. Recimo mi prijavljujemo ispit, 2 smo godina i treba da polažemo ispite 3 semestra! Znaci,mi moramo da iz spiska ispita za prijave ispita izbacimo ispite koji pripadaju 4,5,6,7 i 8 semestru (tj ono sto jos nismo imali predavano a imacemo), moramo da izbacimo polozene ispite i moramo da izbacimo one za koje smo dobili zabranu polaganja. Ali moramo da vodimo računa o tome da ispiti pripadaju našem smeru (recimo smeru informacionih tehnologija). E sad,kad odbijamo polozeni predmet iz spiska prijave, taj predmet mora da se odnosi samo na naš tj. na naš broj indeksa koji je recimo 4-103/2010, a takodje i zabranu koja je izrečena samo za nas broj indeksa... Nadam se da shvatate. Pogled na kod: Code: $indeks = $red['indeks']; $zadnji_overen_sem = $red['zadnji_overen_sem']; //zadnji overen semestar $id_smera = $red['indeks']; //broj 4 iz indeksa predstavlja smer: 4-103/2010 if(intval($id_smera[0]) < 5 AND intval($id_smera[0]) > 0 ) // Da li je smer u intervalu (0,5) $id_smera[0]; $spisak = " SELECT * FROM spisak_ispita, predmet, predmet_po_smeru ,profesor WHERE spisak_ispita.sifra_predmeta = predmet.sifra_predmeta AND spisak_ispita.sifra_predmeta = predmet_po_smeru.sifra_predmeta AND predmet.sifra_predmeta = predmet_po_smeru.sifra_predmeta AND predmet_po_smeru.id_smera = '$id_smera' AND predmet_po_smeru.broj_semestra <= '$zadnji_overen_sem' AND spisak_ispita.id_prof = profesor.id AND spisak_ispita.id_ispit NOT IN (select id_prijave_ispita from ocena) AND spisak_ispita.id_ispit NOT IN (select id_ispit from prijava_ispita) "; $rezultat = mysql_query($spisak); while($red = mysql_fetch_array($rezultat)) { $id_ispit = $red['id_ispit']; $sifra_predmeta = $red['sifra_predmeta']; $ime_predmeta = $red['ime_predmeta']; . . . } Ovaj sql select dobro radi,osim poslednja 2 reda: Code: AND spisak_ispita.id_ispit NOT IN (select id_prijave_ispita from ocena) AND spisak_ispita.id_ispit NOT IN (select id_ispit from prijava_ispita) Oni bi trebali da kazu da to vazi samo za nas indeks 4-103/2010 $indeks = $red['indeks']; ... Ja ne znam kako da to dopisem u ovaj upit, ali razumem problem. Nadam se da me razumete sta je problem odnosno da sam vam objasnio... SQL kod tabela možete videti putem linka: https://docs.google.com/file/d...N5MlNfaHVuWnc/edit?usp=sharing Hvala svima unapred koji mi daju sugestiju ili mi rese problem! |