Hovedside

Informasjon
- Videointro
- Presentasjon
- Sagt om boka
- Nytt i 4.utgave
- Bruk av boka
- Innholdsfortegnelse
- Stikkordregister
- Prøvekapittel
- FAQ: spørsmål og svar
- Kjøp boka


Ressurser
- Installasjonshjelp
- Kodesnutter
- Løsninger
- Relevante kurs
- Trykkfeil
- Lenker
- Video


Diverse
- Tilbakemelding
- Diskusjonsforum
- Om forfatteren


 
 

Presentasjon av innholdet

Her er en mer detaljert presentasjon av innholdet i boka "Webprogrammering i PHP".
Merk: Kapittel 14: "Programmererens kokebok" bør du merke deg tidligst mulig, da det kan ha nytte underveis.

Kap 1: Kom i gang, installasjon

I tidligere utgaver av boka har manuell installasjon vært brukt, men fra og med 3.utgave brukes pakkeløsninger. Disse fungerer veldig bra under både Windows, Linux og Mac, og gjør det enkelt og raskt å komme i gang med programmeringen. Sammen med et enkelt kom-i-gang-script forklares viktig teori om hvordan PHP fungerer, og historikken til PHP.

Dette kapittelet er tilgjengelig til nedlasting som prøvekapittel (PDF)

Til toppen

Kap 2 og 3: Grunnleggende programmering og PHP-syntaks

Programmering kan sammenliknes med kokkekunst: Uten ingredienser og hjelpemidler kommer en ikke langt. Selv om dette er en bok i webprogrammering tar de første kapitlene opp generell programmering med variabler og kontrollstrukturer. Med denne basisen vil du lettere kunne forstå og oppøve gode programmeringsferdigheter. Videre i boka vil du lære om matriser (kap 4) og funksjoner (kap 5 og 6). Boka passer derfor godt for nybegynnere som vil lære seg å programmere på en morsom og visuell måte. Kunnskapen er i høyeste grad overførbar til konvensjonelle programmeringsspråk.

De som kan grunnleggende programmering fra før, vil kunne lese fort gjennom disse kapitlene, men bør skumme gjennom for å fange opp syntaksen og særegenheter med PHP. For å lette dette er fargelagte rammer med definisjoner og ting å merke seg, mye brukt.

Eksemplene er rettet mot web og gir en myk introduksjon til hva det innebærer å utvikle i et webmiljø, før mer avanserte tema introduseres senere i boka. PHP har flere særegenheter og en syntaks som er lett å lære. Denne delen peker på ting som en må være observant på for å unngå feil og sikre en god programmeringsskikk med PHP. De som har programmert tidligere, vil derfor også finne disse "lettere" kapitlene nyttige.

Til toppen

Kap 4: Skjemabehandling og assosiative matriser

For å skape interaksjon og dialog er det nødvendig å åpne for automatisert kommunikasjon med brukeren. Behandling av skjema står sentralt, og konkretiseres gjennom en rekke eksempler utover i boka. Introduksjonen av skjema i dette kapittelet forklarer også grundig hva som skjer ved behandling og oversending av skjemainformasjon.

En rekke problemstillinger kan løses elegant ved bruk av assosiative matriser – en interessant og kraftig variant av matriser som passer perfekt i websammenheng.

Til toppen

Kap 5 og 6: Strukturering av kode

Inkludering av filer kan forenkle vedlikeholdet av et nettsted betraktelig. Du vil også kunne spare mye tid på å generalisere oppgaver som går igjen, ved å lage egne funksjoner. Strukturering av kode gjennomgås derfor tidlig gjennom et litt større, illustrerende eksempel.

PHP har også et meget stort bibliotek med innebygde funksjoner, blant annet for behandling av strenger, datoer og matriser. Konkrete problemer kan ofte løses ved å kombinere flere ulike typer av funksjoner, og vi vil derfor øve på å kunne forstå og analysere problemstillinger for slik å kunne finne frem til riktige funksjoner. Oppgaver som å sende e-post fra en nettside, er lett som en lek med PHP – og bruksområdene er mange.

Til toppen

Kap 7: Tilstandsbevaring

I utgangspunktet er HTTP en tilstandsløs protokoll, men det fins flere teknikker for bevaring av informasjon på tvers av forespørsler. Teknikkene som introduseres i kapittelet gir grunnlag for å lage mer avanserte løsninger, som for eksempel en handlekurv for en nettbutikk eller en spørrekonkurranse. Følgende tema gjennomgås med fokus på fordeler, ulemper, praktisk bruk og sikkerhet:

  • spørrestrengen (URL med spørsmålstegn)
  • skjulte elementer (hidden)
  • informasjonskapsler (cookies)
  • sessions

Til toppen

Kap 8, 9 og 10: Filbehandling og databaser

For større nettsteder er lagring av informasjon over tid ofte nøkkelen til suksess. Databaser brukes ofte av nettbutikker som skal tilby informasjon om en rekke produkter, mens filbehandling kan brukes til mindre løsninger som gjestebøker, logging av besøkende og sidetellere. I gjennomgangen legges det vekt på forståelsen av funksjonalitet og praktisk bruk av de ulike teknikkene.

Spørrespråket SQL er sentralt i forbindelse med bruk av databaser. De vanligste mulighetene gjennomgås uten at det stilles krav til forkunnskaper i databaseteori.

PHP har støtte for de aller fleste databasesystemer. På tross av det meget enkle SQLite har vi valgt å bruke MySQL, som er mest utbredt og ofte å finne hos tjenesteleverandørene (ISP). I bruk er forskjellen mellom de ulike databasesystemene minimal, og det er lagt vekt på at stoffet skal forklares generelt nok til å kunne overføres til andre databasesystemer. Både små og større eksempler gjennomgås for å gi en praktisk erfaringsbase og for å illustrere mulige bruksområder.

Til toppen

Kap 11: Sikkerhet

Sikkerhet er et viktig element i forbindelse med webutvikling. Dessverre ser ofte utviklere først og fremst på funksjonalitet og design, og ofrer gjerne sikkerheten uten å være klar over hvilke potensielle sikkerhetshull og farer det medfører. For å oppnå sikre og robuste løsninger er det nødvendig å tenke sikkerhet i alle faser av et utviklingsprosjekt, spesielt i programmeringsfasen. En gylden regel i websammenheng er at en aldri skal stole på inngangsdata fra brukeren, men anta det verste og forberede seg deretter. Med bakgrunn i viktigheten av sikkerhet tar dette kapittelet opp sikkerhetsspørsmål i forbindelse med behandlingen av skjema, bruk av cookies/sessions, filbehandling og databaser. Vi vil fokusere på både teori og praksis knyttet til tema som hacking og autentisering.

Deler av dette kapittelet er tilgjengelig til nedlasting som prøvekapittel (PDF)

Til toppen

Kap 12 og 13: Grafikk og avanserte tema

Det er morsomt å jobbe med grafikk, og med PHP kan du enkelt lage egne script som genererer bilder og grafiske illustrasjoner basert på dialog med brukeren, en database eller en tekstfil.

PHP har også støtte for en rekke avanserte teknologier, men denne læreboka kan dessverre ikke gjennomgå alle. Det gis derimot et innblikk i mulighetene som eksisterer. PHP er virkelig blitt modent gjennom versjon PHP 5:

  • Med PHP 5 er det mye enklere å behandle XML-dokumenter enn det var tidligere.
  • Også støtten for objektorientert tilnærming er kraftig forbedret.
  • Skillet mellom programkode og HTML er viktig. Bruk av såkalte Templates gjør at en grafisk designer og en programmerer kan utvikle et nettsted parallelt uten å tråkke i hverandres områder.
  • SQLite er en databasemotor som kommer integrert i PHP 5. Den er rask og enkel i bruk.
  • Noen fordeler med PEAR introduseres kort.

Til toppen

Kap 14: Programmererens kokebok

En kokk slår opp i sin kokebok for å få hjelp til å matlagingen, uten at det nødvendigvis står i detalj hvordan alt skal løses. Dette kapittelet er ei kokebok. Den har en rekke oppskrifter med korte forklaringer på hvordan kjente problemstillinger kan løses. Du er kokken i programmeringssammenheng. Bruk dette kapittelet når du:

  • Står fast i et konkret problem.
  • Trenger et oppslagsverk.
  • Vil lære nyttige PHP-triks.
  • Vil ha eksempler på kreative, smarte løsninger.
  • Vil gjenoppfriske gammel kunnskap på en rask måte.

Her er et eksempel på en oppskrift. Denne er hentet fra kapittel 14.2.1 på side 383.

14.2.1 Skriv ut på entalls- eller flertallsform

Problem: Du vil summere opp antallet av noe i form av tekst, og vil sikre at riktig flertallsform brukes. Eksempel: «3 dokumenter ble funnet» og «1 dokument ble funnet».

Løsningsstrategi: Finn antallet og skriv ut enten «dokument» eller «dokumenter».

	$antall = 4; //kan også hentes fra database, fil o.l.
	$dokOrd = ($antall==1) ? "dokument" : "dokumenter";
	echo "$antall $dokOrd ble funnet";

Merk: En if-else-struktur kan også brukes, men tar litt mer plass. Denne koden fungerer ikke for ord som har samme entalls- og flertallsform.

Se også: Syntaks for den ternære kondisjonelle operatoren (ramme på side 70).

Til toppen