AMVA50,php ja mysql

9.1 Jäsenrekisteri

Tehtävä 1
Tehtävä 2
Tehtävä 3
Tehtävä 4
Tehtävä 5
Tehtävä 6
Tehtävä 7
 

9.2 Ilmoittautuminen

9. OPPIMISTEHTÄVÄT

 

9.1 Jäsenrekisteri

Tutustu ennen tehtävien aloittamista lukujen 6 ja 7 esimerkkisovellukseen, johon pääset seuraavasta linkistä: Puhelinluettelo. Ylläpitosivujen käyttäjätunnus on testaaja ja salasana testi.

Tehtävänäsi on luoda luvun 6 ja 7 esimerkkisovelluksen vaiheita seuraten Kaukovainion kalastajat - kerhon jäsenrekisteri. Rekisterissä on jäsenten yhteystiedot sekä tietoja jäsenten parhaista kalasaaliista. Kaikilla jäsenillä on oikeus katsella kaikkia jäsentietoja ja päivittää omia  saalistietojaan. Käyttöoikeuksien hallinta toteutetaan viimeisessä vaiheessa.

Tee tehtävä seuraavia vaiheita noudattaen ja lue aina ensin huolellisesti punaisella merkittyjen lukujen ohjeet koskeva.

Näet lopullisen sovelluksen sivukartan tästä. Karttaan on merkitty numerolla sen tehtävän numero, jossa kyseinen tiedosto tehdään.

sivun alkuun

Tehtävä 1: Tietokannan taulujen suunnittelu ja luominen (6h)

Käy ennen tehtävän aloittamista läpi  luvut 2, 3 ja luvut 4.1, 4.2, 4.3 sekä luku 7.1.

Suunnittele tietokantaan tulevat taulut: jasen ja saalis.

Jasen -taulussa on oltava jäsentietojen lisäksi kentät  käyttöoikeuksien hallintaa varten. Ota siis mukaan kentät tunnus, salasana, istuntotunnus ja istunto_alkoi. Katso vinkkiä luvun 7.1 esimerkin Kayttaja-taulusta.

Saalis-taulun voit suunnitella itse.

Kirjoita molempien taulujen kentät ja niiden tietotyypit ja mahdolliset rajoitteet (avainkentät, tyhjät kentät,..) tekstitiedostoon ja palauta se Moodleen opettajan tarkastettavaksi.

Luo taulut tietokantaan Create table-lauseilla vasta, kun olet saanut opettajalta hyväksynnän suunnitelmallesi.

Kun olet luonut taulut, lisää niihin muutama tietue Insert into-lauseilla.

Tehtävän loppuosaa ei tarvitse palauttaa Moodleen, mutta opettaja antaa sinne palautteen tehtävästä käytyään katsomassa taulusi tietokantapalvelimelta.

HUOM! Koska taulujen luomisen onnistuminen on välttämätöntä muiden tehtävien onnistumisen kannalta, pyydä opettajalta apua, jos et onnistu luomaan tauluja itse.

sivun alkuun

Tehtävä 2: Sovelluksen pääsivu ja kaikkien jäsenten haku (4h)

Käy ennen tehtävän aloittamista läpi  luvut 6.1, 6.2 ja 6.3.

  • Luo sovellusta varten hakemisto kalastajat, johon kaikki sovellukseen kuuluvat tiedostot tallennetaan. Siirrä sitten koko hakemisto students.osao.fi-palvelimelle public_html-hakemistoosi. Näin ollen opettaja pääsee katsomaan sovellustasi osoitteesta students.osao.fi/~tunnuksesi/kalastajat.
    Tarkista, että tiedostoissa on lukuoikeudet!
  • Tee tietokantayhteyden muodostamista varten tiedosto funktiot.php luvun 6.2 esimerkin mukaisesti. Muista vaihtaa asetukset omaan tietokantasi mukaisiksi.
  • Tee yhdistykselle haluamasi näköinen pääsivu. Tallenna se nimellä index.html.
    Pääsivulla tulee olla linkki tiedot.php-sivulle.
  • Tee Tiedot.php-sivu, jossa on kaikkien jäsenten yhteystiedot taulukossa kuten esimerkkisovelluksessa.
    Ota mukaan ainakin kentät id, sukunimi ja etunimi. Jokaisen rivin lopussa on linkki saaliit.php -sivulle, johon tulostuu kyseisen jäsenen saaliit.  Taulukko voisi olla alla olevan kuvan näköinen.

sivun alkuun

Tehtävä 3: Saaliiden hakeminen (2h)

Käy ennen tehtävän aloittamista läpi  luku 6.5.

Tee sivu saaliit.php. Sivulle haetaan tietokannasta sen jäsenen saaliit, jonka kohdalla käyttäjä on klikannut Näytä saaliit-linkkiä. Saaliit tulostuvat taulukkoon kuten kuten jäsenetkin.

Vinkki. Siirrä käyttäjän id saaliit.php-sivulle URL:n jatkeena Näytä saaliit-linkin mukana kuten luvussa 6.4 välitettiin id sivulta toiselle.

sivun alkuun

Tehtävä 4: Saaliiden muokkaaminen (2h)

Käy ennen tehtävän aloittamista läpi  luvut 6.5 ja 6.6

Tee saaliit.php-sivulle jokaisen saaliin kohdalle linkki, josta pääsee muokkaamaan saalista kuten esimerkkisovelluksessa päästään muokkaamaan henkilön tietoja.

Tee esimerkin mukainen muokkaus.php-lomake, jolla valittuja saalistietoja voidaan muokata tai ne voidaan poistaa. Tee myös esimerkin mukainen muokattu.php-sivu.

sivun alkuun

Tehtävä 5: Saaliiden lisääminen (2h)

Käy ennen tehtävän aloittamista läpi  luku 6.7.

Tee pääsivulle saaliit.php linkki, josta pääsee lisäämään uuden saaliin tiedot tietokantaan.

Tee myös esimerkin mukaiset lisaaminen.php ja lisatty.php-sivut.

sivun alkuun

Tehtävä 6: Saaliiden etsiminen (2h)

Käy ennen tehtävän aloittamista läpi  luku 6.4.

Tee pääsivulle index.html linkki, josta pääsee etsimään saaliita jonkun kentän perusteena. Haku voidaan toteuttaa esim. pyyntipaikan tai kalalajin nimellä riippuen tietokantasi rakenteesta.

Tee myös esimerkin mukainen etsi.php-sivu, johon etsityt saalistiedot tulostetaan.

sivun alkuun

Tehtävä 7: Istunnon hallinta (4h)

Käy ennen tehtävän aloittamista läpi  luku 7.

  • Tee luvun 7.2 mukainen kirjautumislomake ja kirjautuminen.php-sivu.
  • Täydennä kaikkia sovellukseen kuuluvia sivuja niin, että ennen sivulle siirtymistä tarkistetaan, että käyttäjä on kirjautunut järjestelmään. Tee luvun 7.3 mukainen aputoiminnot.php ja tarvittavat muutokset muihin tiedostoihin.

sivun alkuun

9.2 Ilmoittautuminen tapahtumaan (10h)

Suunnittele ja toteuta jonkun tapahtuman (seminaari, urheilukilpailu, luokkakokous,...) ilmoittautumisjärjestelmä.

Sovelluksessa tulee olla ainakin seuraavat ominaisuudet:

  • Sovelluksessa on ilmoittautumislomake, johon kuka tahansa pääsee eli sivua ei tarvitse suojata.
  • Ilmoittautumislomakkeella on henkilötietojen lisäksi valintakenttiä (select, radio tai check). Näillä voidaan kysyä esim. eri toimintoihin osallistumista tai ruokailuvaihtoehtoja.
  • Ilmoittautumislomakkeella on kenttä, jolla käyttäjä voi kieltää tai sallia nimensä näkymisen ilmoittautuneiden listalla nettisivuilla.
  • Ilmoittautumiset tallennetaan tietokantaan yhteen tauluun (luo tätä varten uusi taulu tietokantaasi).
  • Sovelluksessa on sivu, josta saadaan listattua kaikkien niiden ilmoittautuneiden nimet, jotka ovat antaneet luvan tietojensa julkaisuun.
  • Tietojen muokkaamista ja poistamista ei tarvitse toteuttaa.

HUOM! Jos haluat voit ehdottaa opettajalle jonkun itse keksimäsi sovelluksen toteuttamista tämän tehtävän tilalta.

sivun alkuun