You are on page 1of 23

SVEUILITE/UNIVERZITET VITEZ TRAVNIK

FAKULTET POSLOVNE INFORMATIKE


STUDIJ I CIKLUSA; GODINA STUDIJA: I CIKLUS: III GODINA
SMIJER: INFORMACIONE TEHNOLOGIJE

INFORMACIONI SISTEM
EVIDENCIJA PACIJENATA

STUDIJ SLUAJA

Travnik, April 2015. godine


SVEUILITE/UNIVERZITET VITEZTRAVNIK
FAKULTET POSLOVNE INFORMATIKE
STUDIJ I CIKLUSA; GODINA STUDIJA: I CIKLUS: III GODINA
SMIJER: INFORMACIONE TEHNOLOGIJE

INFORMACIONI SISTEM
EVIDENCIJA PACIJENATA

STUDIJ SLUAJA

IZJAVA: Ja, Davor Damjanovi, student Sveuilita/Univerziteta Vitez Travnik,


Indeks broj: 0137-12/DIT odgovorno i uz moralnu i akademsku
odgovornost izjavljujem da sam ovaj rad izradio potpuno samostalno, uz
koritenje citirane literature i pomo profesora, odnosno asistenata.

Potpis studenta:

STUDENT: Davor Damjanovi


PREDMET: Web programiranje i dizajn
PROFESOR: Doc.dr Muharem Kozi
ASISTENT: Nermina Konjali
3
1. UVOD...................................................................................................................2
1.1. PROJEKTNI ZADATAK............................................................................2
1.2. SVRHA I CILJEVI PROJEKTNOG ZADATKA.....................................2
1.3. KORITENE METODE, TEHNOLOGIJE I ALATI...............................3
1.4. STRUKTURA RADA..................................................................................4
2. SPECIFIKACIJA ZAHTJEVA I POTREBA...................................................5
2.1. ZAHTJEVI...................................................................................................5
2.2. ANALIZA I STRUKTURA.........................................................................5
3. NAIN REALIZACIJE IZRADE.....................................................................7
3.1. PROJEKTOVANJE APLIKACIJE............................................................7
3.2. PROJEKTOVANJE BAZE.........................................................................9
3.3. KODIRANJE..............................................................................................12
3.4. INSTALL.PHP............................................................................................18
4. UNAPRJEENJE, TESTIRANJE I ODRAVANJE....................................19
5. ZAKLJUAK......................................................................................................20

1
1. UVOD

1.1. PROJEKTNI ZADATAK

Ovaj rad opisuje projektat izrade web bazirane aplikacije koja e kako je planirano
biti dio informacionog sistema zdravstvene ustanove, pa je radni naziv iste Informacioni
sistem Evidencija pacijenata. Projektni zadatak je dakle izrada same aplikacije koja e
predstavljati interfejs korisnika zdravstvene ustanove preko koga e pristupati sistemu i
vriti rad u istom, ali i interfejs pacijenta koji koristi usluge medicinske ustanove.

Aplikacija je realizovana u lokalu, na radnoj stanici odnosno raunaru. Aplikacija je


po realizaciji u lokalu importovana na stvarni web server i dostupna je preko web
servisa, kao testna verzija na linku http//www.edukativni.info/isep. Istu moete testirati
online, ili je preuzeti zajedno sa bazom i uputstvima sa gornjeg linka, pa je testirati u
lokalu. Fajl koji se preuzme je zakljuani (*.zip), pa je prilikom raspakivanja potrebno
unijeti ifru isep2015.

Svi pratei dokumenti, kao to je install.php file, baza podataka, te uputstva o


instalaciji i korisniko uputstvo mogu se preuzeti u (*.zip) formatu, te se nakon unosa
navedene ifre i raspakivanja mogu pogledati na raunaru, eventualno i instalirati i
testirati. Moete pogledati i online (*.pdf) uputstvo u kome je detaljno objanjen
kompletan koncept prve verzije aplikacije ISEP, preko linka:
http://edukativni.info/isep/Uputstvo_ISEP_v_1.0.pdf.

1.2. SVRHA I CILJEVI PROJEKTNOG ZADATKA

Cilj ovog rada svakako jeste tekstualno opisati projektni zadatak, odnosno detaljno
prikazati proceduru izrade jedne aplikacije kao to je ova. Dakle, itav ovaj projektni
zadatak izradu aplikacije posmatramo kao Studij sluaja, a opis realizacije
prikazaemo u ovom pismenom radu. Iako je aplikacija koja je nastala u ovom
projektnom zadatku u stvari konceptovana kao kolski rad sa realizacijom u svrhu
edukacije, ona predstavlja repliku neke realne situacije izrade aplikacije, izraene u

2
stvarnom poslovnom okruenju i u daljem radu emo je posmatrati kao takvu. Zato
Studij sluaja gledamo kao stvarni projekat, a ovaj pismeni rad kao opis toka i
realizacije projekta.

1.3. KORITENE METODE, TEHNOLOGIJE I ALATI

Odmah, u samom startu bilo je potrebno obaviti neke poetne korake, odabrati
odreene softverske alate i tehnologije koji bi se u ovom sluaju mogli primjeniti,
odnosno koji bi zadovoljili neke osnovne zahtjeve, kao to je recimo povezivanje
aplikacije sa bazom podataka, a koji je u sutini bio neophodan da bi jedna ovakva
aplikacija uopte imala smisla i mogla funkcionisati. Obzirom da je program web
orijentisan, kao najbolje rjeenje nametnuo se PHP programski jezik, a MySQL kao
baza koja je kompatibilna i koja se inae u najveem broju sluajeva i koristi u radu sa
PHP-om.

Naravno PHP i MySQL nije dovoljan za rad aplikacije, pa je tako za prikaz stranica
koriten - HTML, onda za ureivanje izgleda stranica CSS. Za neke detalje koje se
tiu prikaza dinamikog sadraja, odnosno zbog potrebe izvravanja odreenih procesa
direktno u browser-u koriten je JS.

Zbog preglednosti i lakeg pisanja koda bilo je potrebno izabrati i jedan od programa sa
kojim bi mogli raditi u svim pobrojanim programskim jezicima, a kao najbolje rjeenje
za ovu svrhu izabran je Dreamweaver. Koriten je Adobe Dreamweaver CC, trenutno
zadnja verzija popularnog softvera. Za izradu nekih grafikih elemenata kao to je logo
koriten je Adobe Photoshop CC.

Aplikacija Evidencija pacijenata pisana je PHP programskim jezikom, a da bi se


mogla izvravati i istoj pristupati radi povremenog testiranja potreban joj je web server.
U tu svrhu smo koristili program Xampp koga je bilo potrebno instalirati na radnu
stanicu. Na taj nain je olakan rad na aplikaciji jer se aplikacija izvrava u lokalu,
direktno na radnoj stanici.

Aplikacija je na kraju publikovana javno na webu, jer je ista podignuta na zakupljeni


hosting dostupna na web lokaciji koju smo naveli.

3
1.4. STRUKTURA RADA

Struktura rada je usklaena sa Uputstvom za pisanje radova na prvom ciklusu


studija kao i temi samog rada. On sadri est poglavlja.
Prvo poglavlje Uvod, sadri etiri podpoglavlja, koje smo u tekstu iznad ve obradili:
- Projektni zadatak,
- Svrha i ciljevi projektnog zadatka,
- Koritene metode, tehnologije i alati,
- Struktura rada.

Drugo poglavlje g o v o r i o Specifikaciji zahtjeva i potreba, o onome to se stavlja


pred nas kao zadatak i o tome ta je potrebno poduzeti da se ispuni taj zadatak.

Tree poglavlje g o v o r i d e t a l j n o o nainu realizacije izrade aplikacije.

etvrto poglavlje je dio koji se definie kao opis testiranja i odravanja. U ovom dijelu
su opisani naini testiranja ispravnosti unesenog sadraja u bazu, te testiranje rada same
aplikacije i otklanjanje eventualnih nedostataka.

Peto poglavlje Zakljuak, daje generalnu ocjenu o radu, o tome da li je Studij sluaja
uspjeno realizovan.

2. SPECIFIKACIJA ZAHTJEVA I POTREBA

4
2.1. ZAHTJEVI

Ukoliko bi zamislili stvarnu situaciju poslovnog okruenja u kom projektni tim radi
na kreiranju jedne ovakve aplikacije, zahtjevi prema projektnom timu bi obino bili
usmjereni od klijenata sa kojima se sarauje u proceduri izrade baze podataka, dok bi u
sluaju ovog rada zahtjevi dolazili od predmetnog profesora, odnosno Univerziteta.
Osnovni zahtjev koji se postavlja pred nas bi bio kreirati web baziranu aplikaciju.

Potrebno je uraditi aplikaciju koja je povezana sa bazom podataka, kreirati bazu


podataka, uraditi uputstvo o nainu rada aplikacije, te pismenim radom, to jeste u ovom
Studiju sluaja opisati detaljnu specifikaciju koritenih klasa i objekata. Kao Studij
sluaja alje se kompletan Project solution (folder sa svim fajlovima koji su se kreirali i
koristili u projektu), odnosno isti je mogue preuzeti sa linka koji je naveden na
poetku.

2.2. ANALIZA I STRUKTURA

Odabrana je tema Evidencija pacijenata. U prvoj fazi je bilo potrebno osmisliti


koncept i stvoriti strukturu. Prije svega bilo je potrebno prikupiti to vie informacija o
nainu procedure evidentiranja pacijenata, koju u stvarnom ivotu prolazi jedan pacijent
u nekoj zdravstvenoj ustanovi. Naravno, svako od nas je bio u nekoj zdravstvenoj
ustanovi u ulozi pacijenta pa i poznaje donekle tu proceduru. Ali da bi projekat bio to
bolje organizovan ovaj dio prikupljanja informacija i graenje strukturne slike budue
baze je veoma bitan, pa je stoga bilo potrebno nadograditi postojee znanje o gradivu
koje se obrauje.

Dakle, radimo analizu budueg projekta. To je dio u kome se projektant upoznaje sa


projektnim zadatkom, koji je jedan od najvanijih koraka jer se propusti u ovom dijelu
ire kroz sve ostale faze. Moda je najbolja komparacija sa ovim korakom izgradnja
temelja kod projekta izgradnje kue. Dakle ukoliko u tom projektu loe izvedemo
temelje, u nekim narednim fazama nastae nepopravljive tete, pa e tako i sav ostali
trud biti uzaludan, u krajnjem sluaju i neostvariv, a sve zbog toga to u poetnom
koraku nismo uradili ono to smo trebali. Da se radi o stvarnom projektu, u ovoj fazi u

5
projektnom timu bi bilo dobro imati nekoga ko aktivno radi u zdravsvenoj ustanovi da
nas upuuje u strukturu.

U ovom koraku bi trebali odmah prepoznati entitete, odnosno objekte, te njihove


osobine, te zabiljeiti koje su im zajednike osobine. Potrebno je razmisliti koje radnje
bi ti objekti mogli izvoditi, u kakvom meusobnom kontaktu bi trebali biti. Na osnovu
zajednikih osobina i radnji pokuavamo ih smjestiti u klase. Posmatramo i upoznajemo
realni sistem koji trebamo opisati i prikazati jednom aplikacijom. U tom prvom
razmiljanju postavljeni su neki osnovni entiteti, nabrojani taksativno:
- Pacijenti

- Osoblje bolnice

- Pregledi

- Dijagnoze

- Terapije

Ovi poetni entiteti predstavljaju taj temelj na kome e se dalje graditi sistem.
Pacijenti su ti kojima bi ovaj informacioni sistem olakao pristup uslugama medicinske
ustanove. Osoblje bolnice smo podijelili na tri nivoa: doktor, sestra i administrator.
Svaki od ovih nivoa predstavlja radnika medicinske ustanove koji e u svom
svakodnevnom radu koristiti ovaj informacioni sistem. Obzirom da je ovo gruba i
prilino primitivna podjela na tri osnovna nivoa, bilo je potrebno osmisliti koncept
sistema, koji e u daljem svom razvijanju lako omoguiti podjelu na jo dodatnih nivoa
i podnivoa.

Bilo je potrebno kvalitetno preslikati realni sistem u aplikaciju, pratei sa jedne strane
razvoj same aplikacije kroz PHP i to kao objektno orijentisani koncept, te kvalitetno
osmisliti MySql bazu podataka kao relacioni koncept.

3. NAIN REALIZACIJE IZRADE

6
3.1. PROJEKTOVANJE APLIKACIJE

U ovom poglavlju projektovanje kao proces e biti prikazano i grafiki, odnosno


kroz dijagrame izraene u UML programu Visual Paradigm. Obzirom da je tema
opirna i zahtjeva vie prostora nego to to moe dozvoliti obim ovog rada, grafiki opis
e prikazati samo osnovni koncept.
Slika 1 Prvi USE CASE dijagram prikaza sistema

Izvor Vlastiti izvor

Na dalje je prikazana tabela sa detaljnom specifikacijom jednog USE CASE-a, koji je


ujedno i prvo-kreirani, a ima ulogu iniciranja Zahtjeva za pregled od strane Pacijenta
kao glavnog aktora u sistemu.

Tabela 2 Detaljna specifikacija USE CASE-a ZahtjevZakaziPregled


USE CASE:

7
ZahtjevZakaziPregled
ID:
UC01
BRIEF DESCRIPTION:
Slui iniciranju novih zahtjeva za pregled od strane Pacijenta kao aktora..
PRIMARY ACTORS:
Pacijent
SECONDARY ACTORS:
Doktor
PRECONDITIONS:
Pacijent izvrava autorizaciju i autentifikaciju za pristup sistemu putem interneta, na
nain da unosi svoje kredencijale za pristup ISEP-u
MAIN FLOW:
1. Klikom na gumb Zakai pregled pacijent pokree formu za slanje zahtjeva
za pregled,
2. Popunjava sva potrebna polja na formi, meu kojima je i eljeno vrijeme
pregleda, te alje zahtjev.
3. Sistem unosi podatke o zahtjevu u bazu, a podatak biva proslijeen kao
Zadatak Doktoru koji treba da postupi po njemu.
POSTCONDITIONS:
Pacijent klikom na gumb Moji pregledi provjerava status poslatog zahtjeva,
odnosno da li je odobren i u kom terminu je zakazan pregled.
ALTERNATIVE FLOWS:
Ukoliko je pogrijeio prilikom postupka iniciranja zahtjeva pacijent moe ponititi
zahtjev to e inicirati Zadatak za invalidaciju greke koju sistem proslijedi
Administratoru.
Izvor: Vlastiti izvor - program Visual Paradigm

Ovo je detaljna specifikacija jednog use case-a koja prikazuje jedan segment rada
aplikacije.

Slika 3 CLASS/OBJECT dijagram ISEP

8
Izvor: Vlastiti izvor - program Visual Paradigm
Class diagram predstavlja okosnicu objektno-orjentisanog modelovanja. Koristi se kako
za uopteno konceptualno modelovanje sistematike aplikacija, tako i za detaljno
prevoenje modela u programski kod. Klase u klasnom dijagamu predstavljaju glavne
objekte, veze u aplikaciji, te klase koje se trebaju programirati.

Ovdje je prikazan CLASS dijagram ISEP-a, u kome vidimo klasu Sajt koja je osnovna
klasa sa kojom su generalizacijom povezani objekti, instance klase:
- objIndex
- objPacijent
- objDoktor
- objSestra
- objAdministrator

3.2. PROJEKTOVANJE BAZE

Obzirom da smo kroz pismeni rad iz predmeta Baze podataka ve osmislili koncept
baze koja je i realizovana u MS Sql okruenju, to je uveliko pomoglo da se stvori
poetna slika izgleda informacionog sistema i aplikacije koja prati taj sistem. Ipak baza
nije mogla ostati takva kakva jeste nego se prilagoavala i mijenjala u skladu sa

9
izradom aplikacije.

Slika 4 Referentni model baze Evidencija pacijenata izraen za potrebe rada iz predmeta Baze
podataka

Izvor Vlastiti izvor

Slika 5 ER model Evidencija pacijenata izraen za potrebe rada iz predmeta Baze podataka

Izvor: Vlastiti izvor


Slika 3 Izgled sadanje MySql baze podataka

10
Izvor: Vlastiti izvor

3.3. KODIRANJE
Prvi osnovni index.php fajl nema puno linija koda.

11
CODE index.php:
<?php
//Ukljuujemo fajlove koje koristimo
include ('meni.php');
include ('tekst.php');
include ('prijava_forma.php');

/*Deklariemo varijablu "$t" kojoj dodjeljujemo vrijednst metode GET


"strana"*/
$t=$_GET['strana'];

/*Ako varijabla $t nema vrijednost ispisuje se Dobro doli u


aplikaciju ISEP... Inae $tekst dobija vrijednost vrijednosti $
$t..*/
if (!$t) {
$t='POETNA | ISEP';
$tekst='<div id="sadrzaj"><font color="green">Dobro doli u
aplikaciju <b>ISEP v1.0! </b></font><br /><font color="green">Da
nastavite sa radom u aplikaciji potrebno je da se
prijavite.</font></div>';
}
else{
$tekst=$$t;
}

/*Poziv klase sajt koja je deklarisana u fajlu class.sajt.php


i instanciranje objekta objIndex
tipa klase sajt*/
require_once 'class.sajt.php';
$objIndex = new sajt();
$objIndex -> sadrzaj($dugmici, $tekst, $t, $html_prijava);
?>

Inae sav kod koji je upisan je obraen komentarima radi preglednosti, tako da nam je
lako predstaviti situaciju i rei da je bilo potrebno izraditi tri fajla (meni.php, tekst.php,
prijava_forma.php) koji su ukljueni (eng. include) u index.php fajl.

CODE class.sajt.php:
<?php
class sajt {
function sadrzaj ($meni, $tekst, $naslov, $prijava_forma){
include ('index_html.php');
echo $strana;
}
}
?>

Dakle, u fajlu class.sajt.php pa klasi sajt, unutar tijela njene funkcije sadrzaj vidimo
istoimene varijable sa pobrojanim imenima fajlova, te vidimo da postoji i varijabla
$naslov koja ne postoji kao fajl, a razlog za to shvatiemo na kraju objanjenja. Prvo

12
treba rei da su unutar fajlova (meni.php, tekst.php, prijava_forma.php) deklarisane
varijable kojima je kao vrijednost dodjeljen HTML kod. Pa su izmeu ostalog
deklarisane i varijable ($dugmici i $html_prijava), koje vidimo u fajlu index.php, u
instanciranom objektu objIndex, u tijelu njegove funkcije sadrzaj. Ovdje vidimo i jo
dvije varijable, $tekst varijabla koja je istoimena varijabili iz klase sajt i $t varijabla. Sa
ove dvije varijable radimo u kodu u fajlu index.php. Varijabla $t odmah pri deklaraciji
uz pomo $_GET ugraene funkcije prima vrijednost iza string strana iz URL-a.

Ako u URL-u ne postoji vrijednost iza stringa strana, (npr. index.php?strana=)


izvrava se kod u tijelu IF petlje, a ukoliko postoji vrijednost (npr. index.php?
strana=oaplikaciji), izvrava se samo kod iza ELSE ($tekst=$$t;). To znai da e u
ovom sluaju varijabla $tekst primiti vrijednost $oaplikaciji. Poto u fajlu tekst.php
postoji istoimena varijabla koja kao vrijednost ima HTML kod na stranici gdje je
postavljen $tekst e se ispisati taj sadraj.

CODE index_html.php:
<?php
$strana='
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-
8" />
<title>'.$naslov.'</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body class="isep">
<div id="container">
<div id="header">
<center><img src="slike/logo.png" alt="Logo - Informacioni Sistem
Evidencija Pacijenata - ISEP" width="547" height="91"
align="absmiddle" /></center>
</div>
<div id="meni">'.$meni.'</div>
<div id="prijava">'.$prijava_forma.'</div>
<div id="sadrzaj">'.$tekst.'</div>
<br class="clearfloat" />
<div id="footer">
<p>Projekat "Informacioni servis evidencije pacijenata" u
testnoj fazi.</p>
</div>
</div>
';
?>

To, gdje se pojavljuje sadraj odredili smo u fajlu index_html.php, koga smo ukljuili u

13
tijelu klase sajt. Sada vidimo sve varijable u HTML-u, izmeu ostalog i varijablu
$naslov.

Sve ovo na prvo itanje izgleda konfuzno i teko razumljivo. Ipak smo kao krajnji
rezultat dobili jednostavniji dalji rad. Dobili smo jedinstveni ablon web stranice koga
smo definisali klasom koga sada uz par linija koda instancranjem objekata moemo
koristiti bezbroj puta.
U sklopu programa XAMPP nalazi se PhpMyAdmin preko kog smo kreirali MySQL
bazu.
Slika 4 Radno okruenje phpMyAdmin

Izvor: Vlastiti izvor

Zbog toga to smo aplikaciju pisali u objektno orijentisanom konceptu, koristili smo
API-e od MySQLi koncepta, kao novog naina i nove sintakse pisanja MySql-a.

Tako da recimo kod za pristup bazi podataka MySQLi izgleda ovako:

14
CODE MySQLi:
<?php
//Ukljuujemo informacije o bazi podataka
include ('configuration.php');
// Kreiranje konekcije sa bazom
$con = new mysqli($hostname, $db_username, $db_password, $db_name);
// Provjera konekcije sa bazom
if ($con->connect_error) {
die("GREKA prilikom konekcije sa bazom: " . $con->connect_error
. " </br> Pokuajte ponovo. </br>Ukoliko se problem ponavlja
kontaktirajte administratora.");
?>

Dalje moemo pogledati kako je rijeen nain prijave korisnika. Mehanizam za prijavu
korisnika na ISEP rijeen je kroz tri fajla, prijava_forma.php i prijava.php, kao i fajl
odjava.php. U fajlu prijava_forma.php se nalaze varijable koje kao vrijednosti imaju
HTML sadraj forme za prijavu, kao i izgled formi za prijavu nakon prijave korisnika.
Pa tako varijabla html_prijava koju smo odredili da nam bude izgled forme za prijavu
izgleda ovako:

CODE prijava_forma.php:
<?php
$html_prijava='<form method="post" action="prijava.php" >
<h3>Nalog </h3>
<table width="100%" border="0">
<tr>
<td>Korisniko ime</td>
</tr>
<tr>
<td><input type="text" name="userid"></td>
</tr>
<tr>
<td>ifra</td>
</tr>
<tr>
<td><input name="password" type="password"></input></td>
</tr>
</table>
<table width="100%" border="0">
<tr>
<td><input type="submit" value="Potvrdi"/></td>
<td><input type="reset" value="Obrii"/></td>
</tr>
</table>
</form>';?>

15
CODE prijava.php:
<?php//Ukljuujemo informacije o bazi podataka
include ('configuration.php');
//KONEKCIJA SA BAZOM
$con = mysql_connect($hostname,$db_username,$db_password);
if (!$con)
{
die("GREKA prilikom konekcije sa bazom: " . $con-
>connect_error . " </br> Pokuajte ponovo. </br>Ukoliko se problem
ponavlja kontaktirajte administratora.");
}
mysql_select_db($db_name, $con);

//Deklarisane varijable "$username" i "$password"


//preuzimaju vrijednosti unesene kroz formu
//u fajlu "prijava_forma.php"
$username= $_POST["userid"];
$password= $_POST["password"];
//Ukoliko su prazni unosi prije nego
//se konektuje na bazu ispii greku
if (empty($username) || empty($password)){
die(header("location: index.php?strana=greska"));
}
//Uzimamo password, korisniko ime i rolu iz baze za uneseno
username i smjetamo ih u varijable
$sql_korisnici = mysql_query("select * from korisnici where
username ='".$username."'");
$result_korisnici = mysql_fetch_array($sql_korisnici);
$dbpassword=$result_korisnici['password'];
$dbusername=$result_korisnici['username'];
$dbrola=$result_korisnici['rola'];
//Radimo poreenja unesenih podataka
//sa podacima iz baze i ovisno o rezultatu
//izvravamo program
//Ako u bazi ne postoji ifra i/ili korisniko ime ispisuje se
greka
//Pokrenuta sesija
session_start();
$_SESSION[$dbrola] = $dbusername;
if(!$dbpassword || !$dbusername)
die(header("location: index.php?strana=greska"));
//Ako je unesena ifra razliita od ifre u bazi
//i ili korisniko ime razliito
if (($password != $dbpassword)||($username != $dbusername))
die(header("location: index.php?strana=greska"));
if(!$dbrola){
die(header("location: index.php?strana=greska"));}
if($dbrola != 'admin'){
die(header("location: $dbrola.php?strana"));}
else die(header("location: administrator/$dbrola.php?
strana"));
mysql_close($con);
?>

16
Kod je prilino dobro prokomentarisan pa se dobro vidi o emu se radi. Ono to bi
mogli naglastiti u ovom dijelu je nain na koji je realizovan zadravanje ulogovanog
korisnika. To je rijeeno sesijom, ali u ovom poetnom fajlu za prijavu smo stavili da
sesija nosi naziv po ulozi korisnika (eng. rola) za varijablu $dbrola, a da se vee za
varijablu $username to je u stvari korisniko ime ulogovanog korisnika. Na ovaj nain
sesija se automatski imenuje prema ulogovanom korisniku, te u skladu sa dozvoljenim
pristupom na drugim stranicama korisnik moe neometano da radi.

Pored PHP-a, u nekim dijelovima aplikacije neophodno je bilo koristiti Java Script, jer
PHP nema mogunost direktnog izvravanja u klijentskom softveru, odnosno browser-
u. Primjer gdje smo morali koristiti JS je dio aplikacije koji treba korisniku prikazati
dananji datum kao podrazumjevani u okviru forme za unos datuma u bazu.

CODE Java Script:


<script>
var date = new Date();

var day = date.getDate();


var month = date.getMonth() + 1;
var year = date.getFullYear();

if (month < 10) month = "0" + month;


if (day < 10) day = "0" + day;

var today = year + "-" + month + "-" + day;


document.getElementById("odDatuma").value = today;
</script>
do <br>
<input name="doDatuma" type="date" id="doDatuma"><br><br>
<script>
var date = new Date();

var day = date.getDate();


var month = date.getMonth() + 2;
var year = date.getFullYear();

if (month < 10) month = "0" + month;


if (day < 10) day = "0" + day;

var today = year + "-" + month + "-" + day;


document.getElementById("doDatuma").value = today;
</script>

17
CODE style.css:
@charset "utf-8";
/* CSS Document */
body {
font: 100% Verdana, Arial, Helvetica, sans-serif;
background: #000088;
margin: 0; /* it's good practice to zero the margin and
padding of the body element to account for differing browser
defaults */
padding: 0;
text-align: center; /* this centers the container in IE 5*
browsers. The text is then set to the left aligned default in the
#container selector */
color: #000000;
}

.isep #container {
width: 90%; /* this will create a container 80% of the
browser width */
background: #FFFFFF;
margin: 0 auto; /* the auto margins (in conjunction with a
width) center the page */
border: 3px solid #ffffff;
text-align: left; /* this overrides the text-align: center on
the body element. */
}

Za opis stranica koten je CSS i to kao posebna tri fajla style.css, form.css i
style_centralni.css.
Ostatak koda nje mogao obimom stati u ovaj pismeni rad, ali prilikom itanja uputstva o
koritenju aplikacije i itanju dobro postavljenih komentara iz samog koda moe se
razumjeti i funkcionalnost.

3.4. INSTALL.PHP

U ovom dijelu rada bi trebali opisati unos sadraja u bazu, onih podataka koji su
potrebni za poetni rad sistema, a radi se o optim podacima iz ivota koji se ne
mijenjaju nikad, ili ne toliko esto da bi trebala postojati mogunost njihove izmjene ili
brisanja kroz aplikaciju. To su na primjer imena mjeseci, gradova, drava i sl.

Da bi olakali rad buduem korisniku nae aplikacije unos sadraja je osmiljen na


najjednostavniji nain. Dovoljno je pokrenuti INSTALL.php fajl i saekati da sistem
kreira bazu podataka, tabele sa relacijama i unese sve potrebne podatke.

18
4. UNAPRJEENJE, TESTIRANJE I ODRAVANJE

Cilj dosadanjeg rada na ovom projektu jeste bio da se postave neki osnovni temelji
u izradi aplikacije, da bi se ista mogla realizovati i u narednom periodu predstaviti kao
Diplomski rad. U sklopu tih aktivnosti spada realizacija izrade aplikacije, njena
realizacija do aplikacije koja e postati iskoristiva i primjenjiva u stvarnom okruenju.
Dakle, aplikacija je trenutno u fazi izrade, kao i stalnog testiranja uraenog.

Ukoliko se uoe neispravnosti u radu, izoluju se dijelovi koda koji se parcijalno ispituju
dok se ne lokalizuje neispravni dio koda i na kraju otkloni problem.

Dalji koncept bie usmjeren prema modelovanju, odnosno posmatranju projekta sistema
kroz module. Moduli e se razvijati odvojeno, kao zasebne cjeline koje e moi koristiti
korisnici sistema, onoliko koliko budu imali dozvola za iste.

19
5. ZAKLJUAK

Na kraju rada potrebno je donijeti zakljuak u kome e se rei da li smo upsjeno


realizovali projekat.

Kako je naglaeno odmah u poetku ovaj pismeni rad je prikaz realizacije projekta
izrade jedne aplikacije koja ima radni naziv Informacioni sistem
Evidencija_pacijenata.

U radu su postavljeni zahtjevi koje je bilo potrebno ispuniti. Dakle, sadraj i zahtjevi
nam diktiraju odabir naina izrade i primjenjive tehnologije te tok samog pismenog
rada.

Ukoliko uzmemo u obzir sve reeno ovim radom, te aplikaciju koja je kreirana moemo
zakljuiti da je rad realizovan uspjeno i da smo ispunili pred nas postavljene zahtjeve i
oekivanja.

20

You might also like