Mere Php
Opgave 1:
- Start XAMP og Aptana. Hvis du har fået ny computer så se http://iftek.dk/installation-og-opsaetning-af-udviklingsmiljo-webserver-data.
- Opret et nyt projekt i Aptana. Se evt. installation-og-opsaetning-af-blog der beskriver hvordan dette gøres.
- Kopier et eksempel fra Introduction til PHP / programmering og se om du kan få det til at køre i browseren. URLen vil være noget i retning af http://localhost/projekt/test.php
- Print dags dato på skærmen formateret som dag.måned.år
- Print Hej IFTEK og sæt det sammen med dags dato og klokken.
- Med variable lav et regnestykke hvor du både benytter + - * og /.
- Hvad er forskellen på = og == ? Lav et kode eksempel der benytter dem begge.
- Lav en if-sætning der skriver "God morgen" hvis klokken er mindre end 10, "God dag" hvis klokken er mellem 10 og 17 og "God aften" hvis klokken er mere end 17.
Opgave 2:
- Forklar hvad en funktion er?
- Hvilken betydning har return kommandoen for en funktion?
- [svær] Forklar hvordan koden der tjekker for om et tal er primtal virker. Koden er lidt svær at forstå, prøv evt. at printe værdien af variable i løkken ud.
- [svær] Lav noget kode ved hjælp af løkker og funktioner, der tester alle tal mellem 1 og 1000 for om de er et primtal eller ej. Tæl hvor mange primtal programmet ser og hvor mange tal, der ikke er et primtal.
Litteratur: Guide til at oprette en Facebook App
Litteratur: Hent data fra ekstern kilde
Opgave 3:
- Find dit skema på Lectio og identificer det indhold, du mener, der er interessant at vise i en Facebook applikation
- Højre klik på siden og vælg "Vis kilde / View Source" for at se sidens html-tags. Prøv at find nogle af dine fag/timer i html koden og beskriv, hvad for noget html-kode, der bliver brugt ved hvert eneste fag i skemaet.
- Er der nogle specielle html-tags, ID'er eller en class vores program kan bruges til at finde ens fag og timer?
- Åben Lectio parseren på https://github.com/jakobadam/iftek/blob/master/lectio/lectio.php og gennemlæs linjerne 22 til 76 og forsøg at beskriv med dine egne ord, hvad programmet gør.
- Hvis vi gerne vil gemme hvilke lærere, der underviser til et fag, hvor og hvordan vil du så udvide parseren?
- Beskriv hvad linjerne 187 til 202 gør. Hvordan ser outputtet ud fra funktionen, hvis du giver den dags dato?
Litteratur og Opgaver: Installation og opsætning af Lectio Applikation
Litteratur:
http://phpartikler.dk/artikler/begynder5.php
http://phpartikler.dk/artikler/formular.php
Opgave 4:
- Forklar hvad meningen med settings.php er. Hvilken logik indeholder filen? Hvilke arrays indeholder filen?
- Hvordan hænger settings.php sammen med views/settings.html?
- Hvordan kommer data fra brugerens browser ind i php? Kom med et eksempel fra settings.php.
- Hvordan bringes parseren fra sidste uge i aktion?
Automatisk opdatering af facebook med lektier og aflysninger
Opgave 5:
- Kig i filen update.php overvej hvad den kan bruges til.
Hint: $_GET['user_id'] giver værdien af parameteren user_id i URLer. Fx fra en URL som http://example.com?user_id=1
- I din lectio app på skyen kan du få vist URLen til at hente update.php med de rette parametre dvs. brugernavn og adgangs token til facebook.
- Hent URLen ved at indsætte den i addressefeltet på browseren.
- Ændre app'en så enhver aflysning er en separat facebook nyhed. (Husk at køre deploy scriptet)
Hint: $activity['status'] har værdien aflyst når en time er aflyst.
Automatisk opdatering:
- Gå til http://skyen.iftek.dk/a/jobs/. På siden kan du indsætte en URL og et tidspunkt den skal hentes på.
- Indsæt URLen der skal hentes for at opdatere din facebook.