PHP.

Slides:



Advertisements
Lignende præsentationer
Trehøje-Pigerne Side 1 Vejledning til brug af hjemmesiden Det er slet ikke så vanskeligt – så brug hjemmesiden flittigt… Det er.
Advertisements

Introduktion til HTML HTML dokumentets struktur & Indhold.
Dagens program Hvad er frivillig.dk Hvordan er frivillig.dk bygget op
Flickr.com – online billeddeling
Forsiden 1.Denne knap bruges når du vil taste dagens resultater ind. 2.Denne knap skal kun bruges hvis du allerede har gemt data og du finder ud af at.
Klik på Aktivér redigering på meddelelseslinjen.
SEO (Search Engine Optimization) - Hvordan bliver du mere synlig på nettet?
Introduktion til HTML Formularer V1 introduktion til formularer Den sidste af HTML strukturmarkørerne er FORM-markøren, der bruges til at lave.
Dag 4 Fortryk-knap og videre til kasse Dagens program: 1.Fortryd-knappen ud for hver vare i kurven skal virke Formiddagens arbejde:
Web 2.0 Teoretisk viden.
Udlægning af en ny cache
Introduktion til CMS. Indhold ● Forberedelse af indhold til hjemmeside ● Opsætning af hjemmeside (CMS)
WordPress Nyeste version af WordPress kan hentes her:
Vejledning i blog-værktøjet WordPress Opdateret august 2009.
Visitsite.dk © anja nielsen Forskellige typer websider Søgemaskiner Webshops (betaling) Blog (i forandring – og to-vejs kommunikation) Stationære.
Introduktion til CSS I gang med min første HTML & CSS hjemmeside.
– Sådan virker det! Dit elektroniske postsystem Ved Arne Crown Rasmussen
Vejledning i blog-værktøjet WordPress Opdateret oktober 2012.
Vejledning i blog-værktøjet WordPress Opdateret februar 2009.
Beskyt din computer og dine data!
Formularer (Access, del 3)
Hvordan bruger jeg First Class konferencerne ?
SQL 1 DDL og DML.
Intro Eksamen 4-ugers-projekter? Eksamensforberedelse De sidste tre gange?
NetBeans Installation og brug.
Kursus om borger.dk og brugen af digital signatur
Dag 2 varekatalog Broadcast: session-id (samme session-id hver gang) Formiddagens arbejde:
Dag 3 Indkøbskurv Jeres sider er nu synlige på Dagens program:
Introduktion til Access (Access, del 1)
Oprettelse af tabeller (Access, del 2)
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
Visitsite.dk © anja nielsen Forskellige typer websider Søgemaskiner Webshops (betaling) Blog (i forandring – og to-vejs kommunikation) Stationære.
Lasse Steensgaard [xls]Opsamlende forelæsning på W2, 2. april 2003slide 1 HTML og PHP: Baglæs fra output til input PHP: Variable, strenge og arrays Funktioner,
Intro Projekttyper v/ Lise Louv, Uddannelsesafdelingen Siden sidst: evaluering på opgaver og virtuel kursus. Kursets ugeforløb læse – forelæsning – øvelsestime.
18 – Java Server Faces. 2 NOEA2009Java-kursus – JSF 2 Web-applikationer - 1 Brugere interagerer med en Web-browser Browseren sender forespørgsler til.
1 Webdesign - De første trin Grundliggende begreber Internettet (1969-): En fællesbetegnelse for netværk eller tjenester der benytter samme.
1 HMAK XMLRelationel model og XMLNOEA / PQC 2005 SQLServer og XML Hent data via URL Generering af xml –Raw –Auto –Explicit Hent data via template Evt.
BlueDoc 2.0 (C) 2003 TMA Components Web-integreret Intranet søgemaskine.
Videregående pc-vejledning Modul 07: Elektronisk post 60+Bornholm.
SQL – Oracle Relationsdatabase
Rapporter (Access, del 5). RHS – Informationsteknologi – Udgangspunkt Vi har oprettet en database Vi har defineret en eller flere tabeller, og.
Vi har valgt at bruge vores egen postsystem til at fortælle lidt om vores kendskab IT verdens kommunikation. G-mail, er ret let at gå til, og der er hjælp.
Program Design – 4 Introduktion til PHP. Dagens lektion Hvad er PHP?  - og lidt historie Hvordan virker PHP? Grundlæggende PHP  Variable  Typer  Løkker.
Lion CMS Introduktion Sådan bruger du systemet. Trin 1 Tryk på login knappen Skriv dit brugernavn Skriv dit password Tryk på OK (Login) knappen Du er.
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
Introduktion til Access (Access, del 1). RHS – Informationsteknologi – Fra design til udvikling Vi ved nu, hvordan vi finder et design for en database,
Intro Større applikationer, f. eks: Bogpris.dk. Nye bøger.
Tina Ratzer Hendes hjemmeside skal indeholde: Kontakt Forhandlerliste
Intro Siden sidst: evaluering på opgaver og virtuel kursus.
Oprettelse af tabeller (Access, del 2)
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
XML 2. Formatering af XML data med CSS Når man arbejder med XML og CSS er fremgangsmåden den samme som i forbindelse med HTML og CSS.
SQL – Oracle Vigtige SQL sætninger Lektion 6 7. Semester.
Intro Siden sidst: evaluering på opgaver og virtuel kursus.
Intro Siden sidst: evaluering på opgaver og virtuel kursus Kursussammensætning: forelæsning – læse – arbejde selvstændigt – newsgroup – øvelsestime – aflevering.
OPERATIONEL ANALYSE AF WEBADFÆRD OAW – LEKTIONSGANG 8.
Grundlæggende DW, HTML, CSS, udskæring.
Client / Server teknologi Eksamensteori Anbefaling: Tag notater.
OPERATIONEL ANALYSE AF WEBADFÆRD OAW – LEKTIONSGANG 8.
Intro Siden sidst: evaluering på opgaver og virtuel kursus.
Formularer (Access, del 3). RHS – Informationsteknologi – Udgangspunkt Vi har oprettet en database Vi har defineret en eller flere tabeller Vi.
Programmering I Java/C# Datatekniker Dit første projekt.
Frivillignettet Adgang via Hjerteforeningens hjemmeside Klik på menu.
Kursus i Wordpress Lær at lave indlæg og kalenderbegivenheder v/ Hjerteforeningens webredaktør Mads Louis Orry.
Oprettelse Af Dreamviewer Site.
IOT – Elkedel på internettet
Modellering og data Nyt forløb.
Modul 07, Elektronisk post
Præsentationens transcript:

PHP

PHP introduktion Hvad er PHP? Alternativer til PHP Programmeringssprog til hjemmesider Hvor kører det i Client/Server miljø? Alternativer til PHP ASP, ASP.net, JSP mv. Hvorfor er Javascript ikke et direkte alternativ?

HTML kontra PHP Hvorfor lære PHP, når du kan HTML? PHP giver mange nye muligheder Hvad kan det/er det bedre til end HTML? Med PHP kan man benytte matematik Man kan kommunikere med brugeren Man kan kommunikere med databaser PHP kan kører løkker mv. PHP kan benytte variabler og arrays Og mange flere ting...

PHP til reelle ting Man kan bruge PHP til f.eks.: Gæstebog CMS system (styring af indhold på side / hel side) Shop system / indkøbsvogn Udregning af f.eks. karaktergennemsnit Spørgeskemaer Bookingsystem Kalender opgaver Bruger login Og meget mere...

Om at lære PHP For at lave noget fedt, skal man lære en masse grundting Ligesom man skal lære en masse ord, før man kan snakke et nyt sprog Først når grundtingene er lært, kommer sammenhængen for mange Dvs. har man svært ved at forstå det i starten, skal man bare hænge i, og så kommer det

WAMP og XAMPP Kører serverside, og skal derfor bruge server F.eks. eget domæne www.noget.dk Husk det skal være Linux/unix/php/mysql webhotel Ellers installerer virtuel server på computer Det er det vi kaldte et 1tier netværk Afinstaller IIS fra computer Installer f.eks. Wamp (MAC brugere: XAMPP) WAMP: www.wampserver.com/en/index.php MAC: www.apachefriends.org/en/xampp.html

Oprette sider i Dreamweaver til PHP Sider skal opsættes så det kører på server Dvs. sider kan ikke ligesom HTML testes på jeres computer med mindre der er 1 tier netværk. Normalt sættes det til at hænge sammen med hjemmeside Ved domæner skal filer uploades Dreamweaver kan upload filer eller du kan vi FTP program Dreamweaver kan drille og man kan ikke se om filen uploades successfult Vi prøver derfor at installere og bruge FTP program

FileZilla FTP = File Transfer Protocol Gratis FTP program Kender I til FTP programmer er det fint I bruger et andet også, bare I selv kender til det Bruges ved domæner Download: http://filezilla-project.org/ Vælg Client Vælg styresystem

Hvordan bruges PHP? PHP benyttes inde i HTML koden For at det virker skal filen hedde .php Det skal kører via server eller virtuel server (wamp / xampp) Ultra grundlæggende PHP? PHP startes og sluttes altid ved brug <?php PHP kode ligger her ?> <? PHP kode ligger her ?> Kommentarer i PHP skrives med // eller /* */ (og #) Funktionen echo udskriver ting i HTML PHP eksempel 1

Verdens kedeligste eksempel Et eksempel på hvordan PHP udskriver sætningen ”Hello World” PHP eksempel 2 Læg mærke til: Når filen køres, kan PHP ikke ses Automatisk ”lavet om” til HTML Vises det sted hvor scriptet står

PHP variabler Med variabler kan man gemme ting der bruges på samme side Variabler har $ tegn foran Strenge (alle tegn) skrives i ”” og tal skrives uden (for at kunne regne) En variabel kan indeholde en anden variabel Eksempel på gemt tekst i variabel som udskrives $min_variabel = ”Den gemte tekst”; echo $min_variabel; Eksempel på gemt tal variabel som udskrives $min_variabel = 230; echo $min_variabel; Eksempel på variabel med variabel i $pris = 150; $pris_m_tekst = ”Prisen er $pris”; PHP eksempel 3

Matematik med PHP I PHP kan du også regne Bruges f.eks. til gennemsnit, tidsberegning, visninger, shopping cart mv. Eksempel med plus, minus, gange og divider $tal1 = 10; $tal2 = 5; $tal_plus = $tal1 + $tal2; $tal_minus = $tal1 - $tal2; $tal_gange = $tal1 * $tal2; $tal_divider = $tal1 / $tal2; Sammenkædning af strenge og variabler mv. Benyt . (punktum) PHP Eksempel 4

Simpel opgave - 1-2 pers Lav en side der: Mål med opgave Benytter variabler Benytter matematik Udskriver noget Med kommentarer om hvad det gør Ved der ikke kan laves det store revoulutionerende, men lad prøv for at forstå måden tingene bruges på Mål med opgave Forstå princippet Forstå hvor i HTML det sættes ind Lær basis PHP

Modtage ting fra forms I PHP kan du modtage ting sendt fra en form Du laver en HTML side med en form Du henviser den til PHP filen du laver I PHP filen kan du hente værdier og gemme dem i variabler Hentes med $_POST[”navn_på_felt”]; Gemmes i variabel sådan her: $felt_1 = $_POST[”felt_1”]; Det som står i POST skal matche navnet på feltet. Variablen navngives helt frit PHP eksempel 5 og HTML eksempel 5

If....else If... Else kan tjekke noget, og udføre en ting afhængigt af om det er sandt eller ej Eksempel på hvordan der tjekkes om en karakter er bestået Sætningen er sådan: if (noget == noget) { gør noget } 2 lighedstegn tjekker om de er ens. Havde der været et havde den sat første værdi lig med den anden Andre ting der kan bruges: != er ikke-lig-med < er mindre end > er større end mv. PHP eksempel 6

Mini opgave 1-3 personer Lav en mini lommeregner Man skriver 2 tal Man vælger om den skal gange, plusse, minusse eller dividere Man klikker beregn, og den viser en ny side med regnstykket og resultatet. Husk at lav en helt ny side i Dreamweaver kaldet lommeregner Til denne opgave bruges de ting vi har lært Der vil som udgangspunkt ikke være hjælp fra mig, før hele gruppen sidder uhjælpeligt fast  Til dem der er hurtige færdige, prøv at udbygge eksemplet

SESSIONS Hvad er session? Bruges til: Ligesom en variabel Kan bruges henover flere sider Bruges til: F.eks. Indkøbsogn At tjekke om man er logget ind Mv.

SESSIONS Hvordan bruges den? PHP eksempel 14 og 14_2 Starten af alle sider der beytter den: session_start(); Gem i sessions $_SESSION[”session_navn”] = 10; Brug sessions Bruges som variabler blot med $_SESSION[””]; Slet sessions session_unregister[”session_navn”]; //sletter en Session_unset(); // Sletter alle session_destroy(); // Sletter session data fra computer PHP eksempel 14 og 14_2

Opgave 1-2 pers Lav 2 filer f.eks. Send_session.php og modtag_sesseion.php I send filen starter du sessions, og gemmer nogle Herefter laver du et normalt link til modtag filen I modtag filen udskriver du de sessions du har sendt med Herefter sletter du en og udskriver igen Herefter sletter du alle og destroyer session

While løkker En while løkke kører så længe betingelsen er sand Anvendes ofte sammen med databaser While(betingelse) { // Gør noget } PHP eksempel 9

Hvad er en database? En samling af struktureret data, som kan opstilles i tabelform Eksempler på databaser: Kundedatabase Telefonbog Adressekartotek Produktdatabase O.m.m.

Hvad er en database? En database består af: Eksempel Tabeller Felter Værdier Eksempel Tabel: Selandia_laerere Felter: Navn, email Værdier: Kim, kmre@selandia-ceu.dk

PHP og databaser For at oprette databaser og lave manuelle ændringer, benyttes PHPMyAdmin Et system til at styre databaser, tabeller osv. med PHP kommunikere sammen med databaser ved hjælp af SQL (MySQL database) SQL er et ”kodesprog” man bruger til at lave forespørgsler SQL betyder Structered Query Language SQL benyttes i PHP funktioner

PHPMyAdmin Log ind på PHPMyAdmin allesammen Kort gennemgang Opret database (hvis man kan hos udbyder) Opret tabel Opret felter og de vigtigste felters type Id felt, auto number Interger Varchar Char Text Opret værdier i felterne Export og import Vær opmærksom på: Mange forskellige versioner – kan variere lidt

Individuel opgave Opret en database i PHPMyAdmin kaldet "PHP-undervisning" Opret en tabel kaldet "elever" Opret felterne "id", "Navn", "Adresse", "Postnr", "Bynavn", "Tlf" og "Email" Indsæt nogle personer i den - min. 10 stk VIGTIGT: Denne skal bruges senere

Mini SQL kursus Simple grundkommandoer Næsten ligesom at skrive engelsk Bruges sammen med PHP's egne funktioner Mange muligheder Vi gennemgår basis og lidt mere Referencer til viderestudering

SQL – udtræk fra database Eksempler på udtræk: SELECT * FROM elever WHERE navn='Jens' SELECT * FROM elever WHERE navn LIKE '%Jens%' SELECT navn, klasse FROM elever SELECT * FROM elever ORDER BY klasse DESC SELECT * FROM elever ORDER BY klasse ASC SELECT * FROM elever WHERE navn='Jens' AND klasse='7b' SELECT * FROM elever WHERE klasse='7a' OR klasse='7b' Sammensæt dem: SELECT navn, alder, klasse FROM elever WHERE navn LIKE '%Jens%' AND klasse = '7b' ORDER BY klasse DESC

SQL – Insæt i en database Vi leger vi har en elev tabel med kun 3 felter (nemmere at vise) - id, navn og tlfnr Eksempler på indsæt INSERT INTO elever VALUES ('', 'Kim', '31610512') INSERT INTO elever (navn, tlfnr) VALUES ('Kim', '31610512')

SQL – Opdater i en database Eksempler på update UPDATE elever SET navn = 'Kim R' WHERE tlfnr = '31610512' UPDATE elever SET tlfnr = '31510512' WHERE tlfnr = '31610512' UPDATE elever SET tlfnr = '31510512' WHERE navn = 'Kim R' UPDATE elever SET tlfnr = '31510512', navn = 'Kim' WHERE navn = 'Kim R'

SQL – Slet fra en database Eksempler på slet DELETE FROM elever WHERE navn = 'Kim' DELETE FROM elever WHERE tlfnr = '31610512' DELETE FROM elever WHERE id = '2' TRUNCATE TABLE elever Tabel elever bliver der men er tom

Brug PHPMyAdmin som hjælp Når man benytter PHPMyAdmin kan man se SQL sætningen efter Bliver man i tvivl om en sætning kan man derfor udfører det der, og se sætningen den genererer

Avanceret SQL Følgende er hjemmelæsning men er også en del af pensum (næste side kan ses hvor det findes) INNER JOIN = Hent fra flere tabeller LEFT JOIN = Hent fra flere tabeller RIGHT JOIN = Hent fra flere tabeller FULL JOIN = Hent fra flere tabeller DISTINCT = Hent ikke duplikerede værdier

Lær mere om SQL Her kan du se de avanceret ting Google søgning på SQL http://www.w3schools.com/sql/ Se menuen til venstre Google søgning på SQL Millioner af sider

Connect til en database i PHP $database = mysql_connect("server", "brugernavn", "password") or die("Server, bruger eller pass er forkert"); Server: Ofte localhost ellers tjek med udbyder Brugernavn: Fået af udbyder Password: Fået af udbyder Die udskriver fejlmeddelelse

Connect til en database i PHP Vælg den database du skal bruge mysql_select_db("databasenavn", $variabel_med_dbconnection) or die("Kunne ikke finde database"); Databasenavn: Det du eller din udbyder har kaldt din database Variabel: Den vi oprettede før som vi kaldte $database (med navn, brugernavn og password) Die laver fejl hvis den ikke kan

Include og require funktion Database connectionen inkludere man som regel på side hvor det skal bruges Ny funktion: include("side"); Et sted i en PHP kan en anden inkluderes: include("database_connection.php"); Bruges ved sider i designs osv. Alternativ: require("database_connection.php"); Gemmes imodsætning til include i cachen Bruges ved database connections

Individuel opgave Lav en connection fil Skal connecte til databasen hvor elever tabellen er Lav en php side hvor connection filen bliver required Kør filen på server og se om der er fejl PHP Eksempel DB 1

Hent fra database I PHP dokumentet husker man at inkludere filen med database connection Kør SQL forespørgslen: $db_elever = mysql_query("SELECT * FROM elever");

Få fat i den første post I PHP dokumentet husker man at inkludere filen med database connection Kør SQL forespørgslen: $db_elever = mysql_query("SELECT * FROM elever"); $data = mysql_fetch_array($db_elever ) data[0] = id, data[1] = navn osv

Gennemgå tabelposterne Gennemgå og udskriv det der er hentet med forespørgslen A la man gjorde det med et array med foreach while($data = mysql_fetch_array($db_elever )) { echo $data[0]; //navn hvis det er 1. felt echo $data[1]; //Adresse hvis det er 2. felt // osv osv osv } // kører igennem så længe der er poster PHP eksempel DB 2

Individuel opgave Prøv at lave en PHP fil, hvor du henter og udskriver data fra den elev tabel vi tidligere har lavet Data skal udskrives sådan på hver linje Navn, Adresse, Postnr, Bynavn, Tlf, Email

Opdater tabelposter I PHP dokumentet husker man at inkludere filen med database connection Kør SQL forespørgslen: $db_elever = mysql_query("UPDATE elever SET navn = 'Kim Revsbæk' WHERE navn = 'Kim'"); Hvis det f.eks. Var modtaget fra en form kunne man $nyt_navn = $_POST["navn"]; $db_elever = mysql_query("UPDATE elever SET navn = $nyt_navn' WHERE navn = 'Kim'"); PHP eksempel db 3

Individuel opgave Prøv at lave en PHP fil, hvor du opdaterer noget i elev tabellen med nye oplysninger Hvis du har mod på det, kan den opdatere tabellen med oplysninger man har indtastet i en form. Men ellers er det fint at lave fiktive oplysninger.

Slet tabelposter I PHP dokumentet husker man at inkludere filen med database connection Kør SQL forespørgslen: $db_elever = mysql_query("DELETE FROM elever WHERE navn = 'Kim'"); Hvis det f.eks. Var et punkt en bruger havde valgt kunne id været sendt med i adressen $slet_id = $_GET["id"]; $db_elever = mysql_query(" DELETE FROM elever WHERE id = ' $slet_id ' "); PHP eksempel db 4

Individuel opgave Prøv via en PHP fil at slette en elev fra tabellen elever Prøv f.eks. at slette en elev hvor id er = med noget bestemt Prøv evt også at slette alle elever der bor i et bestemt postnr

Opret nye poster i databasen I PHP dokumentet husker man at inkludere filen med database connection Kør SQL forespørgslen: $db_elever = mysql_query("INSERT INTO elever VALUES ('', 'Kim', 'vejnavn 17', '4200', 'Slagelse', '31610512', 'mmd@techshop.dk') "); Alle disse ting kunne selvfølgelig også være kommet fra f.eks. En formular PHP eksempel db 5

Individuel opgave Prøv via en PHP fil at oprette en eller flere nye elever i tabellen elever

Opgave - 2 pers grupper Ikke samme grupper som sidst Opgave udleveres på papir ved siden af Generelt - lav en side hvor man kan oprette, redigere og slette elever fra jeres tabel