Locked History Actions

Common Gateway Interface

Žodis angliškai

Common Gateway Interface

Žodis Lietuviškai

CGI programa


Apibrėžimas

CGI (Common Gateway Interface) - tai Web serverio dalis, kuri gali bendrauti su kitomis programomis, veikiančiomis serveryje. CGI pagalba Web serveris gali iškviesti programą ir perduoti jai vartotojo duomenis (tokius kaip: vartotojo IP adresas, arba duomenys, kuriuos vartotojas perdavė naudodamasis HTML formų sintakse). Ši programa apdoroja perduotus duomenis, ir serveris gražina programos atsakymą Web klientui.

Paaiškinimai

Bendra CGI darbo schema atrodytų taip: 1.Web serveris gauna informaciją iš web naršyklės. Duomenys web serveriui perduodami naudojant HTML formas, kurias sudaro tokie įvedimo laukai, kaip selektoriai, opcijos, teksto įvedimo laukai, valdymo mygtukai ir kt. 2.Gauti duomenys iš HTML formos perduodami CGI programai, kuri juos apdoroja. Jei CGI programa negali pateikti reikiamos informacijos, ji formuoja užklausą atitinkamai duomenų bazių valdymo sistemai. 3.CGI programa, gavusi duomenis iš DBVS formuoja dinaminį HTML dokumentą ir siunčia jį kliento web naršyklei 1.jpg

1 pav. Paprasta CGI diagrama

CGI pagalba Web tinklas iš statinių dokumentų kolekcijos tampa interaktyvia terpe, kurioje vartotojas gali užduoti klausimus ir vykdyti programas:

1.Formos - vienas iš daugiausiai sutinkamų CGI panaudojimo pavyzdžių. Formų interfeisas užtikrina interaktyvų procesą tarp vartotojo ir tiekėjo. Formose naudojama daug grafinių detalių, leidžiančių pasirinkti, pažymėti arba įvesti norimą informaciją. Tai tokie elementai, kaip: tekstiniai laukai, slaptažodžių laukai, "Radio button", "Check box" ir pasirinkimo sąrašai. Kai forma baigiama pildyti, vartotojas turi patvirtinti informaciją - nuspausti "Patvirtinimo" mygtuką (Submit button). Tada visa formos informacija perduodama serveriui, kuris vykdo atitinkamą CGI programą. 2.Sąsajos (gateways) - tai programos, kurios naudojamos pasiekti informacijai, prie kurios klientai neturi tiesioginio priėjimo. Tokios informacijos pavyzdžiu gali būti duomenų bazės. Mes negalime klientui tiesiogiai pateikti duomenų failo turinio, nes tai bus tik baitų seka. Šią informaciją reikia specialiai apdoroti. Tam, kad suformuoti SQL užklausas ir nuskaityti duomenis iš DB, galima naudoti specialias programavimo kalbas. Turint norimą informaciją, ją galima apdoroti ir nusiųsti klientui. Tai CGI programa naudojama kaip sąsaja tarp kliento ir duomenų bazės. 3. Virtualūs dokumentai - CGI šerdis. Jie kuriami dinamiškai, atsižvelgiant į kliento reikalavimus. Galima sukurti virtualų HTML, paprastą tekstą, paveiksliuką ar net audio dokumentą.

3.jpg

2 pav. Sąsaja su duomenų baze

Programavimas

CGI programavimui galima naudoti bet kokią programavimo kalbą. Tačiau kai kurios jų yra labiau pritaikytos CGI programavimui, nei kitos. Pasirenkant programavimo kalbą reikia atkreipti dėmesį į tokius dalykus: •Darbo su tekstu lengvumas •Interfeisas su kitomis programinės įrangos bibliotekomis •Galimybė naudotis UNIX'o sisteminiais kintamaisiais Dėl šių priežasčių populiariausios programavimo kalbos yra Perlas, C, C++, C Shell, Tcl ir Visual Basic.

Naudota literatūra

http://proin.ktu.lt/~virga/CGI_knyga/cgi.htm