>> DOUG LLOYD: Så i vår video på PHP syntax,
Vi pratade mycket om hur PHP kan användas på kommandoraden
att köra program på ett sätt som vi är ganska bekant med från C.
Men som jag nämnde också i att video, PHP
utvecklades från början till genomföra webbprogrammering, webbplatser.
Och så i den här videon är vi kommer att tala om hur vi
använda PHP i webbutveckling sammanhang.
>> Vi vet redan, från vår video på HTML,
att webbplatser är byggda ut ur en uppsättning HTML-taggar
som semantiskt definiera strukturen för en webbsida.
Men webbplatser som är byggd med ren HTML
lider av en mycket, mycket allvarlig begränsning.
>> Och för att illustrera denna begränsning, låt oss betrakta följande.
Så nu vill jag bygga en webbsida att när användaren besöker det,
det ger mig den nuvarande tid i Cambridge, Mass.,
visar det till den senaste minuten.
Om jag gjorde detta just nu, Jag kan säga ungefär så här.
Tiden i Cambridge-- så jag har HTML-taggar, huvud taggar, rubriktaggar,
kropp tags-- strömmen tid i Cambridge är 14:08,
utskrift av militära tid.
>> Vad händer om det nu 2:09, 14:09?
Bra hittills, med HTML, har jag att gå in och ändra det till 14:09.
Och sedan en minut senare, Jag måste ändra det igen.
Och som ni kan föreställa er, det är troligen den värsta jobbet någonsin.
Du är webmaster för en webbsida, och varje minut, 24 timmar om dygnet,
Du behöver uppdatera den aktuella tiden med manuellt öppna time.html och ändra
bara att kodsträng att säga aktuell tid i timmar och minuter.
Det är förmodligen inte en mycket bra användning av våra resurser,
både mänskliga och beräknings.
>> Webbplatser som alla är HTML är helt statisk.
Det enda sättet du kan uppdatera innehåll, som vi just har sett,
är att öppna dem källa manuellt filer, redigera dem, och spara dem.
Och sedan när användaren uppdaterar sidan,
eller besöker sidan för första tid, kommer de att få det senaste innehållet.
Men bara för att vi har redigeras manuellt det.
>> Om vi ​​börjar blanda lite PHP där, vår kod kan få en mycket mer flexibel.
Och vi kan ha ett sätt för våra sidor att vara dynamisk, eller uppdatera sig,
utan att kräva våra fattiga webmaster i föregående exempel
att manuellt uppdatera saker.
De kan göra det automatiskt.
Vi behöver inte ingripa.
Vi kan få lite sömn.
Vilket förmodligen är en bra sak om du gör en hel del webbprogrammering.
>> Så i CS50 IDE, vi kör en webbserver som heter Apache.
Det är ett mycket vanligt, open source web server system.
Detta system har kapacitet att tolka
PHP, som kommer att vara användbart om du vill göra något PHP-programmering.
>> Och i CS50 IDE, har vi ett kommando för att göra detta mycket lätt att göra,
apache50 starta.
Och då snedstreck bana, snedstreck till snedstreck
dir, det är bara ett riktigt vanligt sätt att anger vad du har angett här
är en väg till en viss katalog som du
vill vara roten webbplats, eller rotsidan,
eller mapp som din webbserver kommer att börja undersöka filer och servera
dem till kunder som efterfrågar dem.
Så låt oss pop över till CS50 IDE, bara för att visa, verkligen snabb, hur det fungerar.
>> Så här i CS50 IDE, jag befinner mig i en katalog som heter Vecka Zero Nine.
Och jag har two-- jag har avrättades en LS kommandot bara
ovan för att visa er att jag har två kataloger i här, PHP,
vilket är den uppsättning filer som jag använde i PHP syntax video, och sedan PHP-bana,
som är den uppsättning filer som jag skulle vilja använda i den här videon.
>> Och jag skulle vilja börja en webbserver instans
med innehållet i PHP-webbmappen eftersom filerna som serveras upp.
Så vad ska jag göra?
Jag kommer att skriva apache50 utrymme start, utrymme PHP, streck banan.
Det är vägen till katalogen från där jag är för närvarande.
Då jag trycker på Retur.
Det kommer att göra en lite saker här.
Och sedan kommer att säga, Apache startats.
Din webbplats är nu tillgänglig at-- och sedan finns det webbadressen till sajten.
Så vad ska jag göra?
Jag kommer att snabbt kopiera detta.
Och jag kommer att öppna up-- och Jag zooma ut lite här--
Jag kommer att öppna upp en ny flik i Chrome.
Och jag kommer att besöka denna URL.
>> Jag kommer att slå Enter.
Det kommer att läsa in.
Och jag ska zooma ut igen.
Och vi kan se här är innehållet i min PHP webbkatalog.
>> Så nu vad som i grund och botten händer här är min instans av CS50 IDE
tjänar upp dessa filer till vem som helst som begär dem.
Och under loppet av den här videon kommer vi sorterar av
ta en titt på ett gäng av dessa olika filer i sitt sammanhang.
>> För att testa att din Apache servern fungerar,
som i allmänhet kommer vara fallet i CS50 IDE,
men om du gör det mer allmänt, och du börjar bygga din egen webb
servrar, det är en riktigt vanligaste typen av analog till
"Hej världen", som vanligtvis används för PHP webbutveckling.
Vilket är att ha en fil bestående av just detta code--
en PHP avgränsare set med PHP info, parenteser, semikolon emellan.
Vilket egentligen är en speciell PHP-funktionen som talar om
vilken version av PHP du kör.
>> Så i CS50 IDE, har jag filen finns bara
att visa dig vad det skulle se ut.
Så jag ser på mitt index från min PHP instans.
Min Apache-instansen körs innehållet i PHP-Web.
Och jag har en fil här kallas info.php.
>> Jag kommer att klicka på det, zooma ut.
Detta är vad du tänker att se, ganska mycket.
Detta är bara talar om för mig att min Apache servern fungerar.
Och detta är, tydligen, version av PHP som jag kör.
Detta är min analog till "Hej världen."
>> Så jag vet saker är i drift.
Så vi är bra att gå.
Vi kan gå härifrån.
>> Så låt oss återkomma som tids exempel vi var
talar om med våra fattiga webmaster som var tvungen att uppdatera sidan hela tiden.
Detta kan vara en fix för hur Jag skulle genomföra saker
så att webmaster inte måste hålla uppdatera tiden.
Det skulle bara typ av ske automatiskt.
>> Den nere, HTML, är det ganska likartade, med ett undantag.
Men här har jag fått lite PHP på toppen.
Jag har, som synes, kallade detta funktion date_default_timezone_set.
>> Och vi talar inte om alla dessa funktioner i CS50,
eftersom PHP har förmodligen tiotusentals.
Det kan vara lite av en överdrift, men det kanske inte.
Det har fått en hel del funktioner inbyggda i.
Och så detta är en funktion som synes sätter min tidszon som US / Eastern,
vilket är den tidszon som jag är närvarande för att göra den här videon.
>> Då ska jag ringa ett samtal till Funktionen kallas, datum.
Och, uppenbarligen, jag lagra HANS av något som kallas, tid.
Så vad är det som händer här?
>> Tja, i princip vad är händer är, jag ringer ett samtal
till viss server som kommer att berätta vad tiden är närvarande.
Och jag omvandla den till ett format timmar, minuter, sekunder.
Och anledningen till det är kapital H är detta kommer att ge mig 24 timmars tid, inte 12
timmars tid, vilket skulle vara gemener tim.
Och jag bara lagra att i en variabel som kallas, tid.
Så att den andra raden av PHP där, anrop till funktionen,
Hittills är bara få vissa sträng, som är
kommer att ge mig den dag, och tid, och en massa annan information.
Och det första argumentet där, att HIS, bara extrahera viktig del
att jag bryr mig om i det här exemplet, vilket är en timme, minut och sekund.
Så det är allt som händer.
Så jag lagra den i en variabel $ tid.
Och sedan ner på längst ned där, jag
har det förkortning för skriva ut den aktuella tiden.
Så jag ska bara skriva ut reda på vad klockan är.
>> Så låt oss ta en titt på detta CS50 IDE och se hur vi är nu
spara som webmaster en massa problem.
Okej, så här är jag igen tillbaka i rotkatalogen
min Apache instans.
Och jag har en fil här kallas time.php.
Jag kommer bara att klicka på den.
Och jag ska rulla upp, eftersom vi zoomat in ganska långt.
Den aktuella tiden är 14:20:34.
Så jag gör det timmar, minuter och sekunder.
Och jag kan uppdatera och få ny tid.
--41.
Jag kommer att uppdatera sidan och få ny tid, 44, 46, 47.
>> Så jag är uppenbarligen inte ändra någonting själv.
Jag här uppdatera sidan.
Så jag kan inte vara tillbaka där redigera den.
Och jag lovar dig, jag vet inte har några förbunds
som redigerar filen för min räkning på sidan.
>> Jag bara använda det PHP-funktionen, tid, för att generera tid för mig
automatiskt.
Så att även om jag sover, och min webbserver körs,
användaren som besöker den sidan är fortfarande kommer att få exakt den aktuella tiden.
Så det är ganska bra.
Jag har gjort min webbplats mer dynamisk med inte alltför mycket PHP-kod.
Det var bara två rader kod och sedan en liten bit av en utskrifts uttalande.
Och redan jag har en mycket mer dynamisk webbplats
än det första exemplet vi såg i början av videon.
>> Så minns från videon på PHP syntax att när PHP tolken körs
vårt program, ignorerar det allt det är inte inne i PHP avgränsare,
spotta ut det.
I detta exempel, vad den saken att det var spotta ut var HTML.
Och det betyder att jag kan nu blanda HTML och PHP tillsammans.
Eftersom tolken kommer bara ignorera HTML och bokstavligen utsignal.
Vilket är bra, eller hur?
>> Eftersom förmodligen, Vid slutet av dagen,
Jag vill att min webbplats till vara konstruerad av HTML.
Så att alla webbläsare kan tolka det eller förstå HTML på sidan
och göra det som något som vi kan faktiskt förstå som människor.
Och jag kan bara använda PHP för de delar av min webbplats
det kräver dynamik, som kräver mig att ha saker som uppdateras hela tiden.
Den statiska informationen kan förbli densamma.
>> OK, så det är bra.
Men varför skulle jag göra det?
Varför skulle jag blandar HTML och PHP?
Jag kan bara skriva ut alla HTML, med hjälp av PHP utskriftsfunktionen.
Varför får jag inte göra det?
Tänk på det för en sekund.
>> Varför, när jag kunde bara skriva out-- jag kunde ha rader av PHP som bara säga,
utskrifts HTML-tagg, skrivhuvudet.
Varför får jag inte göra det?
Varför jag blanda PHP och HTML?
>> Tja, om du tror om det för en sekund.
PHP, har tolken att tolka vad den ser.
Och så det kommer att ha att utföra en rad kod.
Skriv ut HTML.
Skriv ut öppna huvud tag.
Skriv ut öppna rubriktaggen.
Det kommer att behöva genomföra och tolka
att varje enskild steg på vägen.
Varför inte bara låta tolk bara släta över
saker man inte förstår och göra det automatiskt?
Det kommer att spara mig en hel del tid att blanda min HTML och min PHP tillsammans.
>> Och så det är därför vi inte bara öppna PHP avgränsare
och sedan bara skriva ut hela innehållet på vår sida som en gigantisk PHP
Ring till funktionen, Print, och sedan nära PHP avgränsare och vi är klara.
Så det är därför vi blandar upp dem tillsammans.
>> Hittills har vi inte sett alltför mycket av skillnad från allmän PHP syntax.
Det har varit ganska enkelt.
Vi har redan sett frågetecken, lika.
Vi såg ett par nya funktionsanrop, men ingenting riktigt snygga händer.
Låt oss kanske göra saker lite snyggare.
Vad händer om vi vill överföra information mellan olika PHP-filer,
så att kanske kan användaren lämna information till mig.
Och då kunde jag göra något med det på en annan sida.
>> Så PHP har stöd för något som kallas Super Global
Variabler, vilket låter ganska häftigt.
De är egentligen bara jätte associativa arrayer
som hjälper genomföra detta funktionalitet passerar
information mellan PHP-filer som är befintliga på vår webbserver.
>> Den första av dessa super globals kallas $ _GET.
Och det är förmodligen enklaste att förstå.
Vad händer med $ _GET?
Tja, i princip, är användaren kommer att skriva till extra information
i slutet av URL: er.
Och vad de skriver, förutsatt det är formaterad på ett visst sätt
kallas en frågesträng, som är bara en uppsättning av nyckelpar värde separeras
av et-tecken.
Dessa nyckelpar värde kommer att vara lagras i en $ _GET associativ array.
Och från vår video på PHP syntax, vi vet
hur man arbetar med associativa arrayer redan.
Så här är ett exempel på vissa PHP, där kanske jag
extrahera alla nyckelpar värde att användaren levereras i webbadressen.
Så jag har min öppet PHP avgränsare.
Jag har en foreach slinga.
Jag iterera över Super Globalt Array kallas $ _GET.
>> Och jag vill kunna hänvisa till både nyckeln och värdet.
Och jag bara skriva ut dem ut, var och en på till synes
sin egen punkt tag här.
Jag skriva ut några HTML och interpolering av värdena
av nyckel och värde i det uttalandet.
>> Så låt oss ta en titt på hur detta skulle faktiskt arbetar på vår IDE.
Och kanske detta kommer att hjälpa illustrerar en liten bit
vad GET faktiskt gör.
Så jag är tillbaka här i min webbroten.
Och jag kommer att zooma in ett lite att visa dig
att jag har en fil som heter, get1.php.
>> Så låt oss titta på get1.php.
Och jag ser inte något innehåll.
Det är konstigt, eller hur?
Tja, inte riktigt faktiskt.
Eftersom jag inte har lämnat något i webbadressen.
Jag ska get1.php, men jag inte levererar några nyckelpar värde
som en del av mitt frågesträng.
Så låt oss lägga till en frågesträng och se vad den här filen kan göra.
>> Till att börja en frågesträng du skriv bara frågetecken.
Då kanske jag ska säga name = Doug & år = 2015.
Och då kommer jag trycker på Retur.
Nu märker vad som händer.
Jag är fortfarande i get1.php.
Men nu har jag levererat nyckelpar värde, och jag är
skriva ut dem på egen hand paragraph-- namn, Doug-- år 2015.
Det är precis den kod vi bara såg på bilden för en stund sedan.
>> Och om jag vill kanske lägga till en annan nyckelvärdet paret, och class = CS50.
Nu har jag en annan nyckelvärde par som är utskrivna
När jag återkomma webbadressen igen.
Nu kanske detta inte är formaterad fruktansvärt bra.
Så jag har en annan version av get.php.
Det är get2.php.
>> Skillnaden i detta en är att jag har CSS-fil,
och det format saker lite mer bra för mig.
Det är kanske inte den mest vackra CSS i världen.
Men det är bara ett annat sätt att göra det.
Så jag kan fortfarande få tillgång till mina variabler med hjälp av $ _GET.
Och i detta fall, jag är bara typ av gör CSS lite mer fantasi.
Och om vi pop över till min IDE för en sekund,
Jag ska visa dig i min PHP katalog här, get2.php.
Vi kommer att öppna upp, en del HTML här.
Tydligen jag bindning i det CSS-fil jag pratade om.
Jag öppnar ett bord tag.
Och så här är min foreach loop.
>> Här är det, vad jag visade på bilden innan.
Den enda skillnaden är att jag har denna nyckel och värde CSS
styling att jag söker det.
Men det är allt jag gör är jag iterera över $ _GET att få alla
av nyckelparen value.
>> Och jag skriva ut dem som tabellen.
Och, uppenbarligen, jag formatering nycklarna i ett sätt, med <td class = "nyckel".
Så uppenbarligen som gäller för vissa klass väljare i min CSS-filen GET.CSS.
Och, uppenbarligen, jag skriva ut mina värderingar ett helt annat sätt.
Vilket är ganska mycket vad vi såg här, där
våra värderingar trycktes med en blå bakgrund,
och våra nycklar trycktes med en gul bakgrund.
Så det är hur jag får dessa olika stilar.
Eftersom jag använder olika CSS-klasser.
Men det är ganska mycket det för GET.
Som jag bara extrahera information.
Och i detta fall, jag är bara skriva ut det till skärmen.
Jag får ut av webbadressen, och det är vad GET gör för oss.
>> Ser du en möjlig Problemet här om?
Varför skulle vi kanske inte vill använda $ _GET?
Tänk om, kanske, jag gjorde den här frågan?
--to get3.php, som jag har inte på min IDE.
Det är bara en hypotetisk fil.
Men märker här som tydligen passerar mitt lösenord i.
Och kanske mitt lösenord är pinsamt.
Eller kanske jag inte vill att folk ska vet vad mitt lösenord är rätt.
>> Om jag passerar det though-- om jag använder den $ _GET metoden, vad som händer är,
som kommer att vara i webbadressen.
Så några angripare kanske kunna se vad jag gör.
Jag kan passera dem känslig information.
Eller kanske är det inte ens en angripare.
Kanske är det bara din vän som står över axeln.
Och nu känner till lösenordet ditt Facebook-konto.
>> Och kanske de inte skulle göra något med det.
Men om ditt lösenord var lämnats via $ _GET till Facebook,
Nu vet de ditt Facebook-lösenord.
Eftersom det är just där i URL När du har gjort lämna information.
>> Och så kanske det är inte den bästa sätt att passera känslig information.
Det är ett bra sätt att överföra information att vi inte särskilt
bryr sig om att vara för känslig.
Eftersom GET är ganska snabbt, relativt de andra super globals
vi kommer att prata om.
Men kanske inte det bästa verktyget för känslig information.
>> För att vi kanske vill använda något som kallas $ _POST,
som är en annan Super global variabel.
Det är en annan associativ array.
Så det fungerar ganska mycket exakt samma som GET.
Utom, i stället för att utvinna information från webbadressen
det gör något genom HTTP-huvuden.
Så minns från vår video på HTTP, vi pratade
om hur webbläsare, servrar, och klienter kommunicera.
Och informationen skickas tillbaka och tillbaka i HTTP-rubrikerna.
>> Med $ _POST, är informationen ofta skickas via dessa HTTP-rubriker.
Och vi ska oftast ser $ _POST i samband med att lämna in HTML-formulär.
Du kan fortfarande använda HTML-formulär att lämna saker för att få.
Men de är oftast används i samband med POST.
>> Så här är ett exempel på ett HTML-formulär.
Nu har vi sett dessa innan, men vi har inte sett denna del action = "post.php".
Så när vi pratade om former i inom ramen för HTML, hade jag en Skicka-knapp.
Och om ni minns, skulle jag klickar på Skicka och sedan sidan bara uppdateras,
inte göra någonting.
>> I det här fallet, jag lämnar in vad jag skriver på detta formulär,
till en PHP-fil som heter post.php.
Och, uppenbarligen, hur jag gör det i detta formulär med metoden POST.
Så varje bit av information att jag skriver in detta formulär
kommer att lämnas in genom HTTP-rubriker.
>> Det kommer att vara tillgänglig i post.php, eftersom det är effekten av min form.
Det kommer att vara tillgänglig genom att gå till $ _POST.
Och tydligen, hur jag kan får vid varje enskilt element
med det associativ array är med detta attribut,
Namn attributet våra ingångs taggar.
>> Så tydligen kan jag säga $ _POST kvadrat konsoler namn för att få vad användaren
skrivs i det första fältet.
Och $ _POST lösenord, av pw snarare, att komma åt vad användaren har skrivit
i det andra fältet.
>> Så låt oss ta en titt på detta över i CS50 IDE.
Så här är vi, och jag ska zooma in för en sekund.
Och vi har en fil som heter post.html.
Jag klickar på post.html.
Högst upp här har jag en mycket enkel webbformulär.
Det är den form vi såg bara på bilden för en sekund sedan.
>> Jag kan skriva, Doug, och jag kan skriver mitt lösenord, som vi alla
vet är squadgoals.
Och jag kommer att drabba Skicka.
Och tydligen, att underkastar sig post.php.
Och jag tydligen du skriver.
Så jag bli av med all säkerhet att POST ger mig genom att bara skriva ut
användarnamn och lösenord.
>> Användarens namn är Doug.
Användarens lösenord är squadgoals.
Hur gjorde jag det?
Tja, pop över till IDE igen för en sekund.
Vi kommer att rulla ner för att ta en titt på post.php, som var
den åtgärd som jag brukade skicka här.
Det var effekten av min HTML-formulär.
Och det är allt jag gör.
Användarens namn är, och jag är utskrift ut innehållet i $ _POST "name".
Och sedan användarens lösenord är $ _POST "password".
Så jag fick denna information genom att skicka in HTML-formulär.
Och jag kan nu extrahera den med hjälp av $ _POST eftersom metoden jag används för att sända
data med denna form var metoden POST.
>> Nu är det nog inte så great-- jag tänker
att gå tillbaka för en andra till vår uppsättning här--
det är nog inte så bra om jag lämna information med POST,
som är skenbart säkrare.
Det är nog inte så stor Om jag gör det och sedan
skriva ut användarens lösenord.
Det är tänkt att vara säkrare.
>> OK, men det är inte helt säkert.
Och så i denna lilla snippet här vill jag
att bara göra er uppmärksamma på vissa datasäkerhet problem, bara något
att tänka på när du är bearbetning eller användning av Internet.
Detta är bara något att överväga.
>> Jag sa ju att informationen är skickas via HTTP-huvuden
när du använder metoden POST.
Vilket innebär att de inte är helt säkra.
De är svårare att hitta än använder metoden GET, där
det är bara rätt i webbadressen.
Men det finns fortfarande ett sätt att hitta den.
Och jag vill bara visa detta så att du kanske
börja tänka på detta som du arbetar, eller med hjälp av
webbplatser och inlämnande lösenord och kanske med hjälp av
samma lösenord i en mängd olika platser.
Vet att det är fortfarande är faktiskt ganska lätt att ta reda någons lösenord.
>> Och så här, jag kommer att gå till post2.html.
Och skillnaden med post2.html och post2.php är ganska subtila.
Skillnaden är bara att jag inte skriva ut
lösenordet när jag skicka formuläret.
>> Så jag kommer att skriva in, Doug.
Och jag kommer att skriva i, squadgoals, även
även om vi vet att det är lösenordet.
Innan jag lämnar in bildar dock, jag kommer
att öppna upp utvecklarverktyg, bara för att visa dig vad som kommer att hända här.
Så i Chrome, jag bara kommer att slå F12.
Och det kommer att öppna upp min Developer Tools på höger sida.
Jag har inte skickat in formuläret ännu.
Nu ska jag slå in på min form.
Och tydligen gjorde jag en ringa till, eller jag gjorde en förfrågan
att post2.php, vilket är vettigt.
Jag kommer att klicka på den.
>> Sedan hit, jag kommer att klicka på rubriker.
Det finns massor av saker som pågår här.
Men om jag bläddra ner till mycket botten, meddelande rätt there-- min kalender
har blockerat den för en second-- rätt där på mycket nedre hörn,
name-- Doug, pw-- squadgoals.
Så även om jag använder POST metoden, som är säkrare,
bara vara medveten om att när du gör det, du fortfarande överföra information
via HTTP.
Och det kan fortfarande vara hittades av en motståndare.
Det är bara något vi ska att ha att göra med riktigt.
Kanske finns det några sätt att kryptera vår lösenord innan vi skickar dem över,
vilket skulle vara en bättre, vilket jag inte gör här.
>> Men bara vara medveten om att POST metod har begränsningar också.
Det är en förbättring jämfört med GET i termer av att vara direkt synliga.
Men det är inte en fullständig lösning.
Så här är ett exempel på en snabb hemma motion
som du kan använda för att få lite öva att arbeta med PHP.
Skapa följande par av webbsidor.
Den första bör bara vara en mycket enkel bildar med ett enda fält och ett in
knapp.
Så mycket liknar vad vi bara gjorde med post.html.
>> Och sedan den andra fil du bör skapa
är en fil, en PHP-fil, som väntar ingång via POST,
och baserat på vad användaren har skrivit, som du kan anta kommer att vara ett heltal.
Du behöver inte göra något felkontroll eller liknande.
Du kan anta att användaren kommer att skriva ett heltal,
eller något som liknar en tolkas av PHP som ett heltal, i denna form.
Du vill bara att skapa ett n med n multiplikationstabellen.
>> Så om användaren lämnar 10, vill vi har en 10 med 10 multiplikationstabellen.
Om användaren lämnar ett 12 vill vi en 12 genom 12 multiplikationstabellen.
Bara så att du kan se vad Vi kör på här,
vi tar en titt på den här filen i min IDE.
>> Så här i IDE, jag har mult_form.html.
Jag klickar på den.
Allt jag vill göra är att skicka ett värde.
Skriv in 10, slog in.
Och tydligen, mult_table.php, som Vi kan se på toppen finns i webbadressen,
Jag skapar en 10 av 10 multiplikationstabell.
>> Om jag skriver 15 och slå in, nu har jag har en 15 med 15 multiplikationstabellen.
Jag, naturligtvis inte kommer att visa du innehållet i mult_table.php,
eftersom det skulle ta det roliga av detta hemma övning.
Men det är ett bra sätt att få lite öva att arbeta med PHP loopar
och POST, mycket enkel, förhoppningsvis stressfri exempel bara
att göra en lite övning.
Och jag har en liten CSS pågår här för att göra min individuella bord
celler lossna en rättvis sorts lite och ser lite mer
som en multiplikationstabellen, i stället för bara text bara
typ av sitter där.
Den sista super globala vi pratar om i den här videon är något som kallas
$ _SESSION.
Och kanske detta är faktiskt det bästa exemplet på något
vi skulle överväga global.
Det är en annan array.
Det är en annan associativ array.
Men den är tillgänglig genom varje PHP-fil som finns i vårt system.
>> Vi behöver inte lämna in Information en sida i taget
som vi gör med GET och POST.
Det är alltid där.
Och så det här är bra för en sida där du är inloggad, till exempel,
och du vill att dina inloggningsuppgifter att fortsätta från sida till sida till sida.
>> Du kan bara starta en session och sedan använda $ _SESSION att spara saker som
användarens namn, eller användarens ID-information, och så vidare.
Och att informationen kommer att finnas kvar i $ _SESSION Tills du förstöra sessionen
lite senare.
>> Skriva dynamiska webbplatser med PHP gör dem mycket bättre.
Dina webbplatser blir mycket dynamisk, och du inte
måste göra för mycket mer än vad du annars skulle ha gjort precis
gör det med HTML.
Men det kräver övning, en hel del övning.
>> Du vet redan hur man arbetar med C, och så hoppa till PHP är inte alltför svårt.
Vad är kanske lite lite knepigt fungerar
med denna nya idé om GET och POST och kanske blanda din HTML och PHP
tillsammans.
Men också vara medveten om att internet är en stor databas med information.
Och PHP dokumentation finns på många ställen, men kanske mest
kanoniskt vid php.net.
Och du kan hitta det, massor av olika funktioner,
och användningsfall, och exempel på exempel, vid exempel.
Där om du vill försöka siffra ut hur man gör något, oddsen är,
någon har förmodligen gjort det innan du.
Och du kan använda dem som inspiration att genomföra vad
det är du försöker genomföra alltför.
>> Jag är Doug Lloyd.
Detta är CS50.