1 Organisering av kode (Kapittel 5). 2 Mål ● Forstå inkludering er og hvilken gevinst det gir ● Lære å utvikle egne funksjoner ● Forstå variablenes virkemåte.

Slides:



Advertisements
Liknende presentasjoner
Skriv om slik at setningene betyr omtrent det samme
Advertisements

Trykk på mus eller tastatur for neste bilde…
Avhengigheter og installering
Antalis-HQ BRUKERVEILEDNING FOR BESTILLINGER. Antalis, Europas ledende distributør av papir, emballasjeløsninger og dekor & display produkter, presenterer.
Høgskolen i Oslo Webprogrammering Tilstandsbevaring Sessions og cookies.
Hvordan etablere nettbutikk med GoOnline Commerce
GoOnline publisering Hvordan komme i gang med GoOnline. Denne presentasjonen tar deg steg for steg gjennom oppsett av nettsted med bruk av GoOnline Proffesional.
22 tips for den faglitterære forfatteren
Webprogrammering (LO113A) 1 Kom i gang med PHP. Webprogrammering (LO113A) 2 Mål  Installere Apache og PHP  Konfigurasjon av Apache og PHP  Forstå samspillet.
Filbehandling (Kapittel 8)
Enkel brukerhåndbok for NFUs redaktører Versjon 1, 3. februar 2013.
Brukerveiledning til NHOs PowerPoint-mal
Elektroniske verktøy Diakonhjemmet nov Verktøyene Disse verktøyene blir brukt på Diakonhjemmet •Epost •PPS •Studentweb •Its learning.
Høgskolen i Oslo Webprogrammering Grunnleggende PHP.
JSP presentasjon Arild Strømhylden NTNU 26 June 2014.
Programmering i ActionScript - hva er det, og hvordan undervise?
Miljøknaggsystemet/- Solnør Gaard produkter AS på internett
Java database persistence framework.  SELECT by FROM postnr AS p WHERE ( SELECT DISTINCT postnr FROM addr AS a WHERE user.adrId = a.Id ) = p.postnr;
Uke 10 - Sortering, og hvordan lage en klasse for et klassebibliotek 21 okt. 2003, Arne Maus Inst. for informatikk, UiO.
Kontrollstrukturer (Kapittel 3)
Rettigheter og plikter i arbeidslivet
Høgskolen i Oslo Webprogrammering Introduksjon til Java-scripting.
Objektorientert programmering i PHP del 2
1 E-Site 3.2 Webmaster introkurs. 2 Innhold •Generell informasjon om E-Site •Funksjoner •Adminsider.
EcmaScript 5 Arrays Demonstrasjon av ny funksjonalitet støttet i IE 9.
MAL MEMORYOPPGAVER Eksempel fra kurset! 1.Rød 2.Svart 3.Black 4.Grønn 5.Green 6.Gul 7.Yellow 8.Hvit 9.White 10.Rosa 11.Pink 12.Lilla 13.Purple 14.Blå 15.Blue.
IS-102 Klassedefinisjoner
#include Ligner litt på import i java. Setter inn hele fila stdio.h i programteksten. Definerer en del io funksjoner slik at signaturen er kjent. I dette.
1 (Helst) alle, men minst 1 i gruppa oppretter følgende: Personlig hjemmeside (indexside) Lenkeside / Generell faglig ressurside (Side med generelle allmennlærerfaglig.
Databasehåndtering med MySQL
Jæger: Robuste og sikre systemer INF150 Programmering mandag 2.10 Default values – standardverdier ved oppstart MER OM: Sub-prosedyrer og sub-funksjoner.
Gjennomgang av prøven Tidsangivelse. Prøven deles ut Vi fyller ut øvelsen sammen.
Empiriske metoder Oppgaveanalyse, observasjon
Wikipedia Wikipedia er leksikon på Internett. Wikipedia blir utgitt av den ideelle organisasjonen Wikimedia Foundation. Wikipedia har over 18 millioner.
HVORDAN SLETTER DU DIN FACEBOOKKONTO ?
Kapittel 4 oppgave i Sett inn preposisjoner eller adverb som passer.
Kapittel 1, oppgave b) å kaste loss å seile uvær (n) kuling (m)
Mandag 8. November Powerpoint..
1 Arrayer og form(ularer) (Kapittel 4). 2 Mål  Forstå assosiative og superglobale arrays  Kunne behandle webformularer (forms)  Kjenne forskjellen.
Høgskolen i Oslo Webprogrammering Filbehandling i PHP.
Høgskolen i Oslo Web-programmering Feilhåndtering i PHP.
Intro til php - Uke3.2 - Ronny Mandal Introduksjon til PHP.
Høgskolen i Oslo Webprogrammering Ajax og PHP. I dag l Hvordan få en bedre brukeropplevelse via Ajax- script l Gjennomgang av kode l Oppgaveløsning på.
Høgskolen i Oslo Webprogrammering Java-scripting 2 Klientvalidering.
Dynamiske nettsider PHP Del 4 – Eksterne datakilder.
Dynamiske nettsider PHP Del 2 – Kontrollstrukturer.
Dynamiske nettsider PHP Del 1 – variable. PHP  PHP (Personal Home Page)  Fritt tilgjengelig programmeringsspråk  åpen kildekode  Plattformuavhengig.
Figur 1 Behov. Figur 2 Behov Figur 3 Prioritering/ressursinnsats.
Andre funksjoner. Her kommer en beskrivelse av søkefunksjoner, knapper og annen funksjonalitet. 2.
1 Hvordan lage websider Med Interkodex AS. 2 Innledende Å lage profesjonelle webløsninger kan gjøres veldig enkelt og rimelig. Du trenger ikke kunne webdesign.
Hvordan kan foreldre bruke de vangligste funksjonene i Itslearning.com
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
CreateProduct En web basert løsning for vedlikehold av produkter, strukturer, memo og bilder i Visma Business eller Visma Global. Passer perfekt til henting.
Å kjøre bil og å stå i bilkø
1 Java Database Connectivity (JDBC) Norvald H. Ryeng
Harald Kaasa Hammer: Manual til redigering av nettstedet Først forklares hva de ulike elementene på nettsidene betyr. Så ser vi på mappene.
Web-grensesnitt Øyvind A. Bratne - April 2004.
Kapittel 1, oppgave i) Sett inn preposisjoner eller adverb som passer.
Ekstra mange tips til Oblig 3! 12. mars 2007 Are Magnus Bruaset og Arild Waaler Inst. for informatikk, UiO.
Utvikling av et web-basert bestillingssystem for bøker og en tilhørende database for uthenting av statistikk. I tillegg et nytt CSS-basert design for bibliotekets.
Klasse: 2HKI Student: Bertil Gjerstad Oppgnr: 25E
Kapittel 6 Kveldsmat hos familien Dalilah.
Upload av bildefiler Utdrag fra ImageIn Ved Kirsten Klæbo Tirsdag 25/11-03.
Inf1000 (Uke 5) Arrayer, filer og tekst
Lions hjemmeside Slik legger du som hjemmeside- redaktør ut en enkel artikkel Medlemsregistret.
Se side 8-9. Kapittel 1: HTML5 og CSS Hyper Text Markup Language 1990-årene: Tim Berners-Lee ville strukturere tekster og lage klikkbare henvisninger på.
IS-208 Dynamic Web Page Development. Utvikle et web sted Studiehandboka IS-208 Læringsmål: Lære og forstå hvordan et web-sted kan være dynamisk, hvordan.
Kom i gang med Python Pål Hellesnes SYSTEMUTVIKLER
Utskrift av presentasjonen:

1 Organisering av kode (Kapittel 5)

2 Mål ● Forstå inkludering er og hvilken gevinst det gir ● Lære å utvikle egne funksjoner ● Forstå variablenes virkemåte

3 Hva er inkludering? ● Vi bruker inkludering av filer hovedsaklig for: – Gjennbruk av kode – Enklere vedlikehold ● Vanlig å dele opp ulike deler av et script i isolerte deler (topp, bunn, meny) ● Inkludering gjøres med funksjonene: – include, require, include_once og require_once

4 Eksempel på inkludering main.php topp.html meny.php bunn.html

5 Legg filene dine i et hierarki ● Du står helt fritt til å velge filstruktur selv ● Finn deg en struktur du syns er fornuftig og liker og hold deg til den

6 Eksempel på hierarki for et enkelt nettsted / config.php - Konfigurasjons-script index.php - Hovedside include/ topp.inc - Topptekst bunn.inc - Bunntekst meny.inc - Meny nyheter.html produkter.html bestilling/ index.php side2.php omoss.html kontaktskjema.html kontaktskjema.php

7 / config/ - Konfigurasjonfiler default.ini - Standard konfigurasjon docs/ - Dokumentasjon lib/ - Bibliotek-kode sql/ - Database script www/ - Rotkatalog for script css/ - Stilark js/ - Javascript images/ - Bilder index.php - Hovedside for applikasjonen README - Kort om applikasjonen INSTALL - Installasjonsveiledning ChangeLog - Endringslogg (dagbok) Eksempel på struktur for en webapplikasjon

8 Eksempel på inkludering variable.php: <?php $frukt = “pære”; $farge = “grønn”; ?> test.php: <?php echo “En $frukt er $farge”; // En er include “variabler.php”; echo “En $frukt er $farge”; // En pære er grønn ?>

9 Typisk bruk av inkludering include/topp.inc: Dagbladet.no include/bunn.inc: nyheter.php: Hus seilte 700 meter - og grunnstøtte ute i fjorden. Fikk berget hunden og katten.

10 Egendefinerte funksjoner ● Navngitt samling av kode ● Brukes til å organisere og gjennbruke kode ved at de kan kjøres flere ganger fra ulike steder ● Gjør scriptet ditt både mindre og enklere og forstå ● Uten funksjoner er det tilnærmet umulig å skrive kode som kan vedlikeholdes på en enkel måte

11 Egendefinerte funksjoner function $a $b $c $resulta t ● En funksjoner tar imot ingen, en eller flere argumenter og kan produsere et resultat function $a $b $c function $resulta t

12 Opprette egendefinerte funksjoner ● Deklareres med nøkkelordet function ● Må ha et unikt navn ● Bruk store bokstaver eller understrek for å skille ord ● Trenger ikke være deklarert før den taes i bruk <?php function navn() { // kropp } function navn($arg1, arg2) { // kropp } function legg_sammen($a, $b) { } function leggSammen($a, $b) { } ?>

13 Eksempel på egendefinert funksjon <?php function add($a, $b) { return $a + $b; } $total = add(2, 2); echo $total; // 4 ?> <?php $total = add(2, 2); echo $total; // 4 function add($a, $b) { return $a + $b; } ?>

14 Eksempel på funksjon for datovelger <?php function datovelger($navn, $fra, $til, $valg) { $valg = getdate($valg); $dag = " \n"; for($i=1; $i<=31; $i++) { $dag.= "\t $i \n"; } $dag.= " \n"; $mnd = " \n"; for($i=1; $i<=12; $i++) { $mnd.= "\t $i \n"; } $mnd.= " \n"; $aar = " \n"; for($i=$fra; $i<=$til; $i++) { $aar.= "\t $i \n"; } $aar.= " \n"; return $dag.$mnd.$aar; } echo datovelger('test', 1970, 2006, time()); ?>

15 Inkludering og funksjoner ● Etterhvert som du lager funksjoner er det vanlig å samle de i et “funksjonsbibliotek” som kan inkluderes i scriptene dine functions.php: <?php function sum($a, $b) { return $a + $b; } function difference($a, $b) { return $a - $b; } ?> index.php: <?php include 'functions.php'; echo sum(2, 2); // 2 echo difference(4, 2); // 2 ?>

16 Variablenes virkeområde og levetid ● Virkeområde (variable scope) – Konteksten en variabel er definert i ● Globale variabler (global scope) – Normalt eksisterer variabler så lenge scriptet kjører ● Lokale variabler (local scope) – En variabel opprettet i en funksjon eksisterer bare i funksjonen og blir slettet når funksjonen er utført

17 Eksempeler på virkemåte ● Globale variabler vil også være definert i alle inkluderte filer <?php $a = 1; // global variabel include “fil.php”; function test() { echo $a; // lokal variabel } test(); // “” ?> fil.php: <?php echo $a; // 1 ?>

18 global ● Brukes for å få tilgang til variabler som er eksisterer utenfor funksjonen ● Merk: Konstanter er alltid tilgjengelig i funksjoner <?php $a = 1; $b = 2; function sum() { global $a, $b; $b += $a; } echo $b; // 2 sum(); echo $b; // 3 ?>

19 static ● Brukes til å beholde verdien på variabelen ● Nyttig ved opptelling av verdier <?php function nestePartall() { static $i = 0; $i += 2; return $i; } echo nestePartall(); // 2 echo nestePartall(); // 4 echo nestePartall(); // 6 ?>

20 Valgfrie argumenter ● Argumenter kan tilegnes en standard verdi i signaturen til funksjonen ● Et valgfritt argument kan utelates ved kall på funksjonen ● Alle valgfrie argumenter må ligge på slutten av signaturen <?php function navn($a, $b = 5) { // kropp } navn($arg1); navn($arg1, $arg2); ?>

21 Eksempel på valgfritt argument test.php: <?php function wrap_html_tag($string, $tag = 'b') { return “ $string ”; } $string = “Litt tekst”; echo wrap_html_tag($string); echo wrap_html_tag($string, 'i'); ?> Resultat: Litt tekst

22 Overføring av referanser (pass-by-reference) ● Brukes for å beholde endringer gjort på en variabel i en funksjon <?php function leggTil(&$a, $b) { $a += $b; } $a = 0; leggTil($a, 2); echo $a; // 2 leggTil($a, 2); echo $a; // 4 ?>

23 Eksempel på overføring av referanser <?php function wrap_html_tag(&$string, $tag = 'b') { $string = “ $string ” return $string; } $string = “Litt tekst”; echo wrap_html_tag($string); echo wrap_html_tag($string, 'i'); ?> Resultat: Litt tekst

24 Dynamiske funksjonskall ● En variabel kan brukes som funksjonsnavn ved et funksjonskall ● Tips: Sjekk alltid om funksjonen faktisk eksisterer dersom det er mulighet for at den ikke gjør det <?php function a() { echo “Funksjon A”; } function b() { echo “Funksjon B”; } function c() { echo “Funksjon C”; } $funksjon = $_GET['funksjon']; if(function_exists($funksjon)) { $funksjon(); } else { echo “$funksjon eksisterer ikke”; } ?>