HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

Save this PDF as:
 WORD  PNG  TXT  JPG

Størrelse: px
Begynne med side:

Download "HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL"

Transkript

1 HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 08. desember 2003 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng: 6 Faglærer(e): Svend Andreas Horgen tlf: Hjelpemidler: Oppgavesettet består av: Vedlegg består av: Alle skriftlige hjelpemidler 1 oppgave og 1 vedlegg, på totalt 4 sider (inkludert forsiden) Nyttige funksjoner Merknad: Oppgaveteksten kan beholdes av studenter som sitter eksamenstiden ut. Viktig: Les hele oppgaveteksten for hver oppgave før du setter i gang. Planlegg tiden godt. Det er lov å bruke funksjoner du har lagd i en oppgave i en annen. Svar på det oppgaven ber om, ikke alt mulig annet! Der det står skriv med pseudokode er det lov å skrive med programkode også. Dersom du i pseudokode forutsetter bruk av spesielle funksjoner i PHP, så opplys kort om hva disse gjør. Lykke til! Side 1 av 12

2 Oppgave 1 Administrasjonssystem (100%) Administrasjonen ved en høgskole trenger hjelp til å effektivisere oppgaven med å registrere eksamenskarakterer og lage enkle statistikker av materialet. De mottar et A4-ark med studentnumre og tilhørende karakterer fra faglærerne, der alle studentene er listet under hverandre. Det er nødvendig med et slikt manuelt system i og med at listene skal legges ut i resepsjonen med faglærers håndskrift og underskrift slik at studentene kan sjekke karakterene sine. Primæroppgaven til Kari og Per i administrasjonen er å registrere karakterene til hver student. Når en knapp trykkes skal dataene registreres i en databasetabell og en beskjed om at registrering ble vellykket skal komme fram. Tabellen hvor informasjonen skal lagres heter StudentFag og har oversikt over hvilken karakter alle studenter har fått i alle fag, dvs den har følgende tre attributter: StudentNummer, FagKode, Karakter. Det er også et ønske om å lage en enkel statistikk som viser antallet av hver karakter, og denne skal presenteres på web. A er den beste karakteren, B er nest best og så videre, mens F er stryk-karakter. Studentnumrene på de kandidatene som har levert eksamen i hvert fag ligger allerede på egne tekstfiler som er generert av et annet system, en fil for hvert fag, der hver linje har et studentnummer, forutenom første linje som har fagkoden. Anta at alle filene ligger i samme mappe som systemet og at det allerede er implementert støtte for å velge et av mange fag. Du kan dermed ta utgangspunkt i bare filen for faget Internett og sikkerhet (fagkode LV252D) som forteller at fire studenter har tatt eksamen i resten av denne oppgaven: Registreringen av karakterer vil skje i løpet av en måneds tid. Siden systemet er nettbasert er det mulig for Kari og Per å foreta registreringen hjemmefra eller på jobb. Så snart for eksempel Per får en liste med karakterer fra en faglærer som har fullført sensuren, vet han at det bare er å logge seg inn på systemet på web, og starte registreringen av studentene manuelt. Bare Per og Kari skal kunne registrere karakterer, mens alle studenter som har en gyldig kombinasjon av studentnummer og fødselsdato, skal kunne lese karakterlistene for et valgt fag og se på statistikk hvor det framgår hvordan resten av studentene har gjort det på eksamen i gjeldende kurs. Studentnumrene sørger for en viss beskyttelse av den enkeltes karakter og ellers er skolen nokså liberal med tanke på innsyn i fagenes karakterfordeling. Du er innleid som konsulent og setter deg ned for å planlegge løsningen før du tar fatt på selve programmeringen foran din datamaskin. Det er lurt å lese gjennom alle deloppgavene før du starter med denne oppgaven. Vedlegg A har en liste over noen få funksjoner og annen informasjon som kan være nyttig. Side 2 av 12

3 a) Skisser hvordan det webbaserte grensesnittet for registrering av karakterer kan se ut og hvilke elementer som inngår i skjemaet. Forklar med tekst til figuren du lager hvordan du tenker løsningen. Anta at det er karakterene i faget LV252D som skal registreres. (Du skal ikke planlegge grensesnittet for å velge andre fag). b) Skriv med pseudokode hvordan du ville kodet dette grensesnittet i praksis. Ta hensyn til at løsningen skal være enklest mulig å bruke for administrasjonen. Slår sammen løsning for a og b. Det er underforstått i oppgaveteksten at det skal være konsistens mellom deloppgavene. Skjermbildet kan ta mange former, men forslaget under vil både være enkelt å lage med et script og ekstremt lett og intuitivt i bruk for administrasjonen: Oppbygningen av skjermbildet er slik: - Overskriften henter opplysningen om hvilket fag som skal registreres fra første linje på fil - Tabellen har sju kolonner, en for studentnumre og en for hver karakter fra A til F. Bruk av tabell er ikke det viktigste, men gir selvsagt bedre oversikt. - Antall rader er lik antall studentnumre som er på filen. Overskriftsraden er statisk og vil være lik uavhengig av innholdet på filen. - Hver rad viser neste studentnummer, dette er hentet fra neste linje på filen. Side 3 av 12

4 - Radio-sekvensen er essensiell, for informasjonen må kunne tas med til neste side for videre prosessering (legge inn informasjonen i databasen). Det viktige er at name-attributtet for hver enkelt rad må bestå av studentnummeret, mens det er samme name for hver kolonne. Raden med studnummer vil typisk bli slik: <tr> <td>128463</td> <td><input type='radio' name='128463' value='a'></td> <td><input type='radio' name='128463' value='b'></td> <td><input type='radio' name='128463' value='c'></td> <td><input type='radio' name='128463' value='d'></td> <td><input type='radio' name='128463' value='e'></td> <td><input type='radio' name='128463' value='f'></td> </tr> - HTML-koden over er tatt med bare for å illustrere hvordan funksjonalitet og valg av design hører sammen. - I og med at bare en av de seks radioknappene kan trykkes om gangen, vil en ved å bruke $_GET[ ] kunne hente ut den verdien som ble registrert, og slik legge inn riktig karakter for riktig student i databasen i neste omgang. - En bør også ta med seg fagkoden til neste side. Dette for å unngå å åpne filen en gang til for å lese ut fagkoden, og dessuten vet en ikke på neste side hvilken fil som skal åpnes, for HTTP er en tilstandsløs protokoll. Ergo er det egentlig helt nødvendig å ta med seg fagkoden til neste side, noe som vil bli klart når en skal legge inn informasjonen i databasen. Koden i PHP for å lage grensesnittet er basert på følgende pseudokode Åpne riktig fil i lesemodus (her internett_sikkerhet.txt) Les første linje fra fil og lag overskrift med fagkode Lag skjema med passende formatering For hver linje på fil (en linje har ett studentnummer) Skriv ut studentnummer Lag seks radioknapper som har navn lik det nummeret som leses, men hvor verdiene går fra A til F. A-studenten hardkoder ikke en radioknapp for A, en for B, en for C, en for D osv, men bruker opplysning om funksjonen chr() og lar heller en for-løkke gå fra 65 til 70 og lager bokstaven ut fra det. Vanskelig å si om noen vil bruke dette, særlig på pseudokode-nivå. Kanskje litt dumt at oppgaven ikke gjorde mulig bruk av chr() mer tydelig. Kan alternativt bruke nedtrekksliste eller tekstbokser, men poenget er at en må kunne knytte opp karakteren til hver enkelt student. Slutt gjentakelse Lag knapp for å registrere resultatene, og avslutt skjema Merk at en kan bruke informasjonen om chr() og lage value= A, value= B osv med en løkke fra i = 65 til 70, men det kan ikke forventes for strengt tatt sparer en ikke mye på å gjøre det elegant. Rett fram er faktisk mer oversiktlig i dette tilfellet. Avsluttende kommentar: Det er essensielt at filen brukes for å hente ut studentnumrene. Oppgave a og b kan løses tungvindt eller lettvindt, og på mange måter. Legg vekt på å få forklaring/strategi framfor å følge fasiten slavisk. Valg av Side 4 av 12

5 design for skjermbildet binder en opp til hvilken strategi koden må ha. I stedet for å vise en oversikt over alle studentnumrene på en og samme side, kan et annet valg være et todelt skjermbilde hvor en og en student vises, dvs at når en knapp trykkes vil neste linje leses fra fil og neste student være klar for registrering. Dette krever mer av den som implementerer, blant annet at filens innhold legges i et globalt session-array eller lignende, og krever også mer av den som registrerer da det er fort å miste oversikten over hvor langt en er kommet i registreringsprosessen. Trolig best for administrasjonen å se ting nokså likt det A4-arket som kommer inn, for da er det bare å overføre lærerens kryss direkte til skjemaet.noe mer tungvindt totalt sett enn første forslag, og bør ikke gi full uttelling. Dette kan selvsagt diskuteres, men i henhold til oppgaveteksten bør en ha god begrunnelse for å gjøre det annerledes. c) Skriv koden som registrerer informasjonen i databasen når knappen trykkes. Ikke registrer mer enn det som er antydet i oppgavebeskrivelsen. SVAR: Utfordringen i oppgaven er todelt - å få overført informasjon fra en side til en annen for videre prosessering - prosesseringen går ut på å legge inn all informasjon i tabellen student_fag i en database En INSERT-setning må til og bør være enkelt å få til, men en må huske å gå i løkke for hver eneste overførte studentnummer og gjenta insert-setningen. Dersom en velger å ha en løsning hvor en registrerer en og en student i stedet for alle på en gang, blir løkken overflødig, og siden en allerede er trukket litt for dette mindre bra valget i oppgave a/b, bør en ikke straffes denne gangen ( følgefeil ). Ved å la numrene være navn på radioknappene slik som foreslått i forrige oppgave, vil det være en smal sak å sette inn i databasen, nemlig gjennomgå $_POST-arrayet (evt. $_GET) og sette inn: foreach ($_POST as $nokkel=>$verdi) INSERT INTO student_fag VALUES ($nokkel, $fagkode, $verdi) Dersom en gjør det så enkelt, er det én fare som en bør påpeke eller tenke gjennom, nemlig at også knappen vil bli overført og være en del av $_GET/$_POST, noe følgende var_dump() viser: Array ( [128463] => A [183853] => D [100000] => D [200016] => B [knapp] => Registrer resultatene ) Løsningen blir altså å legge bare inn verdiene til skjemaelementer som består av studentnumre. Knappens verdier (som ligger i siste element) skal altså ikke inn i databasen. Fagkoden skal brukes til å knytte sammen studenten og riktig fag. Hvordan kan vi så vite når foreach-løkken skal stoppe? Jo, ved å bare legge inn der nøkkelen er Side 5 av 12

6 et tall, dvs bruke funksjonen is_numeric() for å skille studentnummer fra knappen. Her ser vi fordelen med å bruke tall som name-attributt i radioknappene, men dette kan også løses uten å bruke tall som name. Da må en teste at nøkkelen ikke heter fagkode og heller ikke knapp før en legger inn. Koden blir slik for å legge inn i databasen når vi bruker is_numeric() <?php echo "<pre>"; print_r($_get); //bare for å teste hva som ligger i GET $fagkode = $_GET['fagkode']; $tilkobling = mysql_connect("localhost"); mysql_select_db("karakter_database", $tilkobling); foreach ($_GET as $nokkel=>$verdi) { if ( is_numeric($nokkel) ) { $sql = "INSERT INTO student_fag "; $sql.= "VALUES ('$nokkel', '$fagkode', '$verdi')"; $resultat = mysql_query($sql, $tilkobling); echo "$sql<br>"; }//if }//foreach mysql_close($tilkobling); //trengs egentlig ikke?> Kommentar: Om en glemmer enkle apostrofer rundt verdiene som skal settes inn vil ikke INSERT lykkes, men slike bagateller kan en ikke trekke for på eksamen når en ikke har PC å teste med. Logikken som gjør at all informasjon blir lagt inn er det viktige her. Noen har brukt andre databaser enn mysql i dette kurset, men framgangsmåten med å åpne og legge inn er den samme. Det er pluss i margen om kandidaten bemerker med ord at data bør valideres på tjenersiden, siden det slik det er nå er enkelt å jukse slik at feil inngangsdata legges inn. På den annen side er det jo kun administrasjonen som skal legge inn karakterer, og en kan derfor med rimelig stor sannsynlighet slå fast at validering av data ikke er særlig viktig likevel. Dersom administrasjonen først vil klusse det til har jo de all makt over slike systemer, så problemstillingen er ikke særlig relevant Generelt sett er det smart å validere, men ikke noe trekk til de som ikke sier noe om det d) Det skal også være mulig å få fram en oppsummering av resultatene til et fag, når fagkoden spesifiseres. Lag et script som ikke trenger være helt synktaktisk korrekt, men som er logisk riktig. Scriptet skal hente karakterene for det faget som velges fra databasen og produsere en tekstlig framstilling som ser slik ut: Karakter A: * * Karakter B: * * * * * * Karakter C: * * * * * * * * * Karakter D: * * * * * Karakter E: * * * * * * Karakter F: * * Antall studenter i faget LVD252D: 30 Hint: Legg dataene i en matrise først, se også neste oppgave. Side 6 av 12

7 e) Skisser med pseudokode hva som må til for å lage statistikken i form av et jpg-bilde. I bildet skal stjernene byttes ut med forskjellig fargede søyler som denne gangen står vertikalt (vridd 90 grader) og teksten skal stå inni søylene. Dersom faget som ble valgt var som i eksempelet over, skal teksten Antall studenter i faget LVD252D: 30 stå over alle søylene i blå skrift. FELLES SVAR til d og e Dette blir et langt svar, men målet er å gi deg et bilde av hva som fins av muligheter for å løse oppgaven. I oppgave e blir det samme innsamling av data som i oppgave d, så derfor kommer først en felles bolk. Utfordringen ligger i å hente data fra tabellen og representere disse på en slik måte at grafikk kan lages på forskjellige måter. Det vil også kanskje være vanskelig å lage grafikken korrekt til oppgave e. Dersom en ikke får til å hente data fra databasen i oppgave d, er det fortsatt mulig å få til oppgave e dersom en da antar at dataene er lagt inn i for eksempel en matrise. <?php session_start(); //lurt å lagre data i en session... foreach ($_SESSION as $nokkel => $verdi) $_SESSION[$nokkel] = 0; //sørger for å fjerne alt innhold i evt. gamle sesjoner. //skal nå lage histogram over karakterene i et fag... $valgtkode = "LV252D"; //kan hardkodes, skulle egentlig kommet fra nedtrekksfelt etc. //må først hente ut resultatet $tilkobling = mysql_connect("localhost"); mysql_select_db("karakter_database", $tilkobling); $sql = "SELECT karakter FROM student_fag "; $sql.= "WHERE fagkode = '$valgtkode'"; //echo $sql; $resultat = mysql_query($sql, $tilkobling); $matrise = array(); //til hjelp while ($rad = mysql_fetch_array($resultat)) { $kar = $rad['karakter']; ( isset($matrise[$kar])? $matrise[$kar]++ : $matrise[$kar] = 1 ); //dette er en if-setning på kompakt form. Det vi tester er om karakteren er innlest allerede, hvis ikke vil en feilmelding komme fram. Det er vanskelig å vite dette under eksamen uten PC å prøve på... //det samme med bruk av session ( isset($_session[$kar])? $_SESSION[$kar]++ : $_SESSION[$kar] = 1 ); }//while mysql_close($tilkobling); //var_dump($matrise); //for å sjekke innholdet //echo "<p>"; //var_dump($_session); //Lag histogrammet echo "<pre>"; foreach ($matrise as $karak => $antall) { $stjerner = ""; for ($i=0; $i<$antall; $i++) { $stjerner.= "* "; }//for //Karakter D: * * * * * echo "Karakter $karak: $stjerner <br>"; }//foreach //Lag grafikk som JPG-bilde (koden for å lage grafikken ligger i jpgbilde.php) echo "<img src='session_jpgbilde.php?fagkode=$valgtkode'>";?> Side 7 av 12

8 Kommentar til d og e Det kommer stadig nye PHP-funksjoner og folk som har tatt kurset har jobbet med ulike versjoner. Det er vanskelig å forutsi noen optimal løsning eller hva flertallet vil foreslå, så her får en fokusere på at ting fungerer og henger logisk sammen. Dersom en tenker framover, skal matrisens innhold være tilgjengelig for scriptet som genererer grafikk, og det er dermed lurt å legge inn i $_SESSION i stedet for i en vanlig matrise. Dette blir akkurat det samme, men session har den fordelen at data kan brukes på neste side. Sessions må startes før noe html sendes til nettleseren, dvs at koden session_start() må komme øverst i scriptet. I tillegg til koden er det nyttig å lese følgende kommentarer for ting som en kan være obs på. Det er sikkert mange løsninger ute og går, men her er forsøkt beskrevet logikken i oppgaven. Må dele programmet i to: En bit for å hente data fra databasen inn i for eksempel en matrise, og en bit for å lage histogrammet / jpg-bildet. Strategien for deloppgave d og e er nesten like i første fase. Hvis sessions ikke benyttes, er det derfor lurt å lage en funksjon for å fylle en matrise med innhold fra databasen, evt. legge koden i en include-fil. Slik unngår en å skrive alt på nytt igjen, og det er enklere å endre funksjonalitet i ettertid. Merk at det ikke er mulig for begge oppgavene d og e å dele på matriseressursen direkte, siden det å lage grafikk på direkten krever at et eget grafikkscript ligger som argumentet src til <IMG> taggen. Hvorvidt sessions eller funksjoner/inkludering er det beste alternativet, kan sikkert diskuteres. Flott om noen ser alternative løsninger! Dette løsningsforslaget bruker sessions. Del 1 - Innlegging: Bør legge inn data i en matrise, men kan bruke 6 variabler også. Tanken er at hvert matriseelement har informasjon om antall av hver bokstav, altså får vi seks elementer totalt. I tradisjonell programmering må en da late som om antallet av A ligger i elementet med indeks 0, antall av B ligger i 1 og så videre, til F som ligger i 5. For de som fortsatt måtte tenke tradisjonelt er det da nærliggende å bruke en beslutning for å avgjøre hvilket element som skal oppdateres (if eller switch). Figuren til venstre viser denne organiseringsformen, mens figuren til høyre viser et mye bedre alternativ, nemlig det å utnytte at matriser i PHP er assosiative. Dermed blir bokstaven indeks direkte og oppdateringen av karakterer blir bare én enkelt linje: $matrise[$innlestkarakter] ++ ; Side 8 av 12

9 NB: Det er mulig å bruke opplysning om funksjonen chr() og asc() og dermed simulere en assosiativ matrise (slipper da også tradisjonell if-test), men dette er en mellomløsning og litt mer tungvindt enn den assosiative måten. For å fylle matrisen med innhold brukes SQL-setningen Select karakter from tabell where fagkode = $valgtkode Det er også mulig å hente alt (select * ) fra tabellen og så plukke ut bare de radene med riktig fagkode med PHP-kode, men vi har hatt tre leksjoner på SQL i kurset og dette bør dermed være en unødvendig omvei som ingen velger. NB: Dersom en har enda mer kjennskap til SQL enn vi har gjennomgått i kurset, er det mulig å unngå veien om å telle opp resultatet inkrementelt rad for rad i en matrise. Ved å bruke setninger ala mysql> select count(*) from student_fag where karakter = 'A'; count(*) row in set (0.01 sec) lar en MySQL gjøre jobben, og det er positivt (i hvertfall ikke negativt!) SQL er kraftig og den muligheten må selvsagt kunne benyttes. Det er ikke forventet at mange skal vite om slike ting, men de som evt. måtte bruke det bør belønnes ved tvilstilfeller om sluttkarakteren. Del 2: Å lage histogrammet: Løkke som gjentas så mange ganger som det er antall registrert av hver karakter, og lager en tekststreng av stjerner. Skriver ut en og en linje. Må huske å blanke ut tekststrenger for hver ny karakter som skal skrives ut. Finne antall studenter: Gjennomløpe hvert matriseelement og summere opp antallet. Kan også kjøre en sql-setning ala mysql> select count(*) from student_fag where fagkode='lv252d'; count(*) row in set (0.00 sec) Lage grafikken, oppgave e I oppgave e blir det samme innsamling av data som i oppgave d. Vi vet nå antall av hver karakter (antar at dette ligger i session-matrisen fra nå av), dermed kan søyler som er antall/totalt store tegnes etter hverandre, med tekst inni som sier KarakterA osv. Strategien er klar. De har leksjonen om grafikk foran seg til hjelp og har gjort øving som skulle lage horisontale søyler. Her er en punktvis oversikt over strategien, og det vises til koden i jpgbilde.php for fullstendig PHP-kode. - Data som grafikken skal lages ut av ligger i session. Dersom en har valgt å lage en funksjon eller en fil som inkluderes for å finne innholdet det skal lages grafikk Side 9 av 12

10 av, er det helt i orden, men en må da huske at ingenting må sendes til skjerm, for det som produseres er et bilde og dersom noe tekst mikses inn blir bildet feil laget og vil ikke vises i det hele tatt. - Lager først et hvitt lerret på for eksempel 400x300 punkter - Siden koordinatsystemet har origo øverst til venstre i PHP, må grunnlinjen i grafen få y-verdi på noe mindre enn Søylenes høyde blir for eksempel antallet av en karakter * en faktor for å unngå at de blir for små. 10- eller 20-dobling kan være aktuelt, men siden antall karakterer kan være forskjellig i små og store fag, er det lureste i praksis selvsagt å regne seg ut til en fornuftig faktor. Denne matematikken er ikke viktig siden dette kurset ikke forutsetter matte, men prinsippet om at 2 piksler blir for lite til å illustrere 2 av karakter A, er verdt å merke seg. - Første søyle kan starte fra 20 piksler i x-retning, for eksempel, og ha en bredde på 50, og uten noe mellomrom betyr det at siste søyle slutter i punkt 320 langs x- aksen. - Tegner søylene vha en foreach-løkke. Merk at dermed vil det ikke tegnes søyler for karakterer med 0 registreringer, siden disse ikke fins i databasen som er grunnmaterialet. - Det er enkelt å tegne teksten vertikalt, men fort å tegne på feil sted. Siden de ikke har PC på eksamen og det i slike tilfeller er vanlig med prøving og feiling, bør en ikke trekke noe særlig om teksten skulle være forskjøvet. - Lager overskriften. Dersom session brukes må overskriften sendes inn som getparameter eller en må huske å legge overskriften i session på en tidligere side. - Gjør ferdig bildet. Den totale koden for oppgave d og e ligger vedlagt i to versjoner, en som bruker inkludering av filer, og en som bruker sessions (alle relevante filer har prefiks session_ ). f) Oppgavene over har fokusert på grensesnittet for innlegging av data, innlegging i databasen og visning av statistikk. Systemet bør også ha en side som tar seg av innlogging for å skille administrasjonen fra studentene. Når Kari eller Per er logget inn skal det stå Du er innlogget som Kari/Per på hver side i systemet. Diskuter og drøft hva du ville tatt hensyn til for å realisere disse kravene. Hvilke fordeler og ulemper ser du for deg? SVAR: Det er vanskelig å velge én bestemt løsning, men en bør komme inn på følgende i sin diskusjon: - Sikkerhet vs brukervennlighet - Velge og begrunne metode for autentisering. Autentisering med HTTP kan generelt sett gjøres enten ved å framtvinge en 401-feil med kode, eller med Side 10 av 12

11 .htaccess. Det siste er enklest, men minst fleksibelt og vil IKKE være tilstrekkelig her. Husk at studentene og administrasjonen har ulike privilegier ved innlogging, og innloggingsdata ligger (for studentene) i databasen, så dermed er 401 trolig den løsningen som vil fungere. - Bruk av sessions og cookies vil sørge for å bevare informasjonen slik at en slipper å logge seg inn flere ganger per side. Videre kan en da også huske navnet. Evt. hidden, men det er tungvindt og ikke så sikkert, for hidden-felt kan manipuleres av klienten. - Passordene til administrasjonen bør enten hardkodes i scriptet, men kanskje helst lagres i en fil eller en tabell. Av og til kan det være en fordel om passordene i et system lagres hashet, men det er ikke er så stort poeng for dette tilfellet hvor i utgangspunktet alle administrativt ansatte kan sjekke karakterer. Det er ikke noen personsensitiv informasjon knyttet til de ansatte som ligger lagret, og dermed er det ikke så farlig om for eksempel systemansvarlig får fatt i karakterene. - Må validere data SQL-injection må unngås. Side 11 av 12

12 Vedlegg A nyttige funksjoner og andre opplysninger Funksjonen fgets() string fgets ( resource handle [, int length]) leser et visst antall bytes, eller bare en linje dersom andre argument utelates. Funksjonene chr() og ord() string chr ( int ascii) returnerer ASCII-tegnet som skjuler seg bak ASCII-koden. Tegnet A har Ascii-verdi 65, B har 66 og så videre. ord() virker motsatt Funksjonen rtrim() string rtrim ( string str [, string charlist]) Brukes normalt bare med ett argument. Fjerner mellomrom og tegn for linjeskift, tabulatorer og lignende SQL-setninger INSERT INTO tabellnavn VALUES ( nr1, nr2, nr3 ) WHERE betingelse SELECT kolonne1, kolonne2 FROM tabellnavn WHERE betingelse Gyldige HTML-setninger for elementer så som text, radio, checkbox, password etc: <input type="elementtype" name="14" value="hei du"> <input type="elementtype" name="nils" value="ja"> Bildefunksjoner int imagerectangle ( resource image, int x1, int y1, int x2, int y2, int col) tegne et rektangel int imagestringup ( resource image, int font, int x, int y, string s, int col) tegne tekst vertikalt Side 12 av 12

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 11. mai 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15. desember 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 11. mai 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 20. mai 2005 Varighet: 3 timer (09:00 12:00) Fagnummer: Fagnavn: Klasse(r): LV197D Webprogrammering med

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 18. mai 2006 Varighet: 3 timer (09:00 12:00) Fagnummer: Fagnavn: Klasse(r): LV197D Webprogrammering med

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Eksamensdato: 15.des 2011 Studiepoeng: 6 Varighet: 4 timer. Start kl 09:00 og skal leveres inn senest kl 13:00 Emnekode: Emnenavn:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 17.desember 2001 Varighet: 0900-1300 Fagnummer: LV192D Fagnavn: Web-programmering med ASP Klasser: 1hsf Vekttall:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15. mai 2003 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LO116D Programmering i Visual Basic FU Studiepoeng:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 20. mai 2005 Varighet: 3 timer (09:00 12:00) Fagnummer: Fagnavn: Klasse(r): LV197D Webprogrammering med

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 12. desember 2002 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LO116D Programmering i Visual Basic FU

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 20.mai 2005 Varighet: Fagnummer: Fagnavn: Klasse(r): Studiepoeng: 6 3 timer LO116D Programmering i Visual

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 18. desember 2002 Varighet: Fagnummer: Fagnavn: 3 timer BO328D Applikasjonsutvikling Klasse(r): FU 1HKD2002

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 21. mai 2003 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer BO328D Applikasjonsutvikling FU Studiepoeng:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15.desember 2006 Varighet: Fagnummer: Fagnavn: 09.00 13.00 (4 timer) LO116D og LN116D Programmering i Visual

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 21.mai 2007 Varighet: Fagnummer: Fagnavn: Klasse(r): Studiepoeng: 6 09.00 13.00 (4 timer) LN116D Programmering

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15. desember 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 15. desember 2003 Varighet: 0900 1200 Fagnummer: Fagnavn: Klasse(r): LV193D Web-programmering med JSP NETT Studiepoeng:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 16.desember 2005 Varighet: Fagnummer: Fagnavn: 3 timer LO116D Programmering i Visual Basic Klasse(r): FU

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 19. mai 2003 Varighet: 0900-1300 Fagnummer: Fagnavn: Klasser: LV193D Web-programmering med JSP NETT Studiepoeng:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15.desember 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LO116D Programmering i Visual Basic FU

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15.desember 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LO116D Programmering i Visual Basic FU

Detaljer

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 EKSAMEN Emnekode: ITM20606 ITF10208 Dato: Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 05/06-2009 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater

Detaljer

Eksamen i Internetteknologi Fagkode: IVA1379

Eksamen i Internetteknologi Fagkode: IVA1379 Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: IVA1379 Tid: Mandag, 07.06.04, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 4 oppgaver

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 16.desember 2005 Varighet: Fagnummer: Fagnavn: 3 timer LO116D Programmering i Visual Basic Klasse(r): FU

Detaljer

Oblig 5 Webutvikling. Av Thomas Gitlevaag

Oblig 5 Webutvikling. Av Thomas Gitlevaag Oblig 5 Webutvikling Av Thomas Gitlevaag For oppgave 1 og 2 skal dere levere en funksjonell webside på deres hjemmeområde. Dere skal også levere alle phps-filene slik at man for en hver side kan slenge

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 19. mai 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LO116D Programmering i Visual Basic FU Studiepoeng:

Detaljer

ET LITE TILBAKEBLIKK PÅ TEKSTSTRENGER...

ET LITE TILBAKEBLIKK PÅ TEKSTSTRENGER... Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Ingredienser og mye krydder i PHP Svend Andreas Horgen Lærestoffet er utviklet for faget IINI3003Webprogrammering med PHP Resymé: Programmering

Detaljer

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 EKSAMEN Emnekode: ITM20606 ITF10208 Dato: Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 01/06-2010 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater

Detaljer

Innhold. Innledning... 13

Innhold. Innledning... 13 Innhold Innledning.................................................... 13 Kapittel 1 Kom i gang med PHP............................................ 17 1.1 Hvorfor PHP?.............................................

Detaljer

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad.

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad. EKSAMEN Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 09/12-2008 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne) Faglærer: Tom Heine

Detaljer

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

EKSAMEN (Konvertert fra en gammel PHP-eksamen) EKSAMEN (Konvertert fra en gammel PHP-eksamen) Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 07/12-2010 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 4.desember 2008 Varighet: 0900-1200 Fagnummer: Fagnavn: Klasser: LO347D/LN347D Web-applikasjoner med Java EE Nettstudenter

Detaljer

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

EKSAMEN (Konvertert fra en gammel PHP-eksamen) EKSAMEN (Konvertert fra en gammel PHP-eksamen) Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 06/12-2011 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - Kandidatnr: AITeL Eksamensdato: 2.desember 2009 Varighet: 0900-1300 Emnekode: Emnenavn: Klasse(r): LO191D / LC191D LO191D Videregående programmering

Detaljer

Prosjekt i faget Webprogrammering med PHP

Prosjekt i faget Webprogrammering med PHP Prosjekt i faget Webprogrammering med PHP Laget av Svend Andreas Horgen, oktober 2009 I dette dokumentet finner du en problembeskrivelse med krav til et større nettsted. Du (din gruppe) skal skissere og

Detaljer

EKSAMEN ITF10208. Webprogrammering 1 Dato: Eksamenstid: Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

EKSAMEN ITF10208. Webprogrammering 1 Dato: Eksamenstid: Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne) EKSAMEN Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 01/06-2011 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne) Faglærer: Tom Heine

Detaljer

Fasit til eksamen høst 2002, applikasjonsutvikling

Fasit til eksamen høst 2002, applikasjonsutvikling Fasit til eksamen høst 2002, applikasjonsutvikling Oppgave 1 a) moduser er output, input, append. Resultatet blir at bare den siste setningen vises, nemlig: her er litt mer informasjon Grunnen til dette

Detaljer

1. Innføring i bruk av MySQL Query Browser

1. Innføring i bruk av MySQL Query Browser Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Innføring i bruk av MySQL Query Browser Kjell Toft Hansen 28.02.2007 Lærestoffet er utviklet for faget LV338D Databaseadministrasjon 1. Innføring

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 4.mai 2011 Varighet: 0900-1300 Emnekode: Emnenavn: Klasse(r): LO191D / LC191D Campus: LC191D Videregående

Detaljer

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

EKSAMEN (Konvertert fra en gammel PHP-eksamen) EKSAMEN (Konvertert fra en gammel PHP-eksamen) Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 30/05-2012 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

Detaljer

HTML5. Skjemaer på nettsider. Skjemaer med. Informasjonsteknologi 1 og 2. Gløer Olav Langslet Sandvika VGS

HTML5. Skjemaer på nettsider. Skjemaer med. Informasjonsteknologi 1 og 2. Gløer Olav Langslet Sandvika VGS Skjemaer med HTML5 Gløer Olav Langslet Sandvika VGS Leksjon 10 Informasjonsteknologi 1 og 2 Skjemaer på nettsider I denne leksjonen skal vi se litt nærmere på bruk av skjemaer på nettsider. Du har sett

Detaljer

Høgskoleni østfold EKSAMEN. Emne: Innføring i programmering

Høgskoleni østfold EKSAMEN. Emne: Innføring i programmering Høgskoleni østfold EKSAMEN Emnekode: ITF10213 Emne: Innføring i programmering Dato:Eksamenstid: 11/12-20154 timer Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 25. mai 2005 Varighet: 4 timer (9:00 13:00) Fagnummer: LO182D Fagnavn: Programmering i C++ Klasse(r): FU

Detaljer

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS

if-tester Funksjoner, løkker og iftester Løkker og Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS Løkker og if-tester Gløer Olav Langslet Sandvika VGS 29.08.2011 Informasjonsteknologi 2 Funksjoner, løkker og iftester Læreplansmål Eleven skal kunne programmere med enkle og indekserte variabler eller

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG AVDELING FOR INFORMATIKK OG E-LÆRING Kandidatnr: Eksamensdato: 9.mai 2005 Varighet: Fagnummer: Fagnavn: 3 timer LV 252 D Internett og sikkerhet Klasse(r): Studiepoeng: 6 Faglærer(e):

Detaljer

K O N T I N U A S J O N S E K S A M E N

K O N T I N U A S J O N S E K S A M E N Høgskolen i Gjøvik K O N T I N U A S J O N S E K S A M E N FAGNAVN: FAGNUMMER: Grunnleggende programmering og datastrukturer L 169 A EKSAMENSDATO: 8. januar 1998 KLASSE: 96HINDA / 96HINDE TID: 09.00-14.00

Detaljer

Tilgjegelighet av XHTML-forms

Tilgjegelighet av XHTML-forms [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hio.no) 08/02-14 Utvikling av dynamiske nettsteder med PHP og databaser, våren 2014 Eksempel 1: For å lage en liten array (bare 5 innførsler)

Detaljer

Antall oppgaver: 6. Alle trykte og skrevne hjelpemidler

Antall oppgaver: 6. Alle trykte og skrevne hjelpemidler "..{ ~ høgskolen i oslo t:mne:--dtstribuerte informasjonssystemer Emnekode:SO I 34A ~,6ruppe(r):3AA.3AB,3AC,3AD,3AE,3Af I Dato:08. I 2.2003 Faglig veileder: Frode Eika Sandnes Eksamenstid:9-14 Eksamensoppgaven

Detaljer

Eksamen i Internetteknologi Fagkode: ITE1526

Eksamen i Internetteknologi Fagkode: ITE1526 Datateknikk Side 1 av 8 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Mandag, 23.05.05, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 3 oppgaver og

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: Varighet: Fagnummer: Fagnavn: Klasse(r): Studiepoeng: Faglærer(e): Hjelpemidler: Oppgavesettet består av:

Detaljer

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk

Produktdokumentasjon. Madison Møbler Administrasjonsside og Nettbutikk Produktdokumentasjon Madison Møbler Administrasjonsside og Nettbutikk 1 1. Forord 1.1 Dokumentasjonen Dette er en teknisk dokumentasjon på produktet som er utviklet. Denne er tiltenkt personer med teknisk

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - Kandidatnr: AITeL Eksamensdato: 4.mai 2011 Varighet: 0900-1300 Emnekode: Emnenavn: Klasser: LV195D Objektorientert programmering i C++ Nettstudenter

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 21.desember 2007 Varighet: 0900-1300 Fagnummer: Fagnavn: Klasse(r): LV195D Objektorientert programmering i C++ nettstudenter

Detaljer

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad.

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad. EKSAMEN Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 08/12-2009 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne) Faglærer: Tom Heine

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: Varighet: Fagnummer: Fagnavn: Klasse(r): Studiepoeng: Faglærer(e): Hjelpemidler: Oppgavesettet består av:

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2015

TDT4102 Prosedyre og Objektorientert programmering Vår 2015 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2015 Øving 3 Frist: 2014-02-07 Mål for denne øvinga:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 26.mai 2006 Varighet: 0900-300 Fagnummer: Fagnavn: Klasse(r): LV95D Objektorientert programmering i C++ nettstudenter

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 6. juni 2006 Tid for eksamen: 1430 1730 Oppgavesettet er på 6 sider. Vedlegg: INF1010 Objektorientert programmering

Detaljer

9. ASP med databasekopling, del II

9. ASP med databasekopling, del II Else Lervik 23.03.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 9. Resymé: I forrige leksjon så vi hvordan ASP kunne brukes til å vise

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 26.mai 2005 Varighet: 0900-300 Fagnummer: Fagnavn: Klasse(r): LV95D Objektorientert programmering i C++ nettstudenter

Detaljer

https://nhh.itslearning.com/

https://nhh.itslearning.com/ e-læringssystemet https://nhh.itslearning.com/ Sist oppdatert 08.09.2009 10:07 1 1. Hva er It s Learning? It's Learning er et e-læringssystem hvor du finner elektronisk informasjon om alle våre kurs/studier,

Detaljer

En enkel while-løkke. 1 of 12 15.09.2015 15:28. 2 of 12 15.09.2015 15:28. while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt

En enkel while-løkke. 1 of 12 15.09.2015 15:28. 2 of 12 15.09.2015 15:28. while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hioa.no) 15/09-15 En liten repetisjon Løkker Arrayer (tabeller) Løkker

Detaljer

Universitetet i Bergen Det matematisk-naturvitenskapelige fakultet Institutt for informatikk

Universitetet i Bergen Det matematisk-naturvitenskapelige fakultet Institutt for informatikk Universitetet i Bergen Det matematisk-naturvitenskapelige fakultet Institutt for informatikk BOKMÅL EKSAMEN I EMNET INF 112 Systemkonstruksjon Torsdag 7. juni 2007 Tid: 09:00 12:00 Tillatte hjelpemidler:

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: Varighet: Emnekode: Emnenavn: Klasse(r): Studiepoeng: Faglærer(e): Kontaktperson (adm.) Hjelpemidler: Oppgavesettet

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidat nr: Eksamensdato: 12. desember 2005 Varighet: 3 timer (9:00 12:00) Fagnummer: LO515D Fagnavn: Klasser: NETT2005H Studiepoeng: 6 Faglærer:

Detaljer

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Page 1 Page 2 [Kurssidene] [ JBI] [ ] Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Introduksjon til kontrollstrukturer Michael Preminger (michaelp@hio.no) 07/09-06 I denne forelesningen

Detaljer

Kanter, kanter, mange mangekanter

Kanter, kanter, mange mangekanter Kanter, kanter, mange mangekanter Nybegynner Processing PDF Introduksjon: Her skal vi se på litt mer avansert opptegning og bevegelse. Vi skal ta utgangspunkt i oppgaven om den sprettende ballen, men bytte

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO BOKMÅL Det matematisk-naturvitenskapelige fakultet Eksamen i : Eksamensdag : Torsdag 2. desember 2004 Tid for eksamen : 09.00 12.00 Oppgavesettet er på : Vedlegg : Tillatte hjelpemidler

Detaljer

EKSAMEN (Konvertert fra en gammel PHPeksamen)

EKSAMEN (Konvertert fra en gammel PHPeksamen) EKSAMEN (Konvertert fra en gammel PHPeksamen) Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 01/06-2011 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

Detaljer

while-løkker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt Eksempel 1: en enkel while-løkke

while-løkker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt Eksempel 1: en enkel while-løkke while-løkker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hioa.no) 01/09-17 En liten repetisjon Løkker Arrayer

Detaljer

Høgskoleni østfold EKSAMEN

Høgskoleni østfold EKSAMEN Høgskoleni østfold EKSAMEN Emnekode: Emne: ITF10208 og Webprogrammering 1 og ITF10212 Innføring i programmering Dato: Eksamenstid: 03/12-2013 09.00-13.00 Hjelpemidler: Faglærer: 2 A4 ark (4 sider) med

Detaljer

Læringsplattform for IT-fag basert på HTML5 utviklet i CakePhp

Læringsplattform for IT-fag basert på HTML5 utviklet i CakePhp Læringsplattform for IT-fag basert på HTML5 utviklet i CakePhp { En selvstendig plattform som kan brukes til å formidle kurs på nett med dagsaktuell teknologi. Oppgave 5, av Fredrik Johnsen Oppgavestiller

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - Kandidatnr: AITeL Eksamensdato: 5.mai 2010 Varighet: 0900-1300 Emnekode: Emnenavn: Klasser: LV195D Objektorientert programmering i C++ Nettstudenter

Detaljer

Veileder til levering og godkjenning av rapporteringsdata til DBH-F

Veileder til levering og godkjenning av rapporteringsdata til DBH-F 07.06.2012 Veileder til levering og godkjenning av rapporteringsdata til DBH-F Innhold Punkt I Hvordan fungerer dette? Hva må jeg vite før jeg går i gang?... 2 Punkt II Laste opp filer... 9 Punkt III Vis

Detaljer

Plan for dagen. Vprg 4. Dagens tema - filbehandling! Strømmer. Klassen FilLeser.java. Tekstfiler

Plan for dagen. Vprg 4. Dagens tema - filbehandling! Strømmer. Klassen FilLeser.java. Tekstfiler Plan for dagen Vprg 4 LC191D Videregående programmering Høgskolen i Sør-Trøndelag Avdeling for informatikk og e-læring Anette Wrålsen Del: Intro til tekstfiler Del II: Mer om tekstfiler, Scanner-klassen

Detaljer

Løsningsforslag. Oppgavesettet består av 9 oppgaver med i alt 20 deloppgaver. Ved sensur vil alle deloppgaver telle omtrent like mye.

Løsningsforslag. Oppgavesettet består av 9 oppgaver med i alt 20 deloppgaver. Ved sensur vil alle deloppgaver telle omtrent like mye. Løsningsforslag Emnekode: ITF75 Dato: 5 desember Emne: Matematikk for IT Eksamenstid: kl 9 til kl Hjelpemidler: To A4-ark med valgfritt innhold på begge sider Kalkulator er ikke tillatt Faglærer: Christian

Detaljer

Joly. Brukerdokumentasjon for foreleser/administrator

Joly. Brukerdokumentasjon for foreleser/administrator Joly Brukerdokumentasjon for foreleser/administrator Logge inn For å logge inn i Joly går du til http://obelix.ifi.uio.no:8080/loginform.html. Denne siden er ikke linket til fra forsiden, da studentene

Detaljer

E K S A M E N. Algoritmiske metoder I. EKSAMENSDATO: 11. desember HINDA / 00HINDB / 00HINEA ( 2DA / 2DB / 2EA ) TID:

E K S A M E N. Algoritmiske metoder I. EKSAMENSDATO: 11. desember HINDA / 00HINDB / 00HINEA ( 2DA / 2DB / 2EA ) TID: Høgskolen i Gjøvik Avdeling for Teknologi E K S A M E N FAGNAVN: FAGNUMMER: Algoritmiske metoder I L 189 A EKSAMENSDATO: 11. desember 2001 KLASSE: 00HINDA / 00HINDB / 00HINEA ( 2DA / 2DB / 2EA ) TID: 09.00-14.00

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: Varighet: Emnekode: Emnenavn: Klasse(r): Studiepoeng: Faglærer(e): Kontaktperson (adm.) Hjelpemidler: Oppgavesettet

Detaljer

1. Rullende navn, s 3 2. Smilefjes, s 5 3. Skritteller, s 7 4. Orakel, s 9 5. Stein, saks og papir, s Kompass, s 14

1. Rullende navn, s 3 2. Smilefjes, s 5 3. Skritteller, s 7 4. Orakel, s 9 5. Stein, saks og papir, s Kompass, s 14 Kom i gang med 2 I dette heftet skal vi gjøre oss kjent med micro:bit og lære å programmere med blokk-kode. Heftet inneholder seks ulike prosjektoppgaver med differensiert innhold og tema. 1. Rullende

Detaljer

EKSAMEN. Emne: Algoritmer og datastrukturer

EKSAMEN. Emne: Algoritmer og datastrukturer 1 EKSAMEN Emnekode: ITF20006 000 Dato: 18. mai 2012 Emne: Algoritmer og datastrukturer Eksamenstid: 09:00 til 13:00 Hjelpemidler: 8 A4-sider (4 ark) med egne notater Faglærer: Gunnar Misund Oppgavesettet

Detaljer

Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP.

Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP. 1 Dette er en demonstrasjonsside som vi skal bruke for å se litt nærmere på HTTP protokollen. Eksemplet vil også illustrere et par ting i PHP. (Læreboka kapittel 2-5) Legg merke til den første blokken,

Detaljer

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006

Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Page 1 Page 2 [Kurssidene] [ JBI] [ ] Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Vi kommer for det meste til å bruke while-løkker, men for-løkker anses viktige å kjenne til Michael

Detaljer

Tilkobling og Triggere

Tilkobling og Triggere Tilkobling og Triggere Lars Vidar Magnusson October 12, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 12, 2011 1 / 25 Tilkobling med PHP PHP bruker databasespesifike moduler til å koble

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 6.desember 2010 Varighet: 0900-1200 Fagnummer: Fagnavn: Klasse(r): LC238D Datamodellering og databaser HING2009HA

Detaljer

Høgskoleni østfold EKSAMEN

Høgskoleni østfold EKSAMEN Høgskoleni østfold EKSAMEN 7 Emnekode:Emne: ITF10212Innføring i programmering Dato:Eksamenstid: 4. desember 2012 kl 09.00 til kl 13.00 Hjelpemidler: Faglærer: To A4-ark (4 sider) med egenproduserte notater

Detaljer

while-økker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt Eksempel 1: en enkel while-løkke

while-økker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt Eksempel 1: en enkel while-løkke [Kurssidene] [ ABI - fagsider bibin ] Utvikling av dynamiske nettsteder med PHP og databaser, våren 2014 while-økker while-løkker gjentar instruksjonene så lenge en betingelse er oppfylt Michael Preminger

Detaljer

Manual for innlegging av standard sideinnhold og nyheter via «backend»

Manual for innlegging av standard sideinnhold og nyheter via «backend» Manual for innlegging av standard sideinnhold og nyheter via «backend» 23.3.2006 Utarbeidet av: 2 Innlogging og beskrivelse av hovedelement i «backend» For å få tilgang til redigeringsmodul velges følgende

Detaljer

praktiske eksempler DOM Document Object Model DOM og Høst 2013 Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS

praktiske eksempler DOM Document Object Model DOM og Høst 2013 Informasjonsteknologi 2 Læreplansmål Gløer Olav Langslet Sandvika VGS DOM og praktiske eksempler Gløer Olav Langslet Sandvika VGS Høst 2013 Informasjonsteknologi 2 DOM Document Object Model Læreplansmål Eleven skal kunne programmere med enkle og indekserte variabler eller

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidatnr: Eksamensdato: 10.desember 2008 Varighet: 0900 1200 Fagnummer: Fagnavn: LO346D Java EE og distribuerte systemer Klasse(r): NETT

Detaljer

Prosedyrer. Lars Vidar Magnusson. October 26, Lars Vidar Magnusson () Forelesning i DAS October 26, / 19

Prosedyrer. Lars Vidar Magnusson. October 26, Lars Vidar Magnusson () Forelesning i DAS October 26, / 19 Prosedyrer Lars Vidar Magnusson October 26, 2011 Lars Vidar Magnusson () Forelesning i DAS 11.10.2011 October 26, 2011 1 / 19 Repetisjon om triggere og prosedyrer Triggere og prosedyrer ligner på hverandre

Detaljer

EKSAMEN. Dato: 9. mai 2016 Eksamenstid: 09:00 13:00

EKSAMEN. Dato: 9. mai 2016 Eksamenstid: 09:00 13:00 EKSAMEN Emnekode: ITF20006 Emne: Algoritmer og datastrukturer Dato: 9. mai 2016 Eksamenstid: 09:00 13:00 Hjelpemidler: Alle trykte og skrevne Faglærer: Jan Høiberg Om eksamensoppgavene: Oppgavesettet består

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidat nr: Eksamensdato: 13. mai 2005 Varighet: 3 timer (9:00 12:00) Fagnummer: LO515D Fagnavn: Klasser: NETT2005V Studiepoeng: 6 Faglærer:

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Øving 10 Frist: 2014-04-11 Mål for denne øvinga:

Detaljer

Eksamessett Høst 2009 Robin Sværen og Simen Arvesen

Eksamessett Høst 2009 Robin Sværen og Simen Arvesen Eksamessett Høst 2009 Robin Sværen og Simen Arvesen Del 1 Kodeforståelse (20 %) Her skal du kun svare på selve spørsmålet, og du trenger ikke forklare hvordan du kommer frem til svaret. NB! Les koden og

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring Kandidat nr: DELVIS LØSNINGSFORSLAG (ikke fullstendig) Eksamensdato: 12. desember 2005 Varighet: 3 timer (9:00 12:00) Fagnummer: LO515D Fagnavn:

Detaljer

Mattespill Nybegynner Python PDF

Mattespill Nybegynner Python PDF Mattespill Nybegynner Python PDF Introduksjon I denne leksjonen vil vi se litt nærmere på hvordan Python jobber med tall, og vi vil lage et enkelt mattespill. Vi vil også se hvordan vi kan gjøre ting tilfeldige.

Detaljer

Her er eksamenssett fra Vår '09. Av Robin Sværen og Simen Arvesen.

Her er eksamenssett fra Vår '09. Av Robin Sværen og Simen Arvesen. Her er eksamenssett fra Vår '09. Av Robin Sværen og Simen Arvesen. Del 1 Kodeforståelse (10%) Her skal du kun svare på selve spørsmålet, og du trenger ikke forklare hvordan du kommer frem til svaret. NB!

Detaljer

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 9. juni 2005 Varighet: 4 timer (9:00 13:00) Fagnummer: LO701D Fagnavn: Interaktive Webtjenester med Java

Detaljer

2. Beskrivelse av mulige prosjektoppgaver

2. Beskrivelse av mulige prosjektoppgaver Avanserte databaser (øving 9, 10, 11 & 12) Tore Mallaug 25.01.2008 Opphavsrett:Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LO326D Avanserte Databaser INNLEVERINGSFRISTER (Obligatorisk

Detaljer