A CGI szkript lehet annyira egyszerű vagy összetett, amennyire szüksége van. Lehet, hogy Perlben van, Jáva, Python vagy bármilyen más programozási nyelv. A CGI alkalmazás lényege egyszerűen egy HTTP-n keresztül (általában egy webböngészőn) keresztül érkező kérést vesz, és HTML-t ad vissza. Nézzük meg egy egyszerű Perlt Helló Világ A CGI-szkriptet lebontva legegyszerűbb formákká.
„Hello World” CGI Perl szkript
#! / Usr / bin / perl
print "Tartalom típusa: szöveg / html \ n \ n";
nyomtatás <Egy egyszerű Perl CGI Egy egyszerű Perl CGI
Helló Világ
HTML
kijárat;
Ha a programot a parancssoron futtatja, látni fogja, hogy pontosan azt teszi, amit elvár. Először kinyomtatja a Tartalom típus sorra, majd kinyomtatja a nyers HTML-t. Annak érdekében, hogy egy böngészőben működésbe léphessen, át kell másolnia vagy feltöltenie a szkriptet a webszerverre, és ellenőriznie kell, hogy az engedélyek megfelelően vannak-e beállítva (chmod 755 * nix rendszereken). Miután helyesen állította be, akkor képesnek kell lennie arra, hogy böngészjen rajta, és látja az oldalt élőben a szerveren.
A kulcsszó az első nyomtatási nyilatkozat:
print "Tartalom típusa: szöveg / html \ n \ n";
Ez azt jelzi a böngészőnek, hogy a kettő után jön a dokumentum újsorokon HTML lesz. te kell küldjön egy fejlécet, így a böngésző tudja, milyen típusú dokumentum jön a következő, és egy üres sort kell tartalmaznia a fejléc és a tényleges dokumentum között.
A fejléc elküldése után csak magának a HTML-dokumentumnak kell elküldeni. A fenti példában egy here-doc-t használunk, hogy egyszerűsítsük a nagy darab egyszerű szöveget. Természetesen ez valójában nem különbözik attól, hogy egy egyszerű HTML-dokumentumot üljünk a szerveren. A Perl-hez hasonló programozási nyelv HTML-jének létrehozásához valódi hatalma akkor származik, ha néhány divatos Perl-programozást hozzáad.
Hozzáadás az alapszkripthez
A következő példában vegyük részt ebben idő és dátum szkript és adja hozzá a weboldalához.
#! / Usr / bin / perl
@months = qw (január febr. márc. ápr. május ápr. május június aug. szeptember okt. okt. okt. dec.);
@weekDays = qw (vasárnap hétfő kedd péntek péntek vasárnap);
($ második, $ perc, $ óra, $ dayOfMonth, $ month, $ yearOffset, $ dayOfWeek, $ dayOfYear, $ daylightSavings) = localtime ();
$ év = 1900 + $ yearOffset;
$ theTime = "$ weekDays [$ dayOfWeek] $ months [$ month] $ dayOfMonth, $ year";
print "Tartalom típusa: szöveg / html \ n \ n";
nyomtatás <Egy egyszerű Perl CGI Egy egyszerű Perl CGI
$ thetime
HTML
kijárat;
Ez az új CGI szkript minden alkalommal beilleszti az aktuális dátumot az oldalra, amikor a szkriptet meghívják. Más szavakkal: a dinamikus dokumentum, amely a dátum megváltozásakor változik, nem a statikus dokumentum.