Tīmekļa tehnoloģijas II

Praktiskais darbs

Izveidot nelielu "portālu", kas ir veltīts Jūsu interesējošai tēmai.

Prasības standarta darbiem

Obligātajām prasībām ir pierakstīta pazīme (o). Pārējām prasībām ir pierakstītas atbilstošas balles. Obligātās prasības nedod balles!

  1. (o) Izstrādes vide ir PHP un MySQL.
  2. (o) Portāls nedrīkst saturēt erotiskus un porno materiālus, nenormatīvo leksiku un citus materiālus, kas var negatīvi ietekmēt pasniedzēja imidžu.
  3. (1) Ir realizēts autorizācijas mehānisms, izmantojot lietotāja vārdus un paroles. Ir iespējams piereģistrēties portālā, norādot jauno lietotāja vārdu un paroli. Parolēm jāglabājas datubāzē šifrētā veidā (MD5).
  4. (1) Paroli nedrīkst sūtīt atklātā veida. Jāizmanto šifrēšana klienta galā vai HTTP autentifikācija. Izņēmums var būt tikai lietotāja reģistrācija.
  5. (1) Dažām lapām jābūt redzamām tikai portāla administratoram. Administratoram jānodrošina iespēja mainīt vai papildināt portāla saturu un redzēt lietotāju sarakstu. Lietotāju sarakstā jāredz, kad katrs lietotājs bija strādājis ar portālu pēdējo reizi.
  6. (1) Ir realizēts personalizācijas mehānisms, izmantojot cookie vai sesijas. Šis mehānisms ir cieši saistīts ar autorizācijas mehānismu. Kad lietotājs atver kādu portāla lappusi, viņš redz to "noklusētajā" izskatā. Pēc ielogošanās, izskats mainās atbilstoši lietotāja uzstādījumiem. Lietotājam ir iespēja mainīt teksta krāsu un izmēru, un lappuses fonu. Uzstādījumi glabājas datubāzē.
  7. (1) Portāla lapas veidotas, izmantojot šablonus. Ieteicams izmantot Smarty, bet var izmantot arī citus šablonu dzinējus (t.sk. arī pašu rakstītus).
  8. (1) Uzdevums izveidots trīsrindu arhitektūrā, izmantojot OOP (objektorientēto programmēšanu). Datubāzes abstrakcijas līmeni ir ieteicams veidot, izmantojot ADOdb for PHP vai PEAR DB.
  9. (1) Portālam izstrādāti ER modelis (vai UML klašu modelis) un biznesa funkciju modelis (vai saraksts).
  10. (o) Portāla apjoms ir vismaz 10 lapas ar saturīgu informāciju par Jūsu izvēlēto tēmu.
  11. (0.5) Starp lapām ir navigācijas izvēlne, kas ir realizēta kā šablonu mehānisma elements.
  12. (o) Katra lapa satur autortiesību informāciju, kas arī ir realizēta kā šablonu mehānisma elements.
  13. (1) Ir vismaz viena HTML forma, kas ir paredzēta informācijas vākšanai no lietotājiem. Informācija no formas tiek glabāta datubāzē. Vienā no portāla lappusēm ir iespēja apskatīties šo informāciju.
  14. (0.5) Lietotājiem ir iespēja sūtīt administratoram e-pastu ar piesaistnēm (attachment) no portāla lapas, izmantojot atbilstošās PEAR klases.
  15. (o) Darbu jāraksta individuāli.
  16. (o) Visam kodam (izņemot PEAR, Smarty, ADOdb) jābūt pašu rakstītam.
  17. (1) Lai saņemtu izcilu atzīmi, jālieto kāda papildus tehnoloģija servera galā vai jānodrošina valūtu kursu imports XML formātā no http://www.bank.lv/vk/xml.xml (sk. arī Latvijas Bankas noteiktie valūtu kursi).

Prasības nestandarta darbiem

Lai nokārtotu šo kursu, Jūs varat izmantot arī citu darbu, kas ir veidots PHP kopā ar kādu datubāzi (vēlams MySQL), obligāti iepriekš rakstiski saskaņojot prasības ar pasniedzēju.