Applikasjonsutvikling mot web

Størrelse: px
Begynne med side:

Download "Applikasjonsutvikling mot web"

Transkript

1 Applikasjonsutvikling mot web Databaseapplikasjoner Informasjonssystemer Arkitektur PHP = PHP Hypertext Processor PHP og HTML Grunnleggende konstruksjoner (variabler, løkker, valg, ) Tabeller og assosiative tabeller Behandle skjemadata (HTML Forms) Representere databasetabeller som assosiative matriser PHP og MySQL Etablere og lukke databaseforbindelser Utføre SQL-spørringer Behandle spørreresultater Pensum: Kapittel 12 og 13

2 Informasjonssystemer En database er en logisk samling av data. Et databasesystem er en database administrert av et databasehåndteringssystem (DBHS). En applikasjon er et program utviklet for en bestemt anvendelse. En databaseapplikasjon er en applikasjon som bruker et databasesystem for lagring av data. Et informasjonssystem består av komponenter for å samle inn, lagre, behandle, overføre, søke etter og presentere informasjon som blir brukt i en virksomhet. Mer konkret: Informasjonssystem = Databasesystem + Applikasjoner

3 Databaseklienter i et nettverk Brukere jobber med databasen fra klientmaskiner. Databaseapplikasjonen er kanskje installert på hver enkelt maskin. 3

4 Web-applikasjoner Web-applikasjoner «kjører i nettleseren». Brukergrensesnittet er typisk kodet i HTML Ikke behov for installasjon av klientapplikasjoner (typisk kun HTML på klientsiden tynne klienter). Brukergrensesnitter utviklet med et generelt programmeringsspråk som Java gir tykke klienter. 4

5 Arkitektur for web-løsninger Eksempelvis laget med: Brukergrensesnitt Forretningslogikk Dataaksess HTML, JavaScript PHP Lagrede rutiner Fysisk er en web-applikasjon fordelt på flere maskiner (database server, web server, klient) Logisk sett er den ofte bygd opp fra tre «lag» som vist over. De ulike lagene kan være programmert med forskjellige språk.

6 Plattform og utviklingsstakker PHP Apache MySQL Linux C#/ASP.NET IIS SQL Server Windows Java/JSF Apache Oracle Unix Plattform er en kombinasjon av maskinvare og basis programvare - ofte brukt synonymt med operativsystem (Windows- og Linux-plattform) Utviklingsstakk er en konkret kombinasjon av slike grunnleggende teknologier (operativsystem, DBHS, web-tjener, programmeringsspråk/skriptspråk) Apache mest brukte web-tjenere IIS Internet Information Server JSF Java Server Faces

7 Internett og web Lokalnett Lokalnett Lokalnett Internett Ruter Lokalnett Internett = et globalt nett av nettverk som fungerer i henhold til åpne standarder for kommunikasjon. Bygger på TCP/IP (Transmission Control Protocol / Internet Protocol). Web er en anvendelse av internett som e-post, filoverføring, fjerninnlogging, Kan i sin enkleste og opprinnelige form betraktes som en global samling av dokumenter knyttet sammen av hyperlenker.

8 Statiske web-sider GET fil.html HTML Internett HTTP fil.html Web server Nettleser (web-klient) HTML (HyperText Markup Language) dokumentformat som brukes for å lagre nettsider HTTP (HyperText Transfer Protocol) protokoll som styrer kommunikasjon mellem web-klient og web-server

9 Dynamiske web-sider fil.php HTML HTTP Internett Web server + PHP-tolker Nettleser (web-klient) POST fil.php PHP (Hypertext Preprocessor) er et skriptspråk for å utvikle web-applikasjoner.

10 Databasedrevne nettsteder Web server + PHP-tolker fil.php HTML POST fil.php HTTP SQL Spørre-re sultat Internett Nettleser (web-klient) Database-ser ver

11 Program på databasetjeneren Web server + PHP-tolker fil.php HTML POST fil.php HTTP Kall Respons Internett prog.sql Nettleser (web-klient) Database-serv er Utførelse av lagrede rutiner

12 Prosessering på klientsiden fil.php HTML HTTP Internett Web server + PHP-tolker Nettleser (web-klient) POST fil.php + JavaScript

13 Web-services Web server Web server fil2.java fil3.php XML SOAP Internett HTTP SQL fil1.php Spørre-re sultat Nettleser (web-klient) Database-ser ver

14 HTML og HTTP html head body title h1 p a a HTML (HyperText Markup Language) Elementer, attributter, startmerke, stoppmerke HTML-dokumenter er hierarkisk bygd opp HTTP (HyperText Transfer Protocol) Protokoll = en samling regler HTTP-forespørsel (GET, POST) og HTTP-respons (HTML-dok)

15 Web-tjenere, nettlesere og URLer Opprinnelig var web en samling av kryssrefererende HTML-dokumenter. Web-tjenere og nettlesere kommuniserer i henhold til en (tilstandsløs) klient/tjener-arkitektur. Nettleser Web-tjener fil1.htm En URL (Uniform Resource Locator) er en måte å referere web-ressurser (f.eks. HTML-dokumenter) på. protokoll domenenavn katalogsti filnavn

16 HTML-dokumenter og PHP-skript Nettleser Web-tjener side1.htm PHP-tolker side2.php HTML-dokumenter blir sendt direkte til nettleseren. PHP-skript blir sendt til en PHP-tolker for utførelse. Utdata som PHP-skriptet produserer blir sendt til nettleseren. Det betyr at klient-maskinen ikke ser PHP-koden. Web-løsninger programmert med PHP krever ikke installasjon av programvare på klienten; en standard nettleser er nok.

17 Nedlasting, installasjon og konfigurering Åpen kildekode Ferdigkompilert løsning for Windows AMP 1. Apache ( Sjekk localhost 2. MySQL 5.0 ( Windows installer 3. PHP 5 ( Last ned kompilert Windows-versjon Konfigurering Apache styrefil: httpd.conf PHP styrefil: php.ini Pakkeløsning WAMP (AMP on Windows) Enkel installasjon Meny: Starte/stoppe tjenester, MySQL-konsoll, tillegg, styrefiler

18 Dynamiske web-sider med PHP Nettleser HTML-skjema Skjemadata PHP utdata (HTML) Web-tjener PHP-tolker skript.php SQL DBHS Database Typisk oppsett Apache + PHP + MySQL + JavaScript 18

19 Den grunnleggende idéen Et typisk PHP-skript: 1. Motta og behandle skjemadata fra bruker. 2. Bruk skjemadata for å lage en SQL-spørring mot databasen. 4. Bruk spørreresultat (3) for å generere en ny HTML-side. Nettleser 1 4 skript.php 2 3 Database PHP web-applikasjoner: Tenk at hver nettside blir generert av ett PHP-skript (forenkling). Nettsidene er dynamiske fordi de er basert på skjemadata fra bruker og innholdet i databasen (som jo endrer seg ). Hver brukerinteraksjon i nettleseren går «innom» web-tjeneren (og et PHP-skript): forespørsel respons forespørsel respons

20 Hei web! PHP-koden plasseres mellom <?php og?> <html> <body> <?php print '<h1>hei web!</h1>';?> </body> </html> Denne blandingen av HTML og kode er karakteristisk for PHP (og flere andre skriptspråk). For eksempel Java Server Faces prøver å skille presentasjon og logikk klarere fra hverandre! Lagrer koden i hei.php og kopier ut på web-tjeneren med WinSCP. Åpner nettleseren på side WAMP på hjemme-pc: Lagrer PHP-filen på C:\<wamp-rot>\www\hei.php Åpner nettleseren på Slipper kopiering (kun lagre+ «refresh» i nettleseren) localhost: Bruker egen maskin som web-tjener (og web-klient)

21 Alternativ løsning Her blir det enda mer tydelig at nettsiden som blir levert er utdata fra et program (PHP-skriptet): <?php print '<html>'; print '<body>'; print '<h1>hei web!</h1>'; print '</body>'; print '</html>';?> Hva skjer på forrige lysark? PHP-motoren utfører PHP-skriptet, og «fletter» HTML-koden (utenfor PHP-taggene) med utdata fra skriptet. Mulig å ha flere «HTML-bolker» og «PHP-bolker» i samme skript (man går da ut og inn av «PHP-modus»).

22 Alle variabelnavn starter med $ Variabler <html> <body> <?php $navn = 'Ola'; print '<h1>hei '. $navn. '</h1>';?> </body> </html> Punktum slår sammen tekstverdier

23 Simulere input fra bruker Lagre denne filen som areal.php <html> <body> <?php $side = $_GET['txt_side']; $areal = $side * $side; print '<h1>areal: '. $areal. '</h1>';?> </body> </html> Kopier filen ut på ditt område på web-tjeneren home.hit.no Test i nettleseren Hva vises på nettsiden?

24 Enkle og doble apostrofer En tekst omsluttet av doble apostrofer kan inneholde variabler PHP-motoren erstatter slike variabler med sin verdi. Det er altså Ola og ikke $navn som blir vist på nettsiden (under). Doble apostrofer er «behagelige», enkle er litt mer effektive. <html> <body> <?php $navn = 'Ola'; print '<h1>hei '. $navn. '</h1>'; print "<h1>hei $navn </h1>";?> </body> </html>

25 En vanlig feil Man glemmer at variabelnavn starter med $ <html> <body> <?php $navn = 'Ola'; print '<h1>hei '. navn. '</h1>';?> </body> </html> Det blir skrevet ut en feilmelding på nettsiden Les feilmeldingen og legg merke til linjenummeret. Årsaken til Feil på linje 57 kan skyldes feil på linje 12!

26 Linjeskift i kildekoden Den synlige nettsiden er det viktigste, men I forbindelse med feilretting er det imidlertid behagelig om også kildekoden ser bra ut. \n produserer linjeskift (\t for tabulator ) <?php $navn = 'Ola'; print '<html>\n'; print '<body>\n'; print '<h1>hei '. $navn. '</h1>\n'; print '</body>\n'; print '</html>\n';?>

27 Datatyper Det er ikke nødvendig å deklarere variabler i PHP Datatyper boolean, integer, float, string array, object (og et par til) PHP-tolkeren utleder datatypen fra sammenhengen $et_heltall = 3; $et_kommatall = 3.14; $en_tekst = 'Ola'; $x = $et_heltall + 4;

28 Operatorer Aritmetiske operatorer + - * / % 10%3 er lik 1 Sammenligningsoperatorer > >= ==!= < <= == betyr likhet === lik og samme type!== ulik og forskjellig type Inkrement og dekrement og -1 Logiske operatorer &&! og eller ikke Noen spesielle operatorer..= slå sammen tekst legg til tekst += *= $x+=2; det samme som $x=$x+2;

29 Innebygde funksjoner Tekststrenger str_pad, strlen, substr, substr_replace, trim, ucfirst, Dato og tid date, getdate, gettimeofday, strtotime, Matematikk abs, ceil, cos, exp, floor, log, pi, rand, round, sin, sqrt, tan, Eksempler $s = substr('abcdef', 1, 3); // bcd $today = getdate(); $avst = sqrt(exp($x2-$x1,2) + exp($y2-$y1,2));

30 Konvertering Skjemadata er i utgangspunktet tekst $side = $_GET['txt_side']; // fra skjema $areal = $side * $side; Implisitt konvertering $tall = '2' + '2'; // $tall blir lik 4 Eksplisitt konvertering (typetvang, type casting) $tall = (int) '85'; Funksjoner for å avlese datatype is_int($tall), is_numeric($side),

31 Presentasjon av tall Parametre til funksjonen number_format: Antall desimaler Tegn for desimalpunktum Tusenskilletegn $pris = ; print( number_format($pris, 2, ',', ' ') ); Resultat: ,79

32 Valgsetninger Bruker skriver inn alder - programmet skriver ut pris $alder = $_GET['alder']; // Fra skjema $pris = 80; // Full pris if ($alder < 7) { $pris = 0; // [0..7> går gratis } else { if ($alder <= 12 $alder > 67) $pris = $pris * 0.5; // Halv pris } print ('Pris: '. $pris);

33 While-løkker Bruker skriver inn øvre grense (positivt heltall!) programmet skriver ut summen av tallene fra 1..max $max = $_GET['max']; // Fra skjema $tall = 1; $sum = 0; while ($tall <= $max) { $sum = $sum + $tall; $tall = $tall + 1; // Alternativt $tall++; } print('sum 1..'. $max. '='. $sum);

34 Tabeller i PHP Tabeller egner seg for gjennomløp med for-løkker // Nedbør (mm) pr. dag i en gitt uke $nedboer = array(3,0,0,23,0,17,4); $antall = sizeof($nedboer); // 7 elementer for (int $i=0; $i<$antall; $i++) { $sum += $nedboer[$i]; // Merk += } $snitt = $sum / $antall; print('totalt: '. $sum. ' snitt: '. $snitt);

35 Gjennomløp med foreach Hvis vi skal skrive ut alle verdiene i en tabell Trenger ikke å vite posisjonene foreach-løkker er da ofte en enklere løsning enn for-løkker For å produsere en punktliste må vi Skrive ut <ul> helt først og </ul> helt til slutt Så må vi omslutte hver verdi med <li> og </li> $tabell = array(3,0,0,23,0,17,4); print '<ul>'; foreach ($tabell as $enverdi) { print '<li>'. $enverdi. '</li>'; } print '</ul>';

36 Produsere en HTML-tabell For å skrive ut en HTML-tabell må vi nøste to løkker $tab1 = array(1,2,3,4,5); $tab2 = array(1,2,3,4,5,6,7); print '<table>'; foreach ($tab1 as $v1) { print '<tr>'; foreach ($tab2 as $v2) { print '<td>'. $v1*$v2. '<td>'; } print '</tr>'; } print '</table>'; Hvordan ser resultatet ut?

37 Assosiative tabeller Vanlige tabeller blir indeksert med heltall $tab[0], $tab[1], $tab[2], I assosiative tabeller kan vi velge indeksering $nedboer = array ( "mandag" => 3, "tirsdag" => 0, "onsdag" => 0, "torsdag" => 23, "fredag" => 0, "lørdag" => 17, "søndag" => 4 ); $man = $nedboer["mandag"]; // slår opp $nedboer["mandag"] += 2; // oppdaterer Tenk på assosiative tabeller som «funksjoner» (her fra dag til mm)

38 foreach-løkke Kan gjennomløpe alle elementene i en assosiativ tabell med en slags «mønstergjenkjenningsteknikk» $sum = 0; $nedboer = array( ); // Se forrige lysark foreach ($nedboer as $ukedag => $mm) { print($ukedag. " ". $mm. " mm"); $sum += $mm; } print("totalt ". $sum. " mm nedbør"); Tenk slik: En assosiativ tabell er en «mapping» fra nøkkel til verdi I vårt eksempel fra ukedager til nedbørsmengde Utfører løkkekroppen for hvert par nøkkel => verdi

39 isset og array_key_exists Finnes en bestemt nøkkel i en assosiativ matrise? $d = "juledag"; if (!array_key_exists($d, $nedboer)) print("ukjent ukedag"); Har vi fått inndata fra bruker? if (! isset($_get["txtantall"]) ) print("du må skrive et tall!");

40 HTML-skjemaer I Brukes for å hente inndata fra brukere Blir definert med elementet form Et form-element kan inneholde GUI-komponenter (tekstbokser, nedtrekkslister, kommandoknapper) <html><body> <form method="get" action="skjemabehandler.php"> <p> Navn: <input type="text" name="navn" size="20"> </p> <p> <input type="submit" value="søk" name="sok"> <input type="reset" value="rensk" name="rensk"> </p> </form> </body></html>

41 HTML-skjema II <form method="get" action="skjemabehandler.php"> <p>navn: <input type="text" name="navn" size="20"> </p> <p> <input type="submit" value="søk" name="sok"> <input type="reset" value="rensk" name="rensk"> </p> </form> Form-attributtet action inneholder URL til PHP-skriptet som skal behandle søket. Kommandoknappen med navn søk er av type «submit» nettleseren sender forespørselen når bruker klikker på knappen Inndata blir sendt til web-tjeneren som en sekvens av navn/verdi-par x1=v1, x2=v2,..., xn=vn

42 HTML-skjema III <form method="get" action="skjemabehandler.php"> <p>navn: <input type="text" name="navn" size="20"> </p> <p> <input type="submit" value="søk" name="sok"> <input type="reset" value="rensk" name="rensk"> </p> </form> Form-attributtet method styrer hvordan nettleseren sender forespørselen og er enten GET eller POST Med GET blir skjemadata overført som en URL-parameter (?navn=kari)

43 Behandle skjemadata <html> Navnet brukeren skriver <body> inn i nettside 1 blir altså <h1>kundedata</h1> vist fram i nettside 2. <?php $fornavn = $_GET["navn"]; print("<p>fornavn: ". $fornavn. "</p>");?> </body> </html> $_GET inneholder skjemadata når metode GET er brukt $_GET er en assosiativ tabell (parameter => verdi) Med GET er skjemadata synlig i URLen ( Vi kan ha bokmerker til «nettside med skjemadata» Vi kan teste nettsider uten å lage HTML-skjema

44 Metode POST Fordeler med POST Kan overføre større datamengder enn ved GET (~2000 tegn) $_POST er også en assosiativ tabell (parameter => verdi) Skjemadata er ikke synlig i URLen Hindrer at andre får tak i sensitiv informasjon ved å se på skjermen NB! Skjemadata blir ikke kryptert verken med GET eller POST Hvordan? <form method="post" action="skjemabehandler.php"> <input type="text" name="navn" size="20"> <input type="submit" value="søk" name="sok"> </form> I skjemabehandler.php: $fornavn = $_POST["navn"]; Bruker nok vanligvis POST i en HTML Form.

45 $_GET, $_POST og $_REQUEST Skjemadata blir altså overført i en assosiativ matrise Merk for øvrig at passord ikke blir kryptert $_GET = array ( "brukernavn" => "Ola", "passord" => "Hemmelig" ) De superglobale matrisene $_GET : skjemadata overført med metode GET $_POST : skjemadata overført med metode POST $_COOKIES : informasjonskapsler $_REQUEST : summen av $_GET, $_POST og $_COOKIES

46 Bruk av $_REQUEST POST-forespørsel: <form method="post" action="skjemabehandler.php"> <input type="text" name="navn" size="20"> <input type="submit" value="søk" name="sok"> </form> GET-forespørsel: Samme skript kan behandle begge typer av forespørsler: $fornavn = $_REQUEST["navn"];

47 Databasetabeller som assosiative tabeller En databasetabell består av et antall rader: $dbtab = array($rad1,$rad2,$rad3); Hver rad kan håndteres som en «mapping» fra kolonnenavn til verdi: $rad1 = array("nr"=>1, "navn"=>"per"); En databasetabell er altså en tabell av slike «mapping»-tabeller: $dbtab = array( array("nr"=>1, "navn"=>"per"), array(), ); Dette er i hvert fall én måte å representere databasetabeller på i PHP...

48 Databaseprogrammering i PHP For brukeren vil en web-applikasjon bestå av en antall nettsider. Fylle ut et skjema trykke «send» - applikasjon kvitterer med en ny side Vi kan produsere hver enkelt nettside med et eget PHP-skript. Et slikt skript kan være bygget opp slik: Åpne en forbindelse til databasen. Avles skjemadata som brukeren har skrevet inn. Bygg opp en SQL-spørring basert på inndata fra brukeren. Send SQL-spørringen til databasen for utførelse. Behandle spørreresultatet og skriv ut ny nettside (HTML). Lukk forbindelse til databasen. PHP-skript kan kommunisere med forskjellige databasehåndterings-systemer. Vi bruker her MySQL.

49 Databasedrevne web-løsninger med PHP Nettleser HTML-skjema Skjemadata 4 1 PHP utdata (HTML) Web-tjener PHP-motor 2 3 Spørre-resu ltat SQL DBHS Database Web-tjener er «tjener» mot nettleser og «klient» mot DBHS Skjemadata blir til SQL blir til spørreresultat blir til HTML 49

50 Opprette databaseforbindelse For å koble opp til en MySQL-tjener: Adressen til tjeneren (evt. localhost) Brukernavn Passord En MySQL-tjener kan inneholde flere databaser: Må velge database $forbindelse = mysql_connect("localhost","bruker","passord") ; mysql_select_db("test"); Lukke forbindelsen til databasen: mysql_close( $forbindelse ); // mysql_free_result

51 Utføre SELECT-spørringer Sender med SQL-spørringen som parameter til mysql_query: $sql = "SELECT * FROM Vare;"; $resultat = mysql_query( $sql ); Antall returnerte rader: $antall = mysql_num_rows( $resultat ); Hva inneholder $resultat? $resultat er av datatype resource; referanse til en ekstern ressurs Inneholder hele spørreresultatet Kan løpe gjennom spørreresultat med en løkke og hente ut verdier

52 Databaseforbindelse I kallet på mysql_query så er det underforstått at vi skal bruke databaseforbindelsen $forbindelse: $forbindelse = mysql_connect("localhost","bruker","passord"); mysql_select_db("test"); $sql = "SELECT * FROM Vare;"; $resultat = mysql_query($sql); Vi kan gjøre dette eksplisitt: $resultat = mysql_query($sql, $forbindelse); Dette gjelder flere av MySQL-funksjonen i PHP.

53 Bygge SQL-spørringer fra skjemadata Lagre skjemadata i PHP-variable: $sok = $_REQUEST["txtSok"]; Bygg SQL merk enkle og doble apostrofer og blanke tegn! $sql = "SELECT * FROM Vare ". "WHERE Betegnelse LIKE '". $sok. "%';"; Test: Skriv ut SQL-koden! print("<p>testutskrift:". $sql. "</p>");

54 Behandle spørreresultater I Anta $resultat er et spørreresultat med en kolonne Betegnelse: $linje = mysql_fetch_array($resultat, MYSQL_ASSOC); while ( $linje ) { $navn = $linje["betegnelse"]; print( $navn. "<br>"); $linje = mysql_fetch_array($resultat, MYSQL_ASSOC); } Alternativer: MYSQL_NUM, MYSQL_BOTH

55 Behandle spørreresultater II Det er ikke nødvendig å vite navnet på kolonnene: $linje=mysql_fetch_array($res, MYSQL_ASSOC)); while ($linje) { foreach ($linje as $verdi) { print($verdi. " "); } print("<br>"); $linje=mysql_fetch_array($res, MYSQL_ASSOC)); }

56 Fra spørreresultat til HTML-tabell Generelt blir dette en nøstet løkke Skriv ut <table> Hent første rad Skriv ut <tr> Hent første verdi Skriv ut <td> Skriv ut første verdi Skriv ut </td> (verdi 2, verdi 3, ) Skriv ut </tr> (rad 2, rad 3, ) Skriv ut </table>

57 UPDATE og DELETE Gir ikke et spørreresultat, men vi kan finne ut hvor mange rader som ble berørt: $sql = "DELETE FROM Vare;"; $resultat = mysql_query( $sql ); if ($resultat) print(mysql_affected_rows(). " rader ble slettet!"); else print("noe gikk galt!"); UPDATE og DELETE berører samtlige rader hvis vi ikke legger på en WHERE-betingelse!

58 INSERT Setter som regel inn 1 rad basert på skjemadata: $varekode = $_REQUEST["varekode"]; $betegnelse = $_REQUEST["betegnelse"]; $sql = "INSERT INTO Vare(Varekode,Betegnelse) ". "VALUES (". $varekode. "'". $betegnelse. "'". ");"; $resultat = mysql_query( $sql ); Merk: Apostrofer rundt tekstverdier, men ikke rundt tall Øvrige kolonner i den nye raden blir satt til NULL

59 Autonummerering I MySQL angis autonummerering som en kolonne-egenskap: CREATE TABLE Ansatt ( AnsNr INTEGER AUTO_INCREMENT, ); Kolonner som er autonummererte tas ikke med i INSERT INSERT INTO Ansatt(Fornavn, Etternavn) VALUES ('Per', 'Hansen'); Hvordan få tak i sist genererte ansattnr: mysql_query($sql); $sisteansnr = mysql_insert_id();

INF130 Datahåndtering og analyse

INF130 Datahåndtering og analyse INF130 Datahåndtering og analyse Visualisering av data på web Applikasjonsutvikling Applikasjonsutvikling mot web Databaseapplikasjoner Informasjonssystemer Arkitektur PHP = PHP Hypertext Processor PHP

Detaljer

Webformularer, PHP og databaser

Webformularer, PHP og databaser PHP-arkitektur Webformularer, PHP og databaser Jfr Fra kjernen og ut, fra skallet og inn Appendix B WWWklient Netscape, Internet Explorer, Opera Dynamisk web-side bygges opp på grunnlag av spørring mot

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 Et program som er installert på en tjenermaskin, og som tillater eksterne programmer å utføre spørringer

Detaljer

6105 Windows Server og datanett

6105 Windows Server og datanett 6105 Windows Server og datanett Leksjon 9 Web, HTTP og IIS Applikasjonslaget i Internett Web protokollen: HTTP Webtjeneren IIS Utskrift med HTTP i Internett Pensum Kvisli: Windows Server og datanett, Kap.

Detaljer

6105 Windows Server og datanett

6105 Windows Server og datanett 6105 Windows Server og datanett Leksjon 9 Web, HTTP og IIS Applikasjonslaget i Internett Web protokollen: HTTP Webtjeneren IIS Utskrift med HTTP i Internett Pensum Kvisli: Windows Server og datanett, Kap.

Detaljer

Systemarkitektur. Webformularer, PHP og databaser. Hva skal applikasjonsprogrammet gjøre? PHP. Ta i mot data fra brukergrensesnittskjermbildet

Systemarkitektur. Webformularer, PHP og databaser. Hva skal applikasjonsprogrammet gjøre? PHP. Ta i mot data fra brukergrensesnittskjermbildet Systemarkitektur Virkeligheten (interesseområdet) Webformularer, PHP og databaser Dynamisk webside bygges evt opp på grunnlag av spørring mot databasen Jfr Fra kjernen og ut, fra skallet og inn Appendix

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

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

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider:

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider: Fra sist JSP - 2 Installasjon av Web-tjener Et enkelt JSP-script HTML statisk Forms Tags Ønsker dynamiske nettsider: Klientside-script/programmering Javascript, vbscript, applets Tjenerside-script/programmering

Detaljer

6105 Windows Server og datanett

6105 Windows Server og datanett 6105 Windows Server og datanett Denne øvingen forutsetter at du har gjort disse øvingene tidligere: Labøving 7b Skriveradministrasjon Laboving 9a Installere og konfigurere webtjeneren IIS I denne øvingen

Detaljer

$antall_maaneder =12; Variablene $pris og $antall_maaneder i eksemplet ovenfor har

$antall_maaneder =12; Variablene $pris og $antall_maaneder i eksemplet ovenfor har Et program som legger sammen to brukergitte tall må hente det ene hente det andre legge tallene sammen [Kurssidene] [ ABI - fagsider bibin ] presentere resultatet. Mellom operasjonene må data tas vare

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: 11. mai 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng:

Detaljer

Huldt & Lillevik Ansattportal. - en tilleggsmodul til Huldt & Lillevik Lønn. Teknisk beskrivelse

Huldt & Lillevik Ansattportal. - en tilleggsmodul til Huldt & Lillevik Lønn. Teknisk beskrivelse Huldt & Lillevik Ansattportal - en tilleggsmodul til Huldt & Lillevik Lønn Teknisk beskrivelse Huldt & Lillevik er trygghet Trygghet er å vite at løsningen du bruker virker, hver eneste dag, enkelt og

Detaljer

Innføring i bruk av CGI4VB

Innføring i bruk av CGI4VB Innføring i bruk av CGI4VB Her kommer en enkel innføring i bruk av modulen CGI4VB som kan benyttes for å lage CGI programmer i Visual Basic. CGI er en forkortelse for Common Gateway Interface den kommunikasjonsprotokollen

Detaljer

HTML og relasjonsdatabaser med PHP

HTML og relasjonsdatabaser med PHP HTML og relasjonsdatabaser med PHP Oppgaveveiledning Kent Dahl Informasjonsbehandling Brukersystemer Orkdal videregående skole (7. mars 2004) Innholdsfortegnelse 1. Introduksjon...2 1.1.

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

MySQL. Historikk. Nedlasting og installasjon

MySQL. Historikk. Nedlasting og installasjon 1 MySQL MySQL kan lastes ned gratis fra Internett (dev.mysql.com/doc). Vi forklarer hvordan man laster ned og installerer verktøyet, og også hvordan man kommer i gang med å lage databaser i MySQL. Historikk

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

Verdier, variabler og forms

Verdier, variabler og forms [Kurssidene] [ ABI - fagsider bibin ] Verdier, variabler og forms Michael Preminger (michaelp@hio.no) 16/01-14 Utvikling av dynamiske nettsteder med PHP og databaser, våren 2014 Litt om forrige times øvelsesoppgaver

Detaljer

Når en bruker skriver sitt navn ("Ole") i et form-element med name="fornavn" som attributt. klikker på submit-knappen

Når en bruker skriver sitt navn (Ole) i et form-element med name=fornavn som attributt. klikker på submit-knappen Når en bruker skriver sitt navn ("Ole") i et form-element med name="fornavn" som attributt klikker på submit-knappen [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hio.no) 09/09-16...

Detaljer

Et forsøk på definisjon. Eksempel 1

Et forsøk på definisjon. Eksempel 1 Et forsøk på definisjon [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michael.preminger@hioa.no) 19/08-15 Engelsklignende språk, med rigid syntaks, som kan brukes til å skrive instruksjoner

Detaljer

Innføring i bruk av CGI4VB

Innføring i bruk av CGI4VB Innføring i bruk av CGI4VB Her kommer en enkel innføring i bruk av modulen CGI4VB som kan benyttes for å lage CGI programmer i Visual Basic. CGI er en forkortelse for Common Gateway Interface den kommunikasjonsprotokollen

Detaljer

Innstallasjon og oppsett av Wordpress

Innstallasjon og oppsett av Wordpress Del 1 - Installasjon og oppsett Innstallasjon og oppsett av Wordpress Wordpress har blitt en veldig populær publiseringsplattform for websider. Uten særlige tekniske ferdigheter kan man sette opp profesjonelle

Detaljer

Kapittel 11. Databasesikkerhet

Kapittel 11. Databasesikkerhet Kapittel 11 Databasesikkerhet Læringsmål: SQL-injection er en alvorlig sikkerhetsmessig trussel i webløsninger i dag. Etter å ha jobbet med dette kapittelet skal du forstå hvordan SQL-injection-angrep

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

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive,

som blanker skjermen (clear screen). Du får en oversikt over alle kommandoene ved å skrive, 1. Last ned og installer XAMPP. 2. Sjekk at alt fungerer. 3. MySQL. Vi begynner med databaseserveren, MySQL. Gå til DOS klarmelding eller ledetekst (finnes under tilbehør på startmenyen om du ikke som

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

Web fundamentals. Web design. Frontend vs. Backend 17.01.2008. Webdesign 17. januar 2008 3. Monica Strand

Web fundamentals. Web design. Frontend vs. Backend 17.01.2008. Webdesign 17. januar 2008 3. Monica Strand Web fundamentals Webdesign 17. januar 2008 Monica Strand Webdesign 17. januar 2008 1 Web design Fagområdet Web design inneholder flere disipliner Grafisk design Informasjonsdesign Brukergrensesnittdesign

Detaljer

MySQL-database, php. Innhold. 8 MySQL-database, php. 8.1 Databasen MySQL

MySQL-database, php. Innhold. 8 MySQL-database, php. 8.1 Databasen MySQL Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Helge Hafting 16.10.2007 Lærestoffet er utviklet for faget LV476D/LN476D Linux systemdrift Innhold 8 1 8.1 Databasen MySQL.............................

Detaljer

Et forsøk på definisjon. Eksempel 1

Et forsøk på definisjon. Eksempel 1 [Kurssidene] [ ABI - fagsider bibin ] Introduksjon Michael Preminger (michael.preminger@hioa.no) 13/12-13 I denne forelesningen: Utvikling av dynamiske nettsteder med PHP og databaser, våren 2014 Motivasjon:

Detaljer

Et forsøk på definisjon

Et forsøk på definisjon Et forsøk på definisjon [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hio.no) 18/08-17 Engelsklignende språk, med rigid syntaks, som kan brukes til å skrive instruksjoner (eksempel

Detaljer

SVARFORSLAG : Eksamen i IBE102 Webutvikling Våren 2017.

SVARFORSLAG : Eksamen i IBE102 Webutvikling Våren 2017. Avdeling for Logistikk SVARFORSLAG : Eksamen i IBE102 Webutvikling Våren 2017. Eksamensdag: 5. mai 2017 Tid: 9-13. Faglærer/tlf: Ketil Danielsen Hjelpemidler: Ingen. Antall sider, inkl. forsiden: 6 Målform:

Detaljer

Intro til WWW, HTML5 og CSS

Intro til WWW, HTML5 og CSS Intro til WWW, HTML5 og CSS Håkon Tolsby 20.08.2015 Håkon Tolsby 1 World Wide Web Webserver: Programvare som distribuerer websider og/eller maskin hvor programmet kjører Webbrowser (nettleser): Program

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

InfoRed Publisering. - produktbeskrivelse. TalkPool WebServices Postboks Åneby

InfoRed Publisering. - produktbeskrivelse.  TalkPool WebServices Postboks Åneby InfoRed Publisering - produktbeskrivelse www.talkpool.no TalkPool WebServices Postboks 90 1484 Åneby InfoRed Produktbeskrivelse 2 Sammendrag InfoRed Publisering er produktet for å administrere en hel informasjonstjeneste,

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 Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Verdier, variabler og forms Michael Preminger (michaelp@hio.no) 30/08-06 Et program kan ha mange variabler, og alle trenger

Detaljer

Øvingsforelesning 1 Python (TDT4110)

Øvingsforelesning 1 Python (TDT4110) Øvingsforelesning 1 Python (TDT4110) Introduksjon, Kalkulasjoner Ole-Magnus Pedersen Oversikt Praktisk Info Repetisjon fra sist Oppgaver for øving 2 2 Praktisk Info Last opp øvinger på Blackboard før godkjenning

Detaljer

INF1050-php-2. Databasenavn. Institutt for informatikk Gerhard Skagestein 23. februar /~brukernavn/ maskinnavn PHP. Internet Explorer, Opera...

INF1050-php-2. Databasenavn. Institutt for informatikk Gerhard Skagestein 23. februar /~brukernavn/ maskinnavn PHP. Internet Explorer, Opera... Webformularer, PHP og databaser et crash-kurs Jfr. Fra kjernen og ut, fra skallet og inn Appendix B (ny versjon pr. 22. februar 2005 oppdatert mhp. XHTML) INF1050-php-1 Hva skal applikasjonsprogrammet

Detaljer

EKSAMEN DATABASER OG WEB Et maskinskrevet notat på maksimalt 2 A4-sider, satt med enkel linjeavstand og skriftstørrelse 12 (eller større).

EKSAMEN DATABASER OG WEB Et maskinskrevet notat på maksimalt 2 A4-sider, satt med enkel linjeavstand og skriftstørrelse 12 (eller større). EKSAMEN 6065 002 DATABASER OG WEB 11.05.2016 Tid: 4 timer (9-13) Målform: Sidetall: Hjelpemidler: Merknader: Vedlegg: Bokmål/Nynorsk 5 (inkludert denne) Et maskinskrevet notat på maksimalt 2 A4-sider,

Detaljer

Innhold. Innledning... 13

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

Detaljer

P L A N I A 8 S Y S T E M K R A V PLANIA 8 SYSTEM KRAV. Plania 8 Systemkrav.docx 27.04.2015 1 av 8

P L A N I A 8 S Y S T E M K R A V PLANIA 8 SYSTEM KRAV. Plania 8 Systemkrav.docx 27.04.2015 1 av 8 PLANIA 8 SYSTEM KRAV Plania 8 Systemkrav.docx 27.04.2015 1 av 8 INNHOLD 1 INNLEDNING... 1-3 1.1 Generell beskrivelse... 1-3 1.1.1 Plania DESKTOP og Plania WEB... 1-3 2 SYSTEMKRAV... 2-4 2.1 Krav til ulike

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 Utvikling av dynamiske nettsteder med PHP og databaser, høsten 2006 Introduksjon Michael Preminger (michaelp@hio.no) 23/08-06 I denne forelesningen: Motivasjon: Hvorfor vi lærer å programmere

Detaljer

Kjøre Wordpress på OSX

Kjøre Wordpress på OSX Kjøre Wordpress på OSX Alt etter hva du ønsker å bruke Webserveren til er det flere måter å gjøre dette på. Ønsker du kun en side som skal dele sider du lager manuelt, med PHP, GD etc eller med server

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

Aritmetiske operasjoner. Litt om forrige times øvelsesoppgaver

Aritmetiske operasjoner. Litt om forrige times øvelsesoppgaver Aritmetiske operasjoner Numeriske variabler (som har en tallverdi) kan brukes i aritmetiske operasjoner Variablene $pris, $maaneder og $gebyr ovenfor er numeriske. [Kurssidene] [ ABI - fagsider bibin ]

Detaljer

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus Kategorisering av programmeringsspråk? Deklarativ vs. imperativ Lav nivå vs. høy nivå Kompilert vs. tolket

Detaljer

Sikkerhet og tilgangskontroll i RDBMS-er

Sikkerhet og tilgangskontroll i RDBMS-er Sikkerhet og tilgangskontroll i RDBMS-er IN2090 14. nov 2018 Mathias Stang 1 Agenda Modeller for tilgangskontroll Brukere og roller i RDBMS-er GRANT og REVOKE SQL Injections 2 Hovedmål med databasesikkerhet

Detaljer

En bedre verden med AJAX

En bedre verden med AJAX En bedre verden med AJAX Frode Eika Sandnes Hva er AJAX Har ikke noe med rengjøringsmidler å gjøre AJAX er et (morsomt) akronym Asynchronous Javascript And XML Henskikt: lage interaktive webapplikasjoner

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 PHP og databaser IV Eksempel 1: koden for nedtrekksmenyen (kopi av eksempel 3 fra uke 43) Michael

Detaljer

SQL og Mengdelære. Oracle, MySQL, Access, bruker forskjellige syntaks.

SQL og Mengdelære. Oracle, MySQL, Access, bruker forskjellige syntaks. SQL og Mengdelære Oracle, MySQL, Access, bruker forskjellige syntaks. Kan vi beskrive, hva SQL er og hva man kan gjøre med SQL, uavhengig av konkret syntaks!!! Hvilke universale formelle språk har vi til

Detaljer

Et forsøk på definisjon

Et forsøk på definisjon Et forsøk på definisjon [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hio.no) 21/08-16 Engelsklignende språk, med rigid syntaks, som kan brukes til å skrive instruksjoner (eksempel

Detaljer

6107 Operativsystemer og nettverk

6107 Operativsystemer og nettverk 6107 Operativsystemer og nettverk Labøving 5 Transportlaget: porter, forbindelser og pakkeformater Introduksjon I denne øvingen skal du studere TCP-protokollen og hvordan TCP etablerer og lukker forbindelser

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

Systemarkitektur. Webformularer, PHP og databaser et crash-kurs. Hva skal applikasjonsprogrammet gjøre? PHP

Systemarkitektur. Webformularer, PHP og databaser et crash-kurs. Hva skal applikasjonsprogrammet gjøre? PHP Systemarkitektur Virkeligheten (interesseområdet) Webformularer, PHP og databaser et crash-kurs Dynamisk nettside bygges evt. opp på grunnlag av spørring mot databasen Jfr. Fra kjernen og ut, fra skallet

Detaljer

Webformularer, PHP og databaser et crash-kurs

Webformularer, PHP og databaser et crash-kurs Webformularer, PHP og databaser et crash-kurs Jfr. Fra kjernen og ut, fra skallet og inn Appendix B INF1050-php-1 Systemarkitektur Virkeligheten (interesseområdet) Dynamisk nettside bygges evt. opp på

Detaljer

Læringsmål og pensum. https://www.youtube.com/watch? v=nkiu9yen5nc

Læringsmål og pensum. https://www.youtube.com/watch? v=nkiu9yen5nc 1 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python Professor Alf Inge Wang 2 https://www.youtube.com/watch? v=nkiu9yen5nc 3 Læringsmål og pensum Mål Lære om

Detaljer

Bruk av NetBeans i JSP-delen av Web-applikasjoner med JSP og JSF

Bruk av NetBeans i JSP-delen av Web-applikasjoner med JSP og JSF Bruk av NetBeans i JSP-delen av Web-applikasjoner med JSP og JSF Else Lervik, august 2010 (Av hensyn til JSF-delen av kurset anbefaler vi at du sørger for å ha NetBeans-versjon 6.9.) I den grad denne veiledningen

Detaljer

Introduksjon til programmering og programmeringsspråk

Introduksjon til programmering og programmeringsspråk Introduksjon til programmering og programmeringsspråk Henrik Lieng Høgskolen i Oslo og Akershus https://code.org/ Veldig høy-nivå programmering med Scratch End-user programming Overtone, Tidal, etc., bygger

Detaljer

TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python

TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python TDT4110 Informasjonsteknologi, grunnkurs Uke 35 Introduksjon til programmering i Python Professor Guttorm Sindre Institutt for datateknikk og informasjonsvitenskap Læringsmål og pensum Mål Vite hva et

Detaljer

Kapittel 1. Kom i gang med PHP

Kapittel 1. Kom i gang med PHP Kapittel 1 Kom i gang med PHP Læringsmål: Dette kapittelet vil fungere som en enkel oppstartsguide for å komme i gang med PHP. Du vil få lære om historien bak PHP installasjon av nødvendig programvare

Detaljer

Huldt & Lillevik Ansattportal. Installere systemet

Huldt & Lillevik Ansattportal. Installere systemet Huldt & Lillevik Ansattportal Installere systemet Innholdsfortegnelse Innholdsfortegnelse Installere Ansattportal... 3 Tekniske krav (Windows og web)... 3 Servere og nettverk... 3.NET Rammeverk 3.5 må

Detaljer

NCE TOURISM FJORD NORWAY. FJORDNETT INTERNETTFORUM 2012 Bergen, 12./13. juni 2012

NCE TOURISM FJORD NORWAY. FJORDNETT INTERNETTFORUM 2012 Bergen, 12./13. juni 2012 NCE TOURISM FJORD NORWAY FJORDNETT INTERNETTFORUM 2012 Bergen, 12./13. juni 2012 HACKERS HOUR Hvor langt kommer vi med FjordNett rammeverket? Html CSS Javascript Hva er bestanddelene av en nettside? Html

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

1. Installasjon av web-tjener og teori

1. Installasjon av web-tjener og teori Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Installasjon av web-tjener og teori Tomas Holt 30.1.2006 Lærestoffet er utviklet for faget LV193D Web-programmering med JSP 1. Installasjon

Detaljer

INTRODUKSJON HVEM ER DETTE FAGET FOR?...

INTRODUKSJON HVEM ER DETTE FAGET FOR?... Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag Kom i gang med PHP Svend Andreas Horgen Lærestoffet er utviklet for faget IINI3003 Webprogrammering med PHP Resymé: Denne leksjonen skal

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

Universitetet i Oslo Institutt for informatikk. avmystifisert i INF102. Kvile

Universitetet i Oslo Institutt for informatikk. avmystifisert i INF102. Kvile Universitetet i Oslo Institutt for informatikk Surfing avmystifisert i INF102 Kvile kvile@mail.com Vår 2003 Innhold 1 Vanlig surfing med GET-metoden 4 1.1 Spørringen fra klienten.........................

Detaljer

}?> <!DOCTYPE... <html xmlns="http://www.w3.org/1999/xhtml"> <head>... </head> <body> <p>nå skal vi printe hallo:</p> <?php //funksjonskall

}?> <!DOCTYPE... <html xmlns=http://www.w3.org/1999/xhtml> <head>... </head> <body> <p>nå skal vi printe hallo:</p> <?php //funksjonskall Hver gang funksjonen printhallo kalles utføres instruksjonene spesifisert i den. [Kurssidene] [ ABI - fagsider bibin ] //funksjonskall printhallo(); //enda en gang printhallo(); Michael Preminger (michaelp@hio.no)

Detaljer

10. ASP og SQL Innledning Recordset-objektet. Innhold. Referanse til læreboka Kapittel Se detaljer nedenfor.

10. ASP og SQL Innledning Recordset-objektet. Innhold. Referanse til læreboka Kapittel Se detaljer nedenfor. Else Lervik 29.03.2004 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for faget LV192D Web-programmering med ASP 10. Resymé: Vi begynner med å inspisere Recordset-objektet. Deretter

Detaljer

Kap 3: Anvendelser av Internett

Kap 3: Anvendelser av Internett Kap 3: Anvendelser av Internett Hva er egentlig Internett? Skal studere de vanligste protokollene: Web E-post DNS Ansvarsområder og prosess-skille 1 Hva er egentlig Internett? Infrastruktur Tjenester Roller

Detaljer

Web-programmering med JSP Løsningsforslag leksjon 3

Web-programmering med JSP Løsningsforslag leksjon 3 Web-programmering med JSP Løsningsforslag leksjon 3 Oppgave 1 Denne siden viser inneholder en oversikt over biler:

Detaljer

JavaServer Pages (JSP)

JavaServer Pages (JSP) JavaServer Pages (JSP) Forelesning 1 Klient/tjener-systemer, installasjon av tjener, og intro til JSP. Statisk Web = HTML Overskrift

Detaljer

Webprogrammering høsten 2017

Webprogrammering høsten 2017 for-løkker - innføring og eksempel Webprogrammering høsten 2017 for-løkker gjentar instruksjonene et gitt antall ganger. for-løkkens oppbygging: [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger

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

$i < 5 forsettelsesbetingelsen - false => Løkken slutter.

$i < 5 forsettelsesbetingelsen - false => Løkken slutter. for-løkker gjentar instruksjonene et gitt antall ganger. for-løkkens oppbygging: [Kurssidene] [ ABI - fagsider bibin ] Michael Preminger (michaelp@hio.no) 17/09-18 Byggestein så langt: variabler, betinget

Detaljer

Systemarkitektur. Webformularer, PHP og databaser et crash-kurs. Hva skal applikasjonsprogrammet gjøre? PHP

Systemarkitektur. Webformularer, PHP og databaser et crash-kurs. Hva skal applikasjonsprogrammet gjøre? PHP Systemarkitektur Virkeligheten (interesseområdet) Webformularer, PHP og databaser et crash-kurs Dynamisk nettside bygges evt. opp på grunnlag av spørring mot databasen Jfr. Fra kjernen og ut, fra skallet

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

Brukerveiledning for Intelligent Converters MySQL Migration Toolkit IKA Trøndelag IKS 2012

Brukerveiledning for Intelligent Converters MySQL Migration Toolkit IKA Trøndelag IKS 2012 Om verktøyet Formålet med dette verktøyet er å migrere informasjon fra en databasevariant til en annen, i denne veiledningen fra Oracle til MySQL. Dette gjøres som første ledd i en avleveringsprosess.

Detaljer

Grunnleggende om websider og HTML-kode

Grunnleggende om websider og HTML-kode Grunnleggende om websider og HTML-kode Html er et språk / en standard som brukes for å gi instrukser til nettlesere om hvordan ulike elementer på en webside skal fortolkes og presenteres for en sluttbruker.

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang 2 TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python Professor Alf Inge Wang 3 https://www.youtube.com/watch? v=nkiu9yen5nc 4 Læringsmål og pensum Mål Lære om

Detaljer

<?php. count tar en array som argument, og returnerer et tall som uttrykker antallet innførsler i arrayen.

<?php. count tar en array som argument, og returnerer et tall som uttrykker antallet innførsler i arrayen. Hver gang funksjonen printhallo kalles utføres instruksjonene spesifisert i den. [Kurssidene] [ ABI - fagsider bibin ] Webprogrammering høsten 2015 //funksjonskall printhallo(); //enda en gang printhallo();

Detaljer

Installasjon av webtjener

Installasjon av webtjener Installasjon av webtjener Installasjon/Konfigurering Installasjon av webtjener Oppsett av kataloger som skal være tilgjengelig på web Spesifisering av aksesskontroll - i henhold til sikkerhetspolitikk

Detaljer

Introduksjon til beslutningsstrukturer

Introduksjon til beslutningsstrukturer [Kurssidene] [ ABI - fagsider bibin ] Utvikling av dynamiske nettsteder med PHP og databaser, våren 2014 Introduksjon til beslutningsstrukturer Michael Preminger (michaelp@hio.no) 24/01-14 Repitisjon fra

Detaljer

Web-programmering med JSP Løsningsforslag leksjon 4

Web-programmering med JSP Løsningsforslag leksjon 4 Web-programmering med JSP Løsningsforslag leksjon 4 Oppgave 1 String adr = request.getremoteaddr() ; out.println(adr); Oppgave 2 Først her kommer HTML-filen med JavaScript et vi lagde i forrige leksjon.

Detaljer

>>12 Arbeide med MySQL

>>12 Arbeide med MySQL 106 Snarveien til MySQL og Dreamweaver CS5 >>12 Arbeide med MySQL I dette kapittelet vil du lære hvordan du installerer MySQL Workbench å opprette prosjekter å lage tabeller hvordan du ser på innholdet

Detaljer

1.2 Dynamiske, tjenerbaserte og interaktive nettsteder

1.2 Dynamiske, tjenerbaserte og interaktive nettsteder Kapittel 1 Innledning og motivasjon 1.1 Innledning Mye av dagens virksomhet på WWW, alt fra nettbanker til bibliotekkataloger, er dynamisk, interaktiv og databasestyrt. Alle som leser denne boken har brukt

Detaljer

Denne rapporten er beregnet for dataansvarlig på Grefsenhjemmet, den som skal installere, vedlikeholde og modifisere systemet.

Denne rapporten er beregnet for dataansvarlig på Grefsenhjemmet, den som skal installere, vedlikeholde og modifisere systemet. Produktrapport Forord Denne rapporten er beregnet for dataansvarlig på Grefsenhjemmet, den som skal installere, vedlikeholde og modifisere systemet. Dataansvarlig eller supporter trenger informasjon om

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

1. SQL datadefinisjon og manipulering

1. SQL datadefinisjon og manipulering Avdeling for informatikk og e-læring, Høgskolen i Sør-Trøndelag SQL datadefinisjon og manipulering Tore Mallaug 7.10.2008 Lærestoffet er utviklet for faget Databaser 1. SQL datadefinisjon og manipulering

Detaljer

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

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: Varighet: Emnekode: Emnenavn: Klasse(r): 3. desember 2009 0900-1100 LO348D/LN349D Web-applikasjoner med

Detaljer

6105 Windows Server og datanett

6105 Windows Server og datanett 6105 Windows Server og datanett I denne øvingen skal du konfigurere Windows Firewall på Windows Server og teste at brannmuren fungerer som forventet. Læringsmål: Kunne konfigurere Windows Firewall with

Detaljer

Databaser kort intro. Tom Heine Nätt

Databaser kort intro. Tom Heine Nätt Databaser kort intro Tom Heine Nätt Agenda Hva er en database? Hva er SQL? Hente ut data fra en database SELECT Behandle data i en database (kort) CREATE TABLE, INSERT, UPDATE, DELETE Databaser med flere

Detaljer

Eksamen i IBE102 Webutvikling Våren 2017.

Eksamen i IBE102 Webutvikling Våren 2017. Avdeling for Logistikk Eksamen i IBE102 Webutvikling Våren 2017. Eksamensdag: 5. mai 2017 Tid: 9-13. Faglærer/tlf: Ketil Danielsen, 90619434 Hjelpemidler: Ingen. Antall sider, inkl. forsiden: 6 Målform:

Detaljer

Eksamen i Internetteknologi Fagkode: ITE1526

Eksamen i Internetteknologi Fagkode: ITE1526 Høgskolen i Narvik Side 1 av 5 Eksamen i Internetteknologi Fagkode: ITE1526 Tid: Torsdag 15.06.06, 9:00-12:00 Tillatte hjelpemidler: Alle trykte og skrevne hjelpemidler tillatt. Eksamen består av 1 oppgave

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

Innhold Forst a program

Innhold Forst a program Innhold 1 Forstå program 1 1.1 Kom i gang med Java....................... 1 Lese programkode........................ 2 Kompilere og utføre Java-program............... 4 1.2 Den programmerbare maskinen.................

Detaljer

Introduksjon til fagfeltet

Introduksjon til fagfeltet LC238D http://www.aitel.hist.no/fag/_dmdb/ Introduksjon til fagfeltet Datafiler side 2 Databasesystemer side 3-5 Databasearkitektur ANSI/SPARC side 6-7 Datamodeller side 8 Flerbruker databasesystem side

Detaljer

Innledende Analyse Del 1: Prosjektbeskrivelse (versjon 2)

Innledende Analyse Del 1: Prosjektbeskrivelse (versjon 2) Innledende Analyse Del 1: Prosjektbeskrivelse (versjon 2) Iskra Fadzan og Arianna Kyriacou 25.mars 2004 Innhold 1 Hovedmål 2 2 Mål 2 3 Bakgrunn 3 4 Krav 4 1 1 Hovedmål I dette prosjektet skal vi se nærmere

Detaljer

Webformularer, PHP og databaser

Webformularer, PHP og databaser Appendix B til Systemutvikling fra kjernen og ut, fra skallet og inn Webformularer, PHP og databaser Gerhard Skagestein, januar 2003 oppdatert 1. april 2003, 7. januar 2004 B Webformularer, PHP og databaser...b-3

Detaljer