Електронски училишен дневник ( School Diary )

16
" ИНТЕРНЕТ УЧИЛИШЕН ДНЕВНИК " ОБЛАСТ: ИНФОРМАТИКА - КОМПЈУТЕРСКО ПРОГРАМИРАЊЕ МЕНТОР: ИЗРАБОТИЛ:

description

Електронски училишен дневник - тема за на натпревар по информатика ( програмирање ) - Народна Техника

Transcript of Електронски училишен дневник ( School Diary )

Page 1: Електронски училишен дневник ( School Diary )

" ИНТЕРНЕТ УЧИЛИШЕН ДНЕВНИК "

ОБЛАСТ: ИНФОРМАТИКА - КОМПЈУТЕРСКО ПРОГРАМИРАЊЕ

МЕНТОР: ИЗРАБОТИЛ:

Page 2: Електронски училишен дневник ( School Diary )

Јани Сервини Петар Папалевски II-5Битола 2010 год.

2

Page 3: Електронски училишен дневник ( School Diary )

Натпреварувачка подобаст: Компјутерско програмирањеАпстракт

Интернет училишен дневникПетар Папалевски

СОТУ „Ѓорѓи Наумов“ - Битола Клучни зборови: училишен дневник, php, mysql, javascript, администрација, евиденција

Програмата е изработена со HTML+PHP+JavaScript со MYSQL дата база. Програмата е за водење на евиденција во едно средно училиште. Се состои од три дела, т.е. административни панели и тоа:

административен панел на програмата, административен панел на професори и административен панел на родители.Предноста на оваа програма од останатите е тоа што таа е достапна од кој

било компјутер кој е поврзан на интернет преку веб прелистувач. Најпрво кога ќе се отвори почетната страница се појавуваат формите за

најавување на корисниците. Корисниците се најавуваат на системот со своите ЕМБ и лозинка.

Во административниот панел администраторот може да внесува нови администратори, предмети кои се изучуваат во училиштето, смерови, нови професори, паралелки, да го нагодува распоредот на звонење на часовите и сл.

Во административниот панел на професорите може да се внесуваат сите податоци кои постојат во еден обичен училишен дневник почнувајќи од наставни планови, отцени, распоред на часови, пресметување на успех на класот, запишување на одржаните часови и сл.

Во административниот панел на родителите може да се виде редовноста на ученикот, неговите отцени, просек и сл.

AbstractInternet School Diary

Petar PapalevskiSOTU "Gorgi Naumov" - Bitola

Keywords: School marks, php, mysql, javascript, administration, recordThe program is designed with HTML + PHP + JavaScript with MYSQL Database. The program is keeping records in a secondary school. It consists of three parts, i.e administrative panels as follows:

administrative panel of the program, administrative panel of professors and administrative panel of parentsThe advantage of this program from others is that it is accessible from any

computer that is connected to the Internet via web browser.Firstly when you open the homepage appear forms for logging in users. Users

log on with your system unique identification number and password.The administrative panel administrator can brings new administrators, which

subjects are taught in school, Departments, new teachers, classes, to set the schedule of classes bells, etc. The administrative panel of professors can import all data that exist in a typical school diary from the curriculum, Rate, schedule of classes, calculating the success of the class, enrollment of classes held, etc.

The administrative panel of parents can be seen attendance of the student, his Rate, average, etc.

3

Page 4: Електронски училишен дневник ( School Diary )

ВОВЕД И ТЕОРЕТСКИ ОСНОВИ

PHP претставува рефлективен програмски јазик со отворен изворен код. Првобитно бил замислен како алатка за креирање динамички веб апликации кои се извршуваат на серверската страна. Кратенката означува Personal Home Page или PHP: Hypertext Preprocessor, (обично се изговара како пе-ха-пе, додека пак, на англиски се изговата пи-ејч-пи).PHP е едноставен за користење и е сличен на C и Perl (од верзија 5+ сличен и на Јава). Еден од интересните делови на кодот на PHP е што не е само скрипт јазик. PHP може да се користи и за GUI апликации (со помош на PHP-GTK) и може да се користи од командна линија како и Perl или Python.PHP дозволува интеракција со многу познати бази на податоци, како MySQL, Oracle, IBM DB2, Microsoft SQL Server, PostgreSQL и SQLite. PHP работи на многу оперативни системи, како Јуникс, Линукс, Мајкрософт Виндоус и Мек ОС.

PHP е алтернатива на комерцијални програми како Мајкрософт-овите ASP/VBScript/JScript, Макромедија ColdFusion, Sun Microsystems JSP/Java и некомерцијалните CGI/PERL. Неколку познати проекти напишани во PHP се phpBB, Википедија и др.

MySQL е помошен софтвер за пристап до база со податоци преку интернет. Исто така MySQL има голема предност поради тоа што постојат верзии за сите оперативни системи и поради тоа што се издава под GPL лиценца, што значи е бесплатен за домашно користење.

JavaScript е производ на Netscape, и претставува скриптен јазик кој е објектно ориентиран, со можност да се извршува на повеќе хардверски и софтверски платформи. JavaScript е мал и едноставен јазик, кој се користи во комбинација со други продукти и апликации, како на пример веб прелистувач (анг. web browser). Вгнезден во соодветен продукт, JavaScript може да се поврзе со објектите во неговата околина и да овозможи програмска контрола над нив. Основата на JavaScript јазикот се состои од основно множество на објекти, како што се Array, Data и Math, основно множество на елементи на јазикот како што се операторите, контролните структури и искази. Основата на JavaScript може да се проширува во зависност од потребите со додавање на дополнителни објекти; пример:

• Client-side JavaScript врши проширување на основата на јазикот со додавање на објекти за контрола на веб прелистувачот (Navigator, MS Internet Explorer или некој друг веб прелистувач) и Document Object Model објектот. На пример овие објекти овозможуваат да се додаваат и контролираат елементите од HTML формата или да се одговори соодветно на акциите на корисникот (клик на глушец, пишување во поле, или пак навигација низ страната).

• Server-side JavaScript врши проширување на основата на јазикот со додавање на објекти одговорни за извршување на JavaScript на серверска страна. На пример: овие објекти овозможуваат комуникација со релациона база на податоци, обезбедуваат континуитет помеѓу две сесии или пак разменуваат податоци помеѓу две или повеќе различни апликации, или вршат некаква манипулација на податотeки сместени на серверот.

4

Page 5: Електронски училишен дневник ( School Diary )

JavaScript во комбинација со некои други технологии успешно се користи за изработка на AJAX апликации.

Adobe Dreamweaver е најкористена апликација за креирање и развој на веб сајтови. Таа првично е создадена од Macromedia (фирма која од 2005 е во сопственост на Adobе). Dreamweaver е поддржан и на Windows и на MAC OS. Поновите верзии на Dreamweaver поддржуваат и веб апликации како: CSS, JavaScript, ASP, PHP и слично. Кај Dreamweaver е добро тоа што е WYSIWYG (What You See Is What You Get) едитор. Тоа значи дека не мора да се знаат описни и програмски јазици за кодирање на сајт. Со мала обука како функционира апликацијата, и обични почетници можат да направат сопствен сајт, а притоа да немаат ниту елементарни познавања на HTML (Hyper Text Mark-Up Language). Но, добро е и тоа што има опција да се прикаже кодот за време на изработката на сајтот па со тоа сите што имаат познавање од HTML можат да изработат перфектен сајт. Друга предност е тоа што кодовите во Dreamweaver се компитабилни со W3C стандардите.

Dreamweaver ги има сите основни, но и понапредни опции за еден сајт да биде перфектен. Има опции за: Вметнување на флеш, вметнување на слики, креирање табели, уредување на текстот, линкување на слика, креирање на обични и паѓачки мениа, интересни ефекти и уште стотина корисни опции.

ИНСТАЛИРАЊЕ НА ЕЛЕКТРОНСКИОТ ДНЕВНИК

За инсталација на електронскиот дневник потребно е соодветен веб сервер. Скриптата може да се снима на некој од серверите како на пример: LAMP, XAMPP, WAMP, UniServer и други кој на серверот имаат PHP верзија 5.2.10 или некоја постара верзија. За инсталација исто така потребно е веб серверот да подржува MySql бази. Инсталацијата е едноставна како и другите CMS скрипти во неколку чекори со внесување на основните податоци за хостот и креирање на еден администратор.

5

Page 6: Електронски училишен дневник ( School Diary )

ЕКСПЕРИМЕНТАЛЕН ДЕЛ

ПОЧЕТНА СТРАНИЦА

На почетната страница се појавува прозорец како на сликата. Има 3 линкови и тоа:

• За влез на родителите во системот• За влез на професори во системот• За влез на администратори во системот

ЛОГИРАЊЕ ВО СИСТЕМОТ ЗА АДМИНИСТРАТОРИ

Кога ќе ја отвориме која било страница за логирање во системот се појавува форма која е речиси иста за сите административни панели со мали исклучоци слична како на сликата. Корисникот на системот се најавува со својот ЕМБГ и лозинка која ја има добиено на својот емаил при регистрирање.Доколку корисникот не ги внесе точно своите кориснички податоци ќе биде пренасочен на истата страница. Ако корисникот се логира правилно тогаш се појавува административниот панел. Доколку корисникот ја има заборавено својата лозинка најдолу има линк "Ја заборавив лозинката" и со внесување

на емаил адресата на емаилот на корисникот пристигнува писмо, и во зависност од тоа дали корисникот ке го потврди менувањето на лозинката на емаилот пристигнува рандом лозинка од самиот систем во кој корисникот подоцна може да ја промени.

6

Page 7: Електронски училишен дневник ( School Diary )

АДМИНИСТРАТИВЕН ПАНЕЛ ЗА АДМИНИСТРАТОРИ

На почетната страница во системот за администратори од десно се појавуваат личните податоците за администраторот кој е најавен, а под личните податоци се покажува една мала статистика за колку корисници се моментално активни на системот. Во средината на страница имаме листа со новите соопштенија кои се испратени. Подолу имаме една листа со најнови пораки кои администраторот ги има примено од другите корисници. Најгоре десно се прикажува слика од корисникот кој е најавен.

МЕНИ "АДМИНИСТРАЦИЈА"

Во менито "Администрација" ги имаме следниве подмениа:

• "Податоци за училиштето" - Менување на податоци за училиштето Во оваа страница се менуваат податоците на училиштето кои се внесени при инсталација на самиот електронски систем.

• "Внес на администратори" - Внесување на нови администратори во системот

• "Внес на нови професори" - Внесување на нови професори во системот

• "Внес на нови паралелки" - Додавање на нови паралелкиПреку оваа страница се внесуваат нови паралелки во училиштето. При внесување на паралелката се бира која година, кој клас, учебна година и слично. За секоја паралелка се креира посебни табели:пр. (ucenici_2GodKlas3Ucebna2009i2010, otceni_2GodKlas3Ucebna2009i2010)...

• "Внес на предмети" - Додавање на нови предмети кои се изучуваат во училиштетe

• "Внес на смерови" - Додавање на нови смерови кои се изучуваат во училиштето

7

Page 8: Електронски училишен дневник ( School Diary )

• "Листа на нови ученици " - Листа на нови ученици кои се имаат запишано во учлиштето

Во оваа страница се појавува листа на нови ученици кои се запишале во училиштето со пополнување на електронска пријава за упис во средно образование и чекаат дали се примени во училиштето или не. Од тука со кликање на линкот "прегледај" се гледа целата пријава на кандидатот и од кога ке се проверат податоците дали се точни соодветно се притиска копчето "примен" или "одбиен". И во двата случаи на ученикот му пристигнува емаил со соодветна порака и тоа дали е примен или не и ако е примен во која паралелка е, класен раководител и слично.

• "Лични податоци" - Промена на лични податоци на администраторотОваа страница е за промена на личните податоци на корисникот кој е логиран. Од кога ке ги промени своите лични податоци на својот емаил му стигнува емаил порака со променетите податоци.

Во сите страници во кои се внесуваат податоци доколку заборавиме некој податок да го внесиме самата програма ни појавува едно мало прозорче со соодветна порака во зависност од променливата која ја немаме пополнето или неправилно ја имаме пополнето и ни укажува каде е направена грешка пред податоците да се снимаат во базата.

МЕНИ "ЛИСТА НА"

Во сите мениа од главното мени "Листа на" можеме да ја избериме соодветната листа. Во секоја страница се прикажани соодветно податоците кои се успешно внесени преку менито "Администрација". Во сите страници имаме можност да пребаруваме податоци по Име и Презиме на администратор или родител и слично. Исто така има можност за промена на некој податок или бришење. При промена или бришење на некој податок од базата системот не прашува дали сме сигурни. Во менито "Паралелки" има можност за преминување на паралелката во следна година. Сита податоци од минатата година се чуваат во посебна БЕКАП база во системот. При премин на паралелката од една во друга година сите лични податоци на паралелката се префрлаат во нова база која е за новата учебна година.Кога паралелката ке го заврши школувањето сите табели се бриши од базата и во базата само останувааат БЕКАП табелите. Во менито "Активни Администратори" се прикажува листа на администраторите кои се моментално приклучени на системот и соодветно може тие да се одлогираат да му се забрани влез во системот и слично. Во поледното мени "Лог" се прикажуваат податоци од видот IP адреса на корисниците, на која страница се приклучени моментално, на која дата во колку сатот и слично.

8

Page 9: Електронски училишен дневник ( School Diary )

УЧИЛИШНО ЗВОНЧЕ

Во менито "Училишно звонче" се врши нагодување на училишното звонче кога да звони. Во менито "Внеси" со внесување на податоците од видот: кога почнува првиот час, колку трае еден работен час, колку трае големиот одмор и колку траат малите одмори помеѓу часовите автоматски се пресметува кога треба да звони звончето за следниве часови. Во менито "Прегледај" има табела на звонење на часовите чиј податоци зависат од начинот на конфигурарање на звончето. Во скриптата е вградено електронско звонче во позадина. Додека Администраторот, Професорот или Родителот ги прегледуваат податоците звончето проверува кога треба да звони часот и при тоа се пушта звук на звонче.

ПОШТА

Во менито "Пошта" ги има следниве подмениа:• Емаил - за испраќање на емаил пораки• Пораки - (Испратени, Примени, Нова порака) пораки во рамките на

електронскиот систем.• Соопштениа (Испратени, Примени, Ново соопштение)

Преку оваа страница се испраќаат соопштениа. Има 3 начини на испраќање на соопштение и тоа: соопштението да се испрати до сите корисници на системот, до сите администратори или пак до сите родители.

ОДЈАВИСЕ

Последното мени кај сите административни панели е менито "Одјави се". Со притискање на менито Одјави се корисникот е прашан дали е сигурен дека сака да ја напушти страницата.

9

Page 10: Електронски училишен дневник ( School Diary )

АДМИНИСТРАТИВЕН ПАНЕЛ ЗА ПРОФЕСОРИ

Најпрво професорот мора да се најави на системот. Тој се најавува на системот со својот ЕМБ и својата лозинка која ја има добиено при регистрирање. Следно што треба да пополни е во кој клас сака да се најави и по кој предмет предава професорот.Од кога ке се најави успешно се појавува слична слика како почетната страница од административниот панел за администратори само што од лево наместо личните податоци на најавениот корисник тука се прикажуваат основните податоци за паралелката во која е најавен професорот. Десно доколку со едно корисничко име се најават на системот два или повеќе корисници ќе се појави порака каде што може да се види од која IP адреса е логиран корисникот, на која дата во

кое време и слично. Исто така има опција за да се поништи сесијата.Најавениот професор нема пристап до сите информации за класот. Тој може само да запишува часови, да запишува отсутни ученици, да ја прегледува листата на ученици, да ги прегледува отцените само по предметот по кој предава, додека класниот раководител може да ги прегледува сите информации. Кога некој професор ќе се најави тие страници што не треба да ги гледа од менито не се појавуваат. Доколку сака да пристапи до страницата преку директен линк ќе му се појави страница дека нема привилегии за да пристапи до таа страница. При најавување самиот систем проверва дали е Понделник и ако е автоматски внесува дежурни ученици. Доколку Понеделник е неработен ден или слично има страница за мануелно внесување на дежурни ученици и до таа страница има пристап само класниот раководител. При внесување на нови отцени или други податоци доколку се направи некоја грешка при внесување или пак некој професор заборави да го запише оджаниот час, тогаш само класниот раководител има право на промена на тие податоци

10

Page 11: Електронски училишен дневник ( School Diary )

МЕНИ "АДМИНИСТРАЦИЈА"

Во менито "Администрација" ги имаме следниве подмениа:• План за настава - за внесување на предмети кои ќе ги изучува паралелката• Распоред на часови - за внесување распоредот на часови на паралелката• Внес на часови - за запишување на одржаните часови и отсутните ученици• Внес на отцени - за отценување на учениците• Внес на дежурни - за внесување на дежурни ученици• Внес на ученици - за внесување на ученици• Промена на лични податоци - за менување на личните податоци на

професорот

МЕНИ „ПРЕГЛЕД НА“

Во ова мени има преглед на сите податоци кои се внесуваат преку менито "АДМИНИСТРАЦИЈА". Во сите страници има можност за пребарување на одредени податоци. Има можност за менување на одредени податоци, бришење и слично.

АДМИНИСТРАТИВЕН ПАНЕЛ ЗА РОДИТЕЛИ

Најпрво родителот мора да се најави на системот. Тој се најавува на системот со својот ЕМБ на своето дете и својата лозинка која ја има добиено при регистрирање. Следно што треба да пополни е во кој клас сака да се најави. Од кога ке се најави успешно се појавува слична слика како почетната страница од административниот панел за администратори.На почетната страница од десно се појавуваат податоците за паралелката во која е логиран родителот. Во средината на страница најгоре имаме листа со новите соопштенија кои се испратени. Подолу имаме една листа со најнови пораки кои администраторот ги има примено од другите корисници. Десно доколку со едно корисничко име се најават на

системот два или повеќе корисници ќе се појави порака каде што може да се види од која IP адреса е логиран корисникот, на која дата во кое време и слично. Исто така има опција за да се поништи сесијата. Во соопштениа пристигнуваат некој поважни пораки, како на пример кога ученикот прави одредена писмена и слично.Во овај административен панел родителот може да испраќа пораки до класниот раководител, да го проверува успехот на своето дете, отсуствата, распоредот на часови, кога почнуваат и завршуваат часовите и слично.

11

Page 12: Електронски училишен дневник ( School Diary )

УПИС ВО СРЕДНО ОБРАЗОВАНИЕ

Електронскиот дневник содржи и формулар за запишување во средно образование. Тој важи само за учениците од прва година. Формуларот е идентичен со обичниот формулар. Откако ќе се пополнат сите податоци на крајот има форма за пополнување на успехот од петто до осмо одделение и веднаш ги пресметува вкупниот број на поени. Податоците од пополнетиот формулар се снимаат во табелата "upis". Откако ученикот ќе го пополни формуларот на неговиот емаил стигнуваат сите податоци и плус едно бројче со кое подоцна оди во училиштето за да ги проверат документите. Откако ќе се проверат документите тогаш администрацијата одлучува дали ученикот е примен или не и веднаш го сместува во некој клас. Без разлика дали ученикот е примен или не на неговиот емаил ќе стигне соодветна порака. Откако ученикот ќе биде примен неговите податоци се префрлуваат во друга табела во базата односно во паралелката каде што е примен.

12

Page 13: Електронски училишен дневник ( School Diary )

УЧИЛИШНО ЗВОНЧЕ

Откако звончето ќе се конфигурира во базата има две табели каде што се чуваат податоците. Една за претпладневната смена и една за попладневната. На сите страници е вметнато звончето со <IFRAME> и тоа на секои 5 секунди автоматски се рефрешира и проверува дали треба да звони или не. Откако звончето ќе звони тогаш следниот рефреш на звончето е по 1 минута. На сликите е претставено алгоритмот за звончето и дел од програмскиот код.

ЗАШТИТА НА ЕЛЕКТРОНСКИОТ СИСТЕМ

Секое отварање на страниците од страна на корисниците се бележи во соодветна табела во базата. Пристап до тие податоци има само администраторот. Во секоја страница се врши проверка дали сесијата постои и дали податоците од сесијата се поклопуваат со податоците на логираниот корисник. Со тоа се спречува внесување на податоци во име на друг корисник, бришење на подаоци и слично. Доколку корисникот е најавен и во истиот момент сесијата му е избришана од некој администратор или пак е блокиран тогаш корисникот веднаш ќе биде одлогиран. Друга заштита е што доколку професорот не му предава на класот не може да се логира и да ги прегледува или менува податоците. Лоинките на кориниците во базата се чуваат енкриптирани со md5 енкрипција. При логирање на корисникот внесената лозинка од обичен текст се претвара во md5 па потоа се споредува со енкриптираната лозинка во базата.

13

ЗВОНЧЕ

ПРВА СМЕНА ЗАВРШИ

АКТИВИРАЈ ЗВОНЧЕ

ПРЕТПЛАДНЕ

НЕДА

АКТИВИРАЈ ЗВОНЧЕ

ПОПЛАДНЕ

Време за звонење?

НЕ

ДА

ЗВОНИ

Page 14: Електронски училишен дневник ( School Diary )

14

Page 15: Електронски училишен дневник ( School Diary )

ЗАКЛУЧОК

Ваквиот начин на работа користејки Интернет училишен дневник е многу поедноставен и поефикасен. Родителите наместо да одат во училиштето за да проверат каков е успехот на нивното дете или пак редовноста можат тоа да го направат во секое време преку интернет. Од друга страна внесувањето на отцените, пресметувањето на просек на учениците, пресметување на просек посебно за секој предмет, сумирање на неоправданите и други евидентни работи се извршуваат автоматски за разлика од стандардниот начин на работа. Друга предност е што професорите не можат да ги гледаат останатите отцени по предметите туку само по предметот по кој предаваат што е добра особина.

ЗАКЛУЧОК СО ГЛАВНИ КАРАКТЕРИСТИКИ

Едноставна инсталација на системот Достапност на системот од секој компјутер каде што има интернет Електронски упис на учениците Заштита од паралелно најавување на корисниците во исто време Автоматско звонче за означување на почетотко и крајот на часовите и

одморите Промена на личните податоци Испраќање на емаил пораки Испраќање на пораќи помеѓу корисниците Испраќање на соопштенија Опција за враќање на заборавената лозинка

Администрација: Менување на податоците на училиштето Внесување на нови администратори Внесување на нови професори Креирање на нови паралелки Внесување на нови предмети Можност за менување на податоците на корисниците Преглед на активни корисници

Професори: Внесување на план за настава Внесување на распоред на часови Запишување на часови Запишување на отцени Автоматско и мануелно внесување на дежурни ученици Внес на нови ученици

Родители: Преглед за редовноста на ученикот Преглед за успехот на ученикот Преглед на распоредот Преглед на закажани писмени работи Емаил известување

15

Page 16: Електронски училишен дневник ( School Diary )

Користена литература

(Библиографија и WEBографија)

1. http://www.tizag.com/phpT/2. http://www.tizag.com/mysqlTutorial/index.php3. http://www.tizag.com/cssT/4. http://en.wikipedia.org/wiki/PHP5. http://en.wikipedia.org/wiki/JavaScript6. http://en.wikipedia.org/wiki/MySQL7. http://www.w3schools.com/js/default.asp8. http://www.w3schools.com/php/default.asp9. http://www.w3schools.com/sql/default.asp10. http://www.howtoforge.com/ubuntu_lamp_for_newbies11. http://en.wikipedia.org/wiki/Sendmail12. Secure PHP Development - Building 50 Practical Applications - Mohammed J.

Kabir13. Beginning Php 4 (Programmer to Programmer)14. PHP6 and MySQL - Steve Suehring, Tim Converse and Joyce Park

16