Itv0030 2007 lab 2 requirements: erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
76. rida: 76. rida:
Tee oma kasutajatunnusega kataloog cgi-bin alla:
Tee oma kasutajatunnusega kataloog cgi-bin alla:


<pre>
cd /var/www/cgi-bin
cd /var/www/cgi-bin
mkdir kasutajanimi
mkdir kasutajanimi
</pre>


ja pane cgi-programmid sinna kataloogi /var/www/cgi-bin/kasutajanimi
ja pane cgi-programmid sinna kataloogi /var/www/cgi-bin/kasutajanimi

Redaktsioon: 27. märts 2007, kell 00:56

Laboratoorne töö nr 2

Töö sisuks on laboratoorses töös 1 realiseeritud dummy-rakenduse reaalne realiseerimine serveris, kasutades seejuures otsingutulemuste sisselugemisel ja kuvamisel XMLHttpRequest-i. Realiseerida on vaja:

  • lehekülgede ülesriputamine serverisse
  • andmete sisestamine serveris olevasse andmebaasi
  • otsing, kusjuures otsingutulemusena annab server json formaadis andmed, ning lehel olev javascript kuvab tulemuse html-ks

Serveripoolse realisatsiooni võib teha kolmel viisil:

  • realiseerides kõik ise, oma valitud serveril ja keeles
  • kasutades õppejõu tehtud cgi skripte salvestamiseks ja otsinguks, vt allpool
  • tehes viimaseid oma äranägemisel ümber

proovi realiseeritud otsingut

Ava url http://193.40.254.12/cgi-bin/tammet/otsi.py?order=id&direction=desc&getrows=2 mis peaks tulemuseks andma json formaadis andmed Ava leht http://193.40.254.12/html/tammet/otsing.html ning proovi sisestada 'mina' ja seejärel 'sina': leitud andmed kuvatakse html-s

logi ise serverisse

Serverina kasutame dijkstra.cs.ttu.ee peal jooksvat vmware virtuaalmasinat. Sisse saad logida oma arvutiklassi kasutajanime ja parooliga:

ssh kasutajanimi@193.40.254.12 (kasutajanimi asemel pane oma kasutajanimi arvutklassis) sisesta parool

NB! Serverist ei tehta backuppe, sinu failid võivad väga kergesti kaduma minna: kindlasti hoia kõiki oma faile tagavaraks kusagil oma masinas, igaljuhul väljapool seda serverit.

html lehtede ülespanemine

Kasuta apache olevat kataloogi /var/www/html, tehes sinna oma kasutajatunnusega kataloogi, et segi ei läheks:

tee:

cd /var/www/html mkdir kasutajanimi

Seejärel pane oma veebisaidi lehed (html, css jne) kataloogi /var/www/html/kasutajanimi

Faili saab sinna laadida näiteks scp käsuga niimoodi:

scp minufail kasutajanimi@193.40.254.12:/var/www/html/kasutajanimi/minufail

andmete salvestamine ja otsimine

Andmete salvestamiseks saad kasutada cgi-d

http://193.40.254.12/cgi-bin/tammet/salvesta.py

andes talle get-i või postiga parameetrid, mis vastavad andmebaasi schema väljadele, v.a. id, mida sisestada ei saa:

create table materjalid(
id             integer primary key --- autoincrement     --- unikaalne id
,laadija       varchar(40)  NOT NULL  --- laadija nimi voi hyydnimi 
,ylikool       varchar(40)            --- ylikooli nimi   
,teaduskond    varchar(40)            --- Teaduskonna nimi
,ainekood      varchar(40)            --- Aine kood
,ainenimetus   varchar(40)            --- Aine nimetus
,oppejounimi   varchar(40)            --- jne
,materjalikeel varchar(40)
,materjalityyp varchar(40)
,materjalinimi varchar(40)          
,lyhikirjeldus     varchar(40)      
);

näiteks:

http://193.40.254.12/cgi-bin/tammet/salvesta.py?laadija=kasutajatunnus&ylikool=tty

õnnestunud salvestamine annab tulemuseks arvu 1, ebaõnnestumine annab arvu 0.

NB! Failide üleslaadimist salvesta.py ei realiseeri, ta realiseerib ainult andmete salvestamist.

Oma cgi programmide tegemine

Tee oma kasutajatunnusega kataloog cgi-bin alla:

cd /var/www/cgi-bin
mkdir kasutajanimi

ja pane cgi-programmid sinna kataloogi /var/www/cgi-bin/kasutajanimi Igale cgi-programmile nimega minuprogramm tee:

chmod a+rx minuprogramm

Seejärel tee samasse kataloogi /var/www/cgi-bin/kasutajanimi oma sqlite andmebaas ka:

cd /var/www/cgi-bin/kasutajanimi
sqlite materjalid.db < materjalid.sql
sqlite materjalid.db < data.sql
chmod a+rw materjalid.db

Õppejõu näidis-html leht ja programmid

Kolme mainitud faili saad vaadata kas siit altpoolt või kopeerida endale viidatud kohast (palun ära nimetatud faile ise muuda!)


kasutliidesed lab 2 otsingu html /var/www/html/tammet/otsing.html

kasutliidesed lab 2 otsingu cgi /var/www/cgi-bin/tammet/otsi.py

kasutliidesed lab 2 salvestamise cgi /var/www/cgi-bin/tammet/salvesta.py