AMVA50,php ja mysql |
1. Yleistä | 2. Web toimintaympäristönä | 3. Yleistä tietokannoista | 4. SQL-kielen perusteet | 5. PHP ja MySQL |
6. Esimerkkisovellus | 7. Käyttäjien hallinta | 8. SQL-lauseiden turvallisuus | 9. Oppimistehtävät |
Tehtävä 1 |
9. OPPIMISTEHTÄVÄT
9.1 JäsenrekisteriTutustu 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. 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. 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.
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. 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. 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. 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. Tehtävä 7: Istunnon hallinta (4h)Käy ennen tehtävän aloittamista läpi luku 7.
9.2 Ilmoittautuminen tapahtumaan (10h)Suunnittele ja toteuta jonkun tapahtuman (seminaari, urheilukilpailu, luokkakokous,...) ilmoittautumisjärjestelmä. Sovelluksessa tulee olla ainakin seuraavat ominaisuudet:
HUOM! Jos haluat voit ehdottaa opettajalle jonkun itse keksimäsi sovelluksen toteuttamista tämän tehtävän tilalta.
|