Download præsentationen
Præsentation er lastning. Vent venligst
Offentliggjort afAugust Villadsen Redigeret for ca. et år siden
1
Program Design – 4 Introduktion til PHP
2
Dagens lektion Hvad er PHP? - og lidt historie Hvordan virker PHP? Grundlæggende PHP Variable Typer Løkker og Selektion Funktioner PHP i aktion Include Forms og URL parametre Cookies Sessions Filer
3
Web-klientWeb-server PHP Script Html-form Sender form data Kalder PHP fortolker Svar Web-browser WWW Svar Server-side afvikling af PHP scripts
4
PHP Historie ”Opfundet” af Rasmus Lerdorf i 1994 Udviklet for at han kunne følge/overvåge besøgende på sit web- site PHP er et ”open-source” produkt PHP var en forkortelse for ”Personal Home Page”, nu er det ”PHP: Hypertext Preprocessor” PHP brugs til form håndtering, fil håndtering og database adgang
5
Fortolkning af PHP scripts PHP processor PHP dokument HTML dokument InputOutput PHP dokumentet indeholder HTML elementer med indlejrede PHP script(s) HTML elementer kopieres blot til output filen PHP scripts fortolkes og kan producere output som sendes til output filen
6
PHP indlejres i HTML PHP scripts kan frit indlejres i HTML dokumenter <?php … ?> PHP dokumenter har fil-extension:.php
7
Eksemple: <!DOCTYPE html PUBLIC "-//w3c//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> idag.php <?php print " Vores første PHP dokument "; print "Idag er : "; print date("l, F jS"); print " "; ?> Copy-mode Interpret-mode (fortolker-mode) Copy-mode Link
8
Output print print ” Vores første PHP dokument ”; echo echo ” Vores første PHP dokument ”; echo ” Vores første”, ” PHP dokument ”,”…”; printf $pris = 9.95; printf(” %4.2f”,$pris); - giver 9.95 Link
9
Sproget - PHP De grundlæggende concepter i PHP som data typer, løkker...
10
Erklæring af variabler Alle variabel navne starter med $ Variable erklæres når de bruges Erklæringer behøver ingen type angivelse $minVariabel = 0; $minVariabel = ”en tekst streng”; $minVariabel = $en_anden_variabel; Link
11
Data Typer - Tal Heltal (integer) – 7, 8, -1, 87345 Reelle tal (double) 7.2, -7.5, 7e12 $etTal = 8; $etAndetTal = 17 + $etTal;
12
Typer - boolske værdier En boolsk værdi er enten TRUE, eller FALSE $enBool = FALSE; $enAndenBool = TRUE; $enBool = 7==5; - giver false $enBool = 7>5; - giver true
13
Typer – Tekst En string er en række af tegn omgivet af ” eller ’ ’ (single quoted) – variable og escape-sekvenser bliver ikke ”udvidet” ” (double quoted) - variable og escape-sekvenser bliver ”udvidet” $etTal = 42; ’Tallet er $etTal’ – giver: Tallet er $etTal ”Tallet er $etTal” – giver: Tallet er 42 ”Tallet er \$etTal” – giver: Tallet er $etTal Link
14
Typer – Tekst (2) Sammensætning $navn = ”Florian”. ” ”. ”Pilz”; – giver: Florian Pilz Bogstavindeks $str = ”Florian Pilz”; print $str{3} ; – giver r Link
15
Special tegn \nlinefeed \rcarriage return \thorizontal tab \\backslash \$dollar sign \"double-quote “line med \n linieskift og en backslash \\”
16
Løkker $a = 0; while ($a<10) { $a = $a + 1; print $a. ” ”; } for ($a=0; $a<10; $a++) { print $a. ” ”; } Link While- og for-løkker har samme syntaks (og semantik) som i JavaScript
17
Selektion if (a==5) { … } else { … } if og sammenligning fungere på næsten samme vis som i JavaScript if (a==5) { … } elseif (a>7) { … } sammenligninger eksempel på if
18
Erklæring af Funktioner (1) Funktioner defineres på samme vis som i JavaScript function navn(parameter,…) { kommando; …; return værdi; }
19
Erklæring af Funktioner (1) function udregn($tal1, $tal2) { return $tal1 + $tal2; } function printBool ($b) { if ($b==TRUE) print ”TRUE”; else print “FALSE”; } Link
20
Scope En variabel som bruges i en funktion er lokal i funktionen function udregn($tal1,$tal2) { $resultat = $tal1 + $tal2; return $resultat; } $resultat = 17; $svar = udregn(1,5); print (”Efter udregn(1,5) er kaldt er \$resultat: $resultat ”); print (”og \$svar er $svar”); En funktion skal opfører sig på samme måde uanset fra hvilken kontekst den kaldes $resultat’s levetid start $resultat’s levetid slut Link
21
PHP i aktion Konkret anvendelse af PHP
22
Hvordan ved jeg om en webserver understøtter PHP? Lav en tom php fil, kald følgende funktion: <? php phpinfo(); ?> Personlige og gruppe hjemmesider understøtter PHP.
23
Include (1) Eksterne PHP dokumenter kan indlejres: include (”mitScript.inc”); Filen mitScript.inc kan både indeholde PHP scripts og HTML. Hvis filen indeholder PHP, skal det placeres i , også selv om include allerede er i Link
24
Include (2) <?php include “mitscript.inc”; head(“En titel”); ?> Det bliver nemt at lave ændringer som har global effekt på et web-site Man kan gruppere bestemt funktionalitet i en include-fil Eksempelvis samle database tilgang Ved hjælp af funktioner som tager parametre kan man lave ”variable” abstraktioner Link
25
Forms og PHP (1) PHP laver en variabel for hvert form element med samme navn som elementet, men det kan være lidt tricky: Link
26
Forms og PHP (2) Import Request Variables import_request_variables(gp,””); Form værdi samlinger $_POST[”forfatter”], eller $_GET[”forfatter”] Konfigurere server (register_globals) Link
27
URL parametre Generel form url?variabel1=værdi&variabel2=værdi&... … import_request_variables(g,””); echo ’Variablen er ’. $enVar; Link
28
Cookies En cookie er et stykke tekst som en web-server kan gemme på en brugers hard disk Cookies giver et web-site mulighed for at gemme information på brugerens computer som senere kan hentes Cookies indeholder par af navne og værdier Men, ofte bruges cookies kun til at holde en information – unikt bruger id
29
Cookies (2) En klient beder om en web-side, f.eks. www.tnb.aau.dk Browseren tjekker om der ligger en cookie fra www.tnb.aau.dk på computeren – hvis der gør sender browseren cookie afsted sammen med forespørgelsen www.tnb.aau.dk modtager både forespørgelse og cookie ”Web-site’et” kan frit ændre i cookies
30
Cookies (3) setcookie ( navn, - navnet på cookien værdi, - en tekststreng expire, - sekunder siden 1/1 1970 path, - cookie for dele af et website domain, - cookie for subdomæner secure – skal der bruges en sikker forbindelse ); Skal kaldes inden output genereres
31
Cookies (4) $ value = ’Noget tekst som er proppet i en cookie i dag – ’. date(”l dS of F Y h:i:s A”); setcookie(”mincookie”, $value, time()+3600); getcookiesetcookie import_request_variables(c,””); print $mincookie; Eller, $cookie = $_COOKIE[”mincookie"];
32
Sessions (1) Sessions er et alternativ til cookies Når en bruger besøger et web-site tildeles denne et unikt id, kaldet et session id Session id’et gemmens enten i en cookie eller sendes rundt på web-site’et som URL parameter www.tnb.aau.dk/index.html?aff0b7c58e12b77ac555c4256dce869f Vilkårlige variable kan registres i en session
33
Sessions (2) Før noget output genereres session_start(); For at registrere en variabel $_SESSION[’variabel_navn’] = værdi; For at tjekke om en variabel er registreret isset($_SESSION[’variabel_navn’]); Link
34
Sessions (3) Hvis cookies ikke er tilladte bruges konstanten SID – er tom hvis cookies ’virker’ if (SID!=0) echo ’.. ’; else echo ’.. ’; Hvis man vil se session id session_id(); Link
35
Filer (1) Åbning af en fil $fil = fopen(”sti_til_fil”, ”mode”); mode skriv og læs fra slutning’a+’ skriv fra slutning’a’ skriv og læs fra start’w+’ skriv til start’w’ læs og skriv fra start’r+’ læs fra start’r’
36
Filer (2) Læse $fil = fopen(”data.txt”, ”r”) or die(”Kunne ikke finde filen!”); $str_fra_fil = fread($fil, filesize(”data.txt”)); Skrive $fil = fopen(”data.txt”, ”a”) or die(”Kunne ikke finde filen!”); fwrite($fil, ”noget tekst”)); Link
37
Hvad har jeg undladt? Arrays En særdeles fleksibel datastruktur i PHP Kræver i sig selv en hel forelæsning :-( Pattern matching Regulære udtryk
38
Dagens emner Hvad er PHP? Og lidt historie Hvordan virker PHP? Grundlæggende PHP Variable Typer Løkker og Selektion Funktioner PHP i aktion Include Forms og URL parametre Cookies Sessions Filer
39
Opgaver Overvej hvordan man kan udarbejde et spørgeskema til jeres projekt vha. PHP. Her er det en idet at gemme resultatet for den enkelte bruger i en fil.
Lignende præsentationer
© 2024 SlidePlayer.dk Inc.
All rights reserved.