Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- function studentska_plan_studija(){
- global $userid,$user_siteadmin,$user_studentska;
- // Provjera privilegija
- if (!$user_studentska && !$user_siteadmin) {
- zamgerlog("nije studentska",3); // 3: error
- biguglyerror("Pristup nije dozvoljen.");
- return;
- }
- }
- // Konfigurabilna sekcija
- define('BROJ_SEMESTARA', 10);
- define('MAX_BROJ_PREDMETA_PO_SEMESTRU', 10);
- # Provjeris je li postavljen broj izbornih i ako nekim cudom nije postavis na
- # svoju tu vrijednost od 6, to je dovoljno dobro rjesenje al onda moras
- # pazit da neko ranije nije unio neki drugi broj (i.e. prvi put stavim 9 i
- # kad hocu izmijenit stavim 6 pa mi ne prikaze ona 3 predmeta)
- if(isset($_POST['max_izbornih']) and $_POST['max_izbornih'] > 0 ){
- define('MAX_BROJ_IZBORNIH_PREDMETA_PO_SEMESTRU', $_POST['max_izbornih']);
- } else {
- define('MAX_BROJ_IZBORNIH_PREDMETA_PO_SEMESTRU', 6);
- }
- // Konekcija na bazu
- $db_link = mysql_connect("localhost","elma","elma");
- if (!$db_link) {
- debugError('Konekcija na bazu nije uspjela');
- exit;
- }
- // Biranje baze koja se koristi
- if (!mysql_select_db("elma", $db_link)) {
- debugError('Baza nije izabrana');
- exit;
- }
- // Formiraj niz semestara
- $data_semestar = array();
- $data_semestar[] = 'I';
- $data_semestar[] = 'II';
- $data_semestar[] = 'III';
- $data_semestar[] = 'IV';
- $data_semestar[] = 'V';
- $data_semestar[] = 'VI';
- $data_semestar[] = 'VII';
- $data_semestar[] = 'VIII';
- $data_semestar[] = 'IX';
- $data_semestar[] = 'X';
- // Ucitaj podatke o studijima
- $data_studij = array();
- $data_zavrsni_semestar = array();
- $sql_studij = " SELECT id, naziv, zavrsni_semestar FROM `studij` ";
- if(!($query_studij = mysql_query($sql_studij))){
- debugError('Upit nije uspio: '.(mysql_error()));
- exit;
- }
- if(mysql_num_rows($query_studij) > 0){
- while($row = mysql_fetch_array($query_studij)){
- $data_studij[$row['id']] = $row['naziv'];
- $data_zavrsni_semestar[$row['id']] = $row['zavrsni_semestar'];
- }
- }else{
- debugError('Nema podataka o studijima');
- exit;
- }
- //Ucitaj podatke o akademskoj godini<br />
- $data_akademska_godina = array();
- $sql_akademska_godina = " SELECT id, naziv FROM `akademska_godina` ";
- if(!($query_akademska_godina = mysql_query($sql_akademska_godina))){
- debugError('Upit nije uspio: '.(mysql_error()));
- exit;
- }
- if(mysql_num_rows($query_akademska_godina) > 0){
- while($row = mysql_fetch_array($query_akademska_godina)){
- $data_akademska_godina[$row['id']] = $row['naziv'];
- }
- }else{
- debugError('Nema podataka o akademskim godinama');
- exit;
- }
- // Podaci o predmetima
- $data_predmet = array();
- $sql_predmet = " SELECT id, naziv FROM `predmet` ";
- if(!($query_predmet = mysql_query($sql_predmet))){
- debugError('Upit nije uspio: '.(mysql_error()));
- exit;
- }
- if(mysql_num_rows($query_predmet) > 0){
- while($row = mysql_fetch_array($query_predmet)){
- $data_predmet[$row['id']] = $row['naziv'];
- }
- }else{
- debugError('Nema podataka o predmetima');
- exit;
- }
- // Podaci o predmetima s kratki_naziv
- $data_predmetk = array();
- $sql_predmetk = " SELECT id, kratki_naziv FROM `predmet` ";
- if(!($query_predmetk = mysql_query($sql_predmetk))){
- debugError('Upit nije uspio: '.(mysql_error()));
- exit;
- }
- if(mysql_num_rows($query_predmetk) > 0){
- while($row = mysql_fetch_array($query_predmetk)){
- $data_predmetk[$row['id']] = $row['kratki_naziv'];
- }
- }else{
- debugError('Nema podataka o predmetima');
- exit;
- }
- # Dohvatis "slotove" o kojim vedran prica
- # probaj ovo skontat!!!
- $slotovi = array();
- $slot_predmeti = array();
- $izborni_slotovi = mysql_query("SELECT * FROM izborni_slot");
- if(!($izborni_slotovi)){
- debugError('Upit nije uspio: '.(mysql_error()));
- exit;
- }
- if(mysql_num_rows($izborni_slotovi) > 0){
- while($row = mysql_fetch_array($izborni_slotovi)){
- if(! in_array($row['id'], $slotovi)){
- $slotovi[] = $row['id'];
- }
- $slot_predmeti[$row['id']][] = $row['predmet'];
- }
- }else{
- debugError('Nema podataka o predmetima');
- exit;
- }
- // Niz predmeta, zbog prikupljanja POST/GET podataka
- $get_post_array = array('posted', 'studij','akademska_godina');
- for($i = 0; $i < BROJ_SEMESTARA; $i++){
- for($j = 0; $j < MAX_BROJ_PREDMETA_PO_SEMESTRU; $j++){
- $get_post_array[] = 'semestar_'.$i.'_predmet_'.$j;
- }
- for($j = 0; $j < MAX_BROJ_IZBORNIH_PREDMETA_PO_SEMESTRU; $j++){
- $get_post_array[] = 'semestar_'.$i.'_izborni_predmet_'.$j;
- }
- }
- // Preuzmi potrebne GET/POST varijable
- getpost_ifset($get_post_array);
- # provjeri je li se desilo da u
- # jednom semestru ima da je neki slot
- # postavljen dva puta ili neki predmet
- $greskaSlotovi = false;
- if($studij and $posted){
- for($i = 0; $i < BROJ_SEMESTARA; $i++){
- $niz = array();
- for($j = 0; $j < MAX_BROJ_PREDMETA_PO_SEMESTRU; $j++){
- $varijabla = 'semestar_'.$i.'_predmet_'.$j;
- if($$varijabla == 0) continue;
- $niz[] = $$varijabla;
- }
- if(count($niz) > count(array_unique($niz))){ $greskaSlotovi = true; }
- $niz = array();
- for($j = 0; $j < MAX_BROJ_IZBORNIH_PREDMETA_PO_SEMESTRU; $j++){
- $varijabla = 'semestar_'.$i.'_izborni_predmet_'.$j;
- if($$varijabla == 0) continue;
- $niz[] = $$varijabla;
- }
- if(count($niz) > count(array_unique($niz))){
- $greskaSlotovi = true;
- }
- }
- if($greskaSlotovi){ $posted=false; }
- }
- ############################################################ FORMA 1: Odabir godine i studija
- if(!$studij){
- // Spremi odgovarajucu formu
- $html = '<html>';
- $html .= '<head>';
- $html .= '<title>';
- $html .= 'Izaberi studij';
- $html .= '</title>';
- $html .= '</head>';
- $html .= '<body>';
- $html .= '<table align="center" border="1" width="80%" style="border-style:solid;">';
- $html .= '<tr>';
- $html .= '<td style="border:1px solid #ffffff; background:#ffffff; font-weight: bold;">';
- $html .= 'Izaberi studij';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '<tr>';
- $html .= '<td>';
- $html .= '<form name="form" method="post" action="'.($_SERVER['PHP_SELF']).'">';
- $html .= '<table align="center" border="0" width="100%">';
- // Odabir naziva studija
- $html_row = '<tr style="padding-left: 30px; border-bottom: 1px solid #cecfce;">';
- $html_row .= '<td>';
- $html_row .= 'Studij';
- $html_row .= '</td>';
- $html_row .= '<td>';
- $html_row .= '<select name="studij">';
- foreach($data_studij as $id => $naziv){
- $html_row .= '<option value="'.$id.'">'.$naziv.'</option>';
- }
- $html_row .= '</select>';
- $html_row .= '</td>';
- $html_row .= '</tr>';
- $html .= $html_row;
- // Odabir naziva akademske godine
- $html_row = '<tr style="padding-left: 30px; border-bottom: 1px solid #cecfce;">';
- $html_row .= '<td>';
- $html_row .= 'Akademska godina';
- $html_row .= '</td>';
- $html_row .= '<td>';
- $html_row .= '<select name="akademska_godina">';
- foreach($data_akademska_godina as $id => $naziv){
- $html_row .= '<option value="'.$id.'">'.$naziv.'</option>';
- }
- $html_row .= '</select>';
- $html_row .= '</td>';
- $html_row .= '</tr>';
- $html .= $html_row;
- $html .= '<tr><td>';
- $html .= 'Max. broj izbornih predmeta u semetru:';
- $html .= '</td><td>';
- $html .= '<input type="text" name="max_izbornih" value="'.(MAX_BROJ_IZBORNIH_PREDMETA_PO_SEMESTRU).'">';
- $html .= '</td></tr>';
- // Submit input
- $html .= '<tr>';
- $html .= '<td>';
- $html .= '</td>';
- $html .= '<td>';
- $html .= '<input type="submit" value="Kreiraj plan studija">';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '</table>';
- $html .= '</form>';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '</table>';
- $html .= '</body>';
- $html .= '</html>';
- // Isprintaj formu
- echo $html;
- ############################################################ FORMA 2: Kreiranje studija (definisanje predmeta)
- }else if(!$posted){
- $sql_pretraga_id="SELECT * FROM `plan_studija` WHERE `godina_vazenja` = '$akademska_godina' and `studij` = '$studij'";
- $rez=mysql_query($sql_pretraga_id);
- if(!$rez){
- die('Upit za godinu vazenja nije uspio: '.mysql_error());
- }
- if(mysql_num_rows($rez) > 0){
- //Izbacivanje greske u slučaju da vec plan postoji u bazi
- $html = '<html>';
- $html .= '<head>';
- $html .= '<title>';
- $html .= 'Kreiranje plana studija';
- $html .= '</title>';
- $html .= '</head>';
- $html .= '<body>';
- $html .= '<table align="center" border="1" width="60%" style="border-style:solid;">';
- $html .= '<tr>';
- $html .= '<td style="border:1px solid #ffffff; background:#ffffff; font-weight: bold;">';
- $html .= 'Kreiranje plana studija ('.($data_studij[$studij]).')';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '<tr>';
- $html .= '<td>';
- $html .= 'Ukoliko semestar ima manje predmeta ostavite polja viska prazna (vrijednost "izaberi").';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '<tr>';
- $html .= '<td style="border:1px solid #ffffff; background:#ffffff; font-weight: bold;">';
- $html .= 'Plan vec postoji u bazi, ukoliko zelite izmjeniti plan to mozete uraditi u formi ispod, ukoliko zelite vidjeti plan kliknite na ok';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '</table>';
- $html .= '</body>';
- $html .= '</html>';
- // Isprintaj formu
- echo $html;
- }
- // Spremi odgovarajucu formu
- $html = '<html>';
- $html .= '<head>';
- $html .= '<title>';
- $html .= 'Kreiranje plana studija';
- $html .= '</title>';
- $html .= '</head>';
- $html .= '<body>';
- $html .= '<form name="form" method="post" action="'.($_SERVER['PHP_SELF']).'">';
- $html .= '<input type="hidden" name="posted" value="1">';
- $html .= '<input type="hidden" name="studij" value="'.$studij.'">';
- $html .= '<input type="hidden" name="akademska_godina" value="'.$_POST['akademska_godina'].'">';
- $html .= '<table align="center" border="1" width="60%" style="border-style:solid;">';
- $html .= '<tr>';
- $html .= '<td style="border:1px solid #ffffff; background:#ffffff; font-weight: bold;">';
- $html .= 'Kreiranje plana studija ('.($data_studij[$studij]).')';
- $html .= '</td>';
- $html .= '</tr>';
- if($greskaSlotovi){
- $html .= '<tr>';
- $html .= '<td style="color:red;">';
- $html .= '<b>Semestar ne moze imati dva ista slota ili dva ista predmeta!';
- $html .= '</td>';
- $html .= '</tr>';
- }
- $html .= '<tr>';
- $html .= '<td>';
- $html .= 'Ukoliko semestar ima manje predmeta ostavite polja viska prazna (vrijednost "izaberi").';
- $html .= '</td>';
- $html .= '</tr>';
- // Petlja po semestrima
- ################################################################################ PETLJA PO SEMETRIMA POCINJE
- for($i = 0; $i < BROJ_SEMESTARA; $i++){
- // Nemaju svi studiji isti broj semestara
- $broj_semestra = $i + 1;
- if($data_zavrsni_semestar[$studij] > 2){
- if($broj_semestra < 3){
- continue;
- }else if($broj_semestra > $data_zavrsni_semestar[$studij]){
- break;
- }
- }else{
- if($broj_semestra > $data_zavrsni_semestar[$studij]){
- break;
- }
- }
- $html .= '<tr>';
- $html .= '<td>';
- $html .= '<table align="center" border="0" width="100%">';
- // Reci o kojem se semestru radi
- $html_row = '<tr style="padding-left: 30px; border-bottom: 1px solid #cecfce;">';
- $html_row .= '<td width="50%">';
- $html_row .= '<b>Semestar: '.($data_semestar[$i]).'</b><hr>';
- $html_row .= '</td>';
- $html_row .= '<td width="50%">';
- $html_row .= '</td>';
- $html_row .= '</tr>';
- $html .= $html_row;
- // Petlja po predmetima
- ################################################################################ PETLJA PO PREDMETIMA POCINJE
- $semestar_i = $i+1;
- # pripremis sebi fino spisak predmeta koji vec imaju u bazi za ovaj semestar
- # tacnije, pripremis spisak vec odabranih predmeta!
- $brojac_izborni = 0;
- $snimljeni_izborni = array();
- $staro_izborni = mysql_query("SELECT * FROM plan_studija WHERE godina_vazenja='$akademska_godina' AND studij='$studij' AND semestar='$semestar_i' AND obavezan='1'");
- while($red = mysql_fetch_assoc($staro_izborni)){
- $snimljeni_izborni[$brojac_izborni] = $red['predmet'];
- $brojac_izborni++;
- }
- for($j = 0; $j < MAX_BROJ_PREDMETA_PO_SEMESTRU; $j++){
- // Odabir predmeta
- $html_row = '<tr style="padding-left: 30px; border-bottom: 1px solid #cecfce;">';
- $html_row .= '<td width="50%">';
- $html_row .= 'Predmet '.($j+1);
- $html_row .= '</td>';
- $html_row .= '<td width="50%">';
- $html_row .= '<select name="semestar_'.$i.'_predmet_'.$j.'">';
- // Po default-u, nije nista odabrano
- $html_row .= '<option value="0" selected>izaberi</option>';
- foreach($data_predmet as $id => $naziv){
- $odabran = '';
- if(isset($snimljeni_izborni[$j]) and $snimljeni_izborni[$j] == $id){
- $odabran = 'selected="selected"';
- }
- $html_row .= '<option value="'.$id.'" '.($odabran).'>'.$naziv.'</option>';
- }
- $html_row .= '</select>';
- $html_row .= '</td>';
- $html_row .= '</tr>';
- $html .= $html_row;
- }
- // Petlja po izbornim predmetima
- # Ovdje provjeris da nema u bazi vise predmeta nego sto je neko stavio
- # na prvoj strani (ono stavio 6 a prvi put stavio 9) pa prikazes ukupan
- # broj ako ih ima vise od date vrijednost
- $izbornih_broj = MAX_BROJ_IZBORNIH_PREDMETA_PO_SEMESTRU;
- $test_broj_izbornih = mysql_query("SELECT COUNT(*) FROM plan_studija WHERE godina_vazenja='$akademska_godina' AND studij='$studij' AND semestar='$semestar_i' AND obavezan='0' LIMIT 1");
- if($test_broj_izbornih != false AND mysql_num_rows($test_broj_izbornih) == 1){
- $test_broj_izbornih_red = mysql_fetch_row($test_broj_izbornih);
- if($izbornih_broj < $test_broj_izbornih_red[0])
- {
- $izbornih_broj = $test_broj_izbornih_red[0];
- }
- }
- # pripremis sebi fino spisak predmeta koji vec imaju u bazi za ovaj semestar
- # tacnije, pripremis spisak vec odabranih predmeta!
- $brojac_izborni = 0;
- $snimljeni_izborni = array();
- $staro_izborni = mysql_query("SELECT * FROM plan_studija WHERE godina_vazenja='$akademska_godina' AND studij='$studij' AND semestar='$semestar_i' AND obavezan='0'");
- while($red = mysql_fetch_assoc($staro_izborni)){
- $snimljeni_izborni[$brojac_izborni] = $red['predmet'];
- $brojac_izborni++;
- }
- for($j = 0; $j < $izbornih_broj; $j++){
- // Odabir predmeta
- $html_row = '<tr style="padding-left: 30px; border-bottom: 1px solid #cecfce;">';
- $html_row .= '<td width="50%">';
- if(!$j){
- $html_row .= '<hr>';
- }
- $html_row .= 'Izborni Predmet '.($j+1);
- $html_row .= '</td>';
- $html_row .= '<td width="50%">';
- $html_row .= '<select name="semestar_'.$i.'_izborni_predmet_'.$j.'">';
- // Po default-u, nije nista odabrano
- $html_row .= '<option value="0" selected>izaberi</option>';
- foreach($slotovi as $id){
- $odabran = '';
- if(isset($snimljeni_izborni[$j]) and $snimljeni_izborni[$j] == $id){
- $odabran = 'selected="selected"';
- }
- $html_row .= '<option value="'.$id.'" '.($odabran).'>';
- $nizpredmeta=array();
- foreach($slot_predmeti[$id] as $idp=>$predmet){
- $nizpredmeta[] = $data_predmetk[$predmet];
- }
- $html_row .= implode(', ', $nizpredmeta);
- $html_row .= "</option>";
- }
- $html_row .= '</select>';
- $html_row .= '</td>';
- $html_row .= '</tr>';
- $html .= $html_row;
- }
- $html .= '</table>';
- $html .= '</td>';
- $html .= '</tr>';
- }
- // Submit input
- $html .= '<tr>';
- $html .= '<td align="right" style=" padding-left: 170px; border-bottom: 1px solid #cecfce; background-color: #cccccc;">';
- $html .= '<input type="submit" value="OK">';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '</table>';
- $html .= '</form>';
- $html .= '</body>';
- $html .= '</html>';
- // Isprintaj formu
- echo $html;
- }else{
- ############################################################ FORMA 3: Snimanje plana i stampa
- // Obrisi stari plan, ako postoji, prije nego ubacis novi
- # Ovo moras ovako radit, ako te vedran pita zasto kazes mu:
- #
- # Zato sto tabela plan_studija nema polje ID (primary key polje koje je unique i auto_increment)
- # Da ima ID polje moglo bi se radit:
- # UPDATE plan_studija SET nova vrijednost WHERE ID='id_vrijednost'
- # Posto nema ID polja ne postoji siguran nacin da se plan studija samo prepise (tj. da se neki
- # individualni predmet prepise). Postoji nacin ali ti sigurno neces to skontat sve da ti napisem
- # kod koji bi to radio. Ako te vedran pita moze li se ti mu reci da moze ali onda moras prepraviti
- # kod tako da vodis brigu o vrijednostima koje su prije bile, tacnije, da bi to radilo samo sa
- # SQL UPDATE imena ovih dropdowna bi morala imati u sebi staru vrijednost polja "predmet" iz tabele
- # ili bi morala dodavati <input type="hidden" /> polja koja bi pamtila stare vrijednosti sto je
- # preglupo i bespotrebno.
- #
- # I onda ga nakritikuj sto nije dodo ID polje. Svaka tabela u bilo cemu ikad mora uvijek imat ID
- # polje! To nalaze dobar dizajn baze.
- $sql_brisi_stari_plan = " DELETE FROM plan_studija ";
- $sql_brisi_stari_plan .= " WHERE studij = ".$studij;
- if(!($query = mysql_query($sql_brisi_stari_plan))){
- debugError('Upit nije uspio: '.(mysql_error()));
- exit;
- }
- $sql_pretraga_id="SELECT * FROM `plan_studija` WHERE `godina_vazenja` = '$akademska_godina' and `studij` = '$studij'";
- $rez=mysql_query($sql_pretraga_id);
- if(!$rez){
- die('Upit za godinu vazenja nije uspio: '.mysql_error());
- }
- // Prodji kroz primljene podatke i vidi sta mozes sa njima
- foreach($get_post_array as $field){
- if($$field && $field != 'semestar' && $field != 'posted'){
- // Inicijalizacija
- $semestar = 0;
- $predmet = 0;
- $obavezan = 1;
- // Iz imena primljene varijable odredi o kom semestru se radi, vrijednost varijable je predmet
- $field_name_data = explode('_', $field);
- if($field_name_data[0] == 'semestar' && ($field_name_data[2] == 'predmet' || $field_name_data[2] == 'izborni')){
- $semestar = $field_name_data[1] + 1;
- $predmet = $$field;
- }else{
- continue;
- }
- // Da li se radi o izbornom predmetu
- if($field_name_data[2] == 'izborni'){
- $obavezan = 0;
- }
- //biranje id od akademske godine za upis u bazu
- $id_akademske_godine="SELECT `id` FROM `akademska_godina` WHERE `id` = '$akademska_godina'";
- $rezultat=mysql_query($id_akademske_godine);
- if(!$rezultat){
- die('Upit za ID nije uspio: '.mysql_error());
- }
- $number = preg_replace("/[^0-9]/", '', $id_akademske_godine);
- // Ubaci red u bazu
- # ovo sam stavio ovdje, treba da obrises stari plan i snimis preko novi
- # to je jedini cist nacin bez ID polja i siguran nacin
- # opet: iskritikuj vedrana za ID polje
- $sql_insert = " INSERT INTO plan_studija (godina_vazenja, studij, semestar, predmet, obavezan) VALUES ";
- $sql_insert .= " ($number, $studij, $semestar, $predmet, $obavezan) ";
- if(!($query = mysql_query($sql_insert))){
- debugError('Upit za ubacivanje u bazu nije uspio: '.(mysql_error()));
- exit;
- }
- # Sav ovaj kod ispod je bespotreban!!!!
- /*
- //Ispitivanje da li ima nesto u bazi
- if(mysql_num_rows($rez) > 0){
- //Ispitivanje postojanja predmeta u bazi
- $vec_uneseni_predmeti = mysql_query("SELECT * FROM `plan_studija` WHERE `godina_vazenja` = '$akademska_godina' and `studij` = '$studij'");
- if(!$vec_uneseni_predmeti){
- die('Upit za ispitivanje postojanja predmeta u bazi nije uspio: '.mysql_error());
- }
- $data_uneseni_predmet=array();
- while($red = mysql_fetch_assoc($vec_uneseni_predmeti)){
- $data_uneseni_predmet[$red['id']] = $red['$naziv'];
- }
- //Update red baze
- $sql_update="UPDATE plan_studija SET predmet='$predmet', obavezan='$obavezan' ";
- if (mysql_query($sql_update))
- {
- if (mysql_affected_rows() > 0 )
- {
- echo "Novost je uspješno uredena.";
- } else {
- echo "Novost nije izmjenjena.";
- }
- } else {
- echo "Nastala je greška pri izmjeni novosti<br>" . mysql_error();
- }
- }else{
- // Ubaci red u bazu
- $sql_insert = " INSERT INTO plan_studija (godina_vazenja, studij, semestar, predmet, obavezan) VALUES ";
- $sql_insert .= " ($number, $studij, $semestar, $predmet, $obavezan) ";
- if(!($query = mysql_query($sql_insert))){
- debugError('Upit za ubacivanje u bazu nije uspio: '.(mysql_error()));
- exit;
- }
- }
- */
- }
- }
- // Citaj iz baze i prikazi
- $data_plan = array();
- $sql_plan = " SELECT studij, semestar, predmet, obavezan FROM `plan_studija` ";
- $sql_plan .= " ORDER BY semestar ASC ";
- if(!($query_plan = mysql_query($sql_plan))){
- debugError('Upit nije uspio: '.(mysql_error()));
- exit;
- }
- if(mysql_num_rows($query_plan) > 0){
- while($row = mysql_fetch_array($query_plan)){
- $tmp_array = array();
- $tmp_array['semestar'] = $data_semestar[($row['semestar']-1)];
- $tmp_array['studij'] = $data_studij[$row['studij']];
- if($row['obavezan']==0){
- $predmeti = mysql_query("SELECT predmet FROM izborni_slot WHERE id='".($row['predmet'])."'");
- $tmp_niz = array();
- while($predmet = mysql_fetch_array($predmeti)){
- $tmp_niz[] = $data_predmet[$predmet['predmet']];
- }
- $tmp_array['predmet'] = implode(" / <br/>", $tmp_niz);
- } else {
- $tmp_array['predmet'] = $data_predmet[$row['predmet']];
- }
- $data_plan[] = $tmp_array;
- }
- }else{
- debugError('Nema podataka o planu studija');
- exit;
- }
- // Prikazi plan studija
- echo listingHtml($data_plan, '80%', 'Plan studija');
- }
- function debugError($msg){
- // Samo poruka greske
- $html = '<html>';
- $html .= '<head>';
- $html .= '</head>';
- $html .= '<body>';
- $html .= '<table align="center" border="0">';
- $html .= '<tr>';
- $html .= '<td>';
- $html .= '<h3>Error: '.$msg.'<h3>';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '</table>';
- $html .= '</body>';
- $html .= '</html>';
- echo $html;
- }
- function listingHtml($data, $table_width, $table_name){
- // Boja u tabelama
- $row_color[0] = "#FFFFF0";
- $row_color[1] = "#F2F8FF";
- $on_mouse_over_color = "#C4FFD7";
- // U ovu varijablu punim html sadrzaj za listanje
- $html = '<html>';
- $html .= '<head>';
- $html .= '</head>';
- $html .= '<body>';
- $html .= '<table align="center" border="1" style="border-style:solid;" width="'.$table_width.'">';
- $html .= '<tr>';
- $html .= '<td style="border:1px solid #ffffff; background:#ffffff; font-weight: bold;">';
- $html .= $table_name;
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '<tr align="center">';
- $html .= '<td>';
- $html .= '<table align="center" border="0" width="100%">';
- // Header-i
- $html .= '<tr align="center">';
- foreach($data as $key => $row){
- foreach($row as $header => $field){
- $html .= '<th align="middle">';
- $html .= $header;
- $html .= "</th>";
- }
- break;
- }
- $html .= '</tr>';
- // Podaci
- $counter = 0;
- foreach($data as $key => $row){
- // Pisi u novi red
- $counter++;
- $html .= '<tr align="center" bgcolor="'.$row_color[$counter%2].'" onMouseOver="bgColor=\''.$on_mouse_over_color.'\'" onMouseOut="bgColor=\''.$row_color[$counter%2].'\'">';
- foreach($row as $header => $field){
- // Prikazi polje u redu
- $html .= '<td align="middle">';
- $html .= $field;
- $html .= "</td>";
- }
- $html .= '</tr>';
- }
- $html .= '</table>';
- $html .= '</td>';
- $html .= '</tr>';
- $html .= '</table>';
- $html .= '</body>';
- $html .= '</html>';
- return $html;
- }
- function getpost_ifset($test_vars){
- if(!is_array($test_vars)){
- $test_vars = array($test_vars);
- }
- foreach($test_vars as $test_var){
- if(isset($_POST[$test_var])){
- global $$test_var;
- $$test_var = addslashes($_POST[$test_var]);
- }else if(isset($_GET[$test_var])){
- global $$test_var;
- $$test_var = addslashes($_GET[$test_var]);
- }else{
- global $$test_var;
- $$test_var = '';
- }
- }
- }
- ?>
Add Comment
Please, Sign In to add comment