>> DOUG LLOYD: Svo í okkar vídeó á PHP setningafræði,
við ræddum mikið um hvernig PHP er hægt að nota á the stjórn lína
til að keyra forrit á þann hátt sem við erum nokkuð kunnugur frá C.
En eins og ég nefndi líka í þeirri vídeó, PHP
var upphaflega þróað til framkvæma vefur forritun, vefsíður.
Og svo í þessu myndbandi sem við erum að fara að tala um hvernig við
nota PHP í þróun vefur samhengi.
>> Við vitum, nú þegar, frá Vídeó okkar á HTML,
sem vefsíður eru byggð út af a setja af HTML tags
að merkingu skilgreina uppbyggingu vefsíðu.
En vefsíður sem eru byggð með hreinu HTML
þjást af mjög, mjög alvarlegt takmörkun.
>> Og til að sýna þessa takmörkun, skulum hafa eftirfarandi í huga.
Svo nú vil ég að byggja upp vefsíðu að þegar notandi heimsækir það,
það gefur mér núverandi tími í Cambridge, Mass.,
sýna það í nýjustu mínútu.
Ef ég var að gera þetta núna, Ég gæti sagt eitthvað eins og þetta.
Núverandi tími í Cambridge-- þannig að ég hef HTML tags, höfuð merki, titill tags,
líkami tags-- straumnum tími í Cambridge er 14:08,
prenta út her sinn.
>> Hvað gerist ef það er nú 02:09, 14:09?
Jæja svo langt, með HTML, ég hef að fara í og ​​breyta því í 14:09.
Og þá einni mínútu síðar Ég verð að breyta því aftur.
Og eins og þú geta ímynda sér, það er líklega það versta starf alltaf.
Þú ert vefstjóri fyrir vefsíðu, og með hverri mínútu, 24 tíma á dag,
þú þarft að uppfæra núverandi tíma með handvirkt opna time.html og breyta
bara að runu af kóða til að segja Núverandi tími í klukkustundum og mínútum.
Það er líklega ekki mjög gott að nota auðlindir okkar,
bæði menn og computational.
>> Vefsíður sem eru allt HTML eru alveg truflanir.
Eina leiðin sem þú getur uppfært efni, eins og við höfum bara séð,
er að höndunum opna slíkar uppspretta skrár, breyta þeim og bjarga þeim.
Og síðan þegar notandi endurnýjast á síðunni,
eða heimsækir síðu fyrir fyrsta tími, þeir fá það efni.
En aðeins vegna þess að við höfum handvirkt breyta henni.
>> Ef við byrjum að blanda smá PHP í það, númer okkar er hægt að fá mikið sveigjanlegri.
Og við getum haft leið fyrir síður okkar að vera dynamic, eða endurnýja sig,
án þess að þurfa léleg okkar vefstjóri í fyrra dæmi
að vera handvirkt að uppfæra hluti.
Þeir geta gert það sjálfkrafa.
Við þurfum ekki að grípa.
Við getum fengið smá svefn.
Sem er líklega gott ef þú ert að gera a einhver fjöldi af forritun á vefnum.
>> Svo í CS50 IDE, hlaupa við a vefþjónn heitir Apache.
Það er mjög algengt, opinn uppspretta vefur framreiðslumaður kerfi.
Þetta kerfi hefur getu til að túlka
PHP, sem er að fara til að vera gagnlegt ef þú vilt gera allir PHP forritun.
>> Og í CS50 IDE, höfum við stjórn til að gera þetta mjög auðvelt að gera,
apache50 byrja.
Og þá að rista Slóðin, rista til, rista
dir, það er bara mjög algeng leið til að sem gefur til kynna hvað þú hefur tilgreint hér
er leið til að tiltekin skrá sem þú
langar að vera rót staður, eða rót síðu,
eða möppuna sem netþjóninn þinn við að athuga skrár og þjóna
þá upp til viðskiptavina sem þess óska ​​þá.
Svo skulum skjóta yfir CS50 IDE, bara til að sýna þér, mjög fljótur, hvernig þetta virkar.
>> Svo hér í CS50 IDE, ég er í Skrá kallað vika Zero Nine.
Og ég hef two-- ég hef undirritað LS stjórn bara
að ofan til að sýna þér að ég hef tveir framkvæmdarstjóra í hér, PHP,
sem er sett af skrám sem ég notaði í setningafræði PHP vídeó, og þá PHP-vefur,
sem er sett af skrám sem ég langar að nota í þessu myndbandi.
>> Og ég vildi eins og til að byrja a vefur framreiðslumaður dæmi
með innihaldi PHP-vefur möppu sem skrár eru verið að bera upp.
Svo hvað er ég að fara að gera?
Ég ætla að slá apache50 pláss byrja, rúm PHP, þjóta vefur.
Það er leið til að skrá frá þar sem ég er nú.
Þá ég högg á Enter.
Það er að fara að gera a smá dót hér.
Og þá er að fara að segja, Apache byrjaði með góðum árangri.
Síða þín er nú í boði at-- og þá er það URL fyrir síðuna.
Svo hvað er ég að fara að gera?
Ég ætla að fljótt að afrita þetta.
Og ég ætla að opna up-- og Ég þysja út smá here--
Ég ætla að opna a nýr flipi í Chrome.
Og ég ætla að heimsækja þessi slóð.
>> Ég ætla að ýta á Enter.
Það er að fara að hlaða.
Og ég ætla að minnka það aftur.
Og við getum séð hér er Innihald PHP vefur skrá minn.
>> Svo nú hvað er í grundvallaratriðum að gerast hér er dæmi mitt CS50 IDE
er að þjóna upp þessar skrár til hver sem óskar þeim.
Og á meðan á þetta video, munum við raða á
taka a líta á fullt af þessum mismunandi skrár í samhengi.
>> Til að prófa að Apache þínu Miðlarinn er að vinna,
sem er almennt að fara að vera raunin í CS50 IDE,
en ef þú gerir þetta meira almennt, og þú byrjar að byggja upp eigin þinn vefur
netþjónum, það er mjög algeng tegund af flaumi til,
"halló heimur," það er yfirleitt notað fyrir PHP vefur þróun.
Sem er að hafa skrána sem samanstendur af aðeins þessum code--
a PHP skiltákn sett með PHP upplýsingar, svigum, semíkommu á milli.
Sem er í grundvallaratriðum a sérstakur PHP virka sem segir þér
hvaða útgáfa af PHP þú ert að keyra.
>> Svo í CS50 IDE, ég hef sem skrá í boði bara
til að sýna þér hvað þetta myndi líta út.
Þannig að ég er að horfa á vísitölu minn frá PHP dæmi mínu.
Apache dæmi er í gangi innihald PHP-vefnum.
Og ég er með skrá hér kallað info.php.
>> Ég ætla að smella á hann, zoom út.
Þetta er það sem þú ert að fara að sjá, ansi mikið.
Þetta er bara að segja mér að Apache miðlara minn er að vinna.
Og þetta er virðist, útgáfa af PHP sem ég er að keyra.
Þetta er byggður á hliðstæðum mín að "Halló heimur".
>> Þannig að ég veit það eru starfræktar.
Þannig að við erum gott að fara.
Við getum haldið áfram héðan.
>> Svo skulum rifja það Hvenær dæmi við vorum
að tala um með lélega vefstjóra okkar sem þurfti að uppfæra síðuna stöðugt.
Þetta gæti verið festa fyrir hvernig Ég myndi innleiða hlutina
þannig að vefstjóri ekki að halda að uppfæra tímann.
Það myndi bara svona gerast sjálfkrafa.
>> The niðri, HTML, það er nokkuð svipuð, með einni undantekningu.
En hér er ég hef fengið nokkrar PHP efst.
Ég hef greinilega, kallað þetta virka date_default_timezone_set.
>> Og við ekki tala um allt þessar aðgerðir í CS50,
vegna þess að PHP er sennilega tugir þúsunda.
Það gæti verið hluti af óákveðinn greinir í ensku ýkjur, en það gæti ekki verið.
Það er got a einhver fjöldi af aðgerðum byggð í.
Og svo er þetta fall virðist setur tímabelti sem US / Eastern,
sem er tímabelti sem ég nú í að gera þetta myndband.
>> Þá er ég að hringja í virka heitir, dagsetning.
Og virðist ætla ég að geyma í HIS eitthvað sem kallast, tíma.
Svo hvað er að gerast hér?
>> Jæja, í grundvallaratriðum er það gerast er, ég er að hringja
að einhverjum miðlara sem er að fara að segja mér hvað tíminn nú er.
Og ég er að umbreyta henni í formi klukkustundir, mínútur, sekúndur.
Og ástæðan að það er höfuðborg H er þetta er að fara að gefa mér 24 klst tíma, ekki 12
klukkustund tíma, sem væri lágstafir klst.
Og ég ætla bara að geyma það í breytu sem heitir, tími.
Þannig að annarri línu PHP það, sem kalla að aðgerðinni
dagsetning, er bara að fá einhver strengur, sem er
að fara að gefa mér dagsetninguna og tími, og fullt af öðrum upplýsingum.
Og fyrsta rifrildi þar, að hans, er bara útdráttur mikilvægu hlutverki
sem ég hugsa um í þessu dæmi, sem er klukkutíma, mínútu, og annað.
Svo er það allt sem er að gerast.
Svo ég geyma það í breytu $ tíma.
Og þá niður á við mjög botn þar, ég
hafa þessi styttingin fyrir prenta út núverandi tíma.
Þannig að ég ætla bara að fara að prenta út hvað núverandi tími er.
>> Svo skulum taka a líta á þetta í CS50 IDE og sjá hvernig við erum núna
sparnaður sem vefstjóra mikið af vandræðum.
Allt í lagi, svo hér er ég aftur aftur á the rót skrá
af Apache dæmi mínu.
Og ég er með skrá hér kallað time.php.
Ég ætla bara að fara að smella á það.
Og ég ætla að fletta upp, því við erum aðdregna í nokkuð langt.
Núverandi tími er 14:20:34.
Þannig að ég ætla að gera það klukkustundir, mínútur og sekúndur.
Og ég get hressa síðu og fá nýja tíma.
--41.
Ég ætla að uppfæra síðuna og fá nýja tíma, 44, 46, 47.
>> Svo er ég greinilega ekki breyta neinu sjálfur.
Ég er hér að endurhlaða síðuna.
Þannig að ég get ekki aftur það breyta því.
Og ég lofa þér, ég er ekki hefur einhverjar bandamanna
sem eru að breyta skrá fyrir mína hönd á hlið.
>> Ég ætla bara að nota þessi PHP virka, tími, til að mynda tíma fyrir mig
sjálfkrafa.
Svo að jafnvel ef ég er sofandi, og vefur framreiðslumaður er í gangi,
notandinn sem heimsækir að síðan sé enn fara að fá nákvæmlega hvað klukkan er.
Svo er það mjög gott.
Ég hef gert síðuna mína meira dynamic með ekki of mikið PHP kóða.
Það var bara tvær línur af kóða og þá smá prenta yfirlýsingu.
Og þegar ég er með miklu meira dynamic síða
en það fyrsta dæmi sem við sáum í byrjun af the vídeó.
>> Svo, muna frá the vídeó á PHP setningafræði að þegar PHP túlkur keyrir
áætlun okkar, hundsar það allt það er ekki inni í PHP afmarkararnir,
skyrpa því.
Í því dæmi, það er hlutur að það var spúandi var HTML.
Og þetta þýðir að ég get nú intersperse HTML og PHP saman.
Þar sem túlkur verður bara hunsa HTML og bókstaflega framleiðsla það.
Sem er gott, ekki satt?
>> Vegna væntanlega, í lok dagsins,
Mig langar síðuna mína til smíðuð á HTML.
Þannig að allir vefur flettitæki geta túlkað það, eða skilja HTML á síðunni
og láta það sem eitthvað sem við getur raunverulega skilja eins og menn.
Og ég get bara notað PHP fyrir hluta af síðunni minni
sem krefjast afls, sem krefjast mig að hafa allt að uppfæra stöðugt.
The truflanir upplýsingar getur dvöl the sami.
>> OK, svo er það allt í lagi.
En hvers vegna vildi ég gera þetta?
Hvers vegna vildi ég blanda HTML og PHP?
Ég gæti bara prenta út alla HTML, með því að nota PHP prenta virka.
Hvers vegna fæ ég ekki að gera það?
Hugsaðu um það fyrir a second.
>> Hvers vegna, þegar ég gæti bara prenta out-- I gæti hafa línur PHP sem bara segja,
prenta HTML tag, prenthaus.
Hvers vegna fæ ég ekki að gera það?
Hvers vegna er ég að blanda PHP og HTML?
>> Jæja, ef þú heldur um það fyrir a second.
PHP, túlkurinn hefur að túlka það sem það sér.
Og svo það er að fara að hafa að framkvæma línu af kóða.
Prenta út HTML.
Prenta út opinn höfuð tag.
Prenta út opinn titill tag.
Það er að fara að þurfa að framkvæma og túlka
að hvert einasta skref á leiðinni.
Hvers vegna ekki bara láta túlkur bara gljái yfir
það sem hann ekki skilur og gera það sjálfkrafa?
Það er að fara að spara mér mikið af tíma að blanda HTML minn og PHP mína saman.
>> Og svo er það hvers vegna við gerum ekki bara að hafa opinn PHP skiltákn
og þá bara prenta út á allt Innihald síðunni okkar eins og einn risastór PHP
hringja í virka, Prenta, og þá nálægt PHP skiltákn og við erum að gera.
Svo er það hvers vegna við blanda þeim upp saman.
>> Svo langt, höfum við ekki séð of mikið af munur frá almennu PHP setningafræði.
Það hefur verið frekar einfalt.
Við höfum þegar séð spurningarmerki, jafnir.
Við sáum nokkra nýja virka símtöl, en ekkert í raun fínt að fara á.
Skulum kannski gera hlutina smá áhugamaður.
Hvað ef við viljum koma upplýsingum milli mismunandi PHP skrá,
þannig að kannski notandinn getur skila upplýsingum til mín.
Og þá gæti ég gert eitthvað með það á aðra síðu.
>> Svo hefur PHP stuðning eitthvað sem kallast Super Global
Breytur, sem hljómar nokkuð ógnvekjandi.
Þeir eru í raun bara risastór tengin fylki
sem hjálpa innleiða þetta virkni brottför
upplýsingum milli PHP skrá sem eru fyrirliggjandi á vefþjóninum okkar.
>> The fyrstur af þessum frábær Víðværur heitir $ _GET.
Og það er líklega einfaldasta að skilja.
Hvað gerist með $ _GET?
Jæja, í grundvallaratriðum, the notandi er að fara að skrifa auka upplýsingar
í lok slóðum okkar.
Og hvað þeir slá, miðað það er sniðinn á ákveðinn hátt
kallað fyrirspurn band, sem er bara a setja af helstu gildi pör aðskilin
með -merkið.
Þeir helstu gildi pör verður geymdar í $ _GET tengin array.
Og frá vídeó okkar á PHP setningafræði, við vitum
hvernig á að vinna með tengin fylki nú þegar.
Svo er hér dæmi um sumir PHP, þar kannski er ég
útdráttur öllum af the lykill gildi pör sem notanda til staðar í vefslóðinni.
Þannig að ég hef Open PHP mína skiltákn.
Ég er með framhandleggur lykkja.
Ég iterating yfir Super Global Array kallað $ _GET.
>> Og ég vil vera fær um að vísa bæði inni og verðmæti.
Og ég ætla bara að prenta þau út, hver á greinilega
eigin mgr tag þess hér.
Ég er að prenta út nokkur HTML og brúa gildi
af inni og gildi í þeirri yfirlýsingu.
>> Svo skulum taka a líta á hvernig þetta væri í raun vinna á IDE okkar.
Og kannski þetta mun hjálpa sýna smá
um hvað GET er í raun að gera.
Þannig að ég er aftur hingað í hvernig rót mína.
Og ég ætla að stækka í svolítið til að sýna þér
að ég hafa a skrá sem heitir, get1.php.
>> Svo skulum smella á get1.php.
Og ég er ekki að sjá hvaða efni.
Það er undarlegt, ekki satt?
Jæja, ekki raunverulega raunverulega.
Vegna þess að ég gafst ekki upp eitthvað í vefslóðinni.
Ég ætla að get1.php, en ég ekki veita neina lykill gildi pör
sem hluta af fyrirspurn band mitt.
Svo skulum bæta fyrirspurn band og sjá hvað þessi skrá getur gert.
>> Til að byrja með fyrirspurn band þú bara slá spurningarmerki.
Þá kannski ég segi nafn = Doug & ári = 2015.
Og þá mun ég ýta á Enter.
Nú eftir hvað er að gerast.
Ég er enn í get1.php.
En nú hef ég til staðar lykill gildi pör, og ég er
prentun þá út á eigin spýtur paragraph-- nafn, Doug-- ári, 2015.
Það er einmitt fyrir við bara sá á mynd í smá stund síðan.
>> Og ef ég vil kannski bæta við öðru lykill gildi par, & class = CS50.
Nú hef ég annar lykill gildi par sem er prentað út
þegar ég rifja slóðina aftur.
Nú er kannski þetta ekki sniðinn hræðilega vel.
Þannig að ég hef aðra útgáfu af get.php.
Það er get2.php.
>> Munurinn á þessu einn er að ég hef CSS skrá,
og það snið hlutina Smá meira vel fyrir mig.
Það er kannski ekki mest falleg CSS í heiminum.
En það er bara önnur leið til að gera það.
Þannig að ég get enn fengið aðgang breytum mínum með $ _GET.
Og í þessu tilfelli, ég er bara svona gera CSS aðeins meira fínt.
Og ef við skjóta yfir IDE mín fyrir annað,
Ég skal sýna þér í PHP mínu vefnum Skrá hér get2.php.
Við munum opna það upp, sumir HTML hér.
Apparently ég tengja í það CSS skrá Ég var að tala um.
Ég opna borð tag.
Og þá er hér framhandleggur lykkja minn.
>> Hér er það, það sem ég sýndi á mynd áður.
Eini munurinn er að ég hafa þennan lykil og gildi CSS
stíl sem ég er að beita henni.
En það er allt sem ég er að gera, er ég iterating yfir $ _GET að fá allar
af helstu gildi pör.
>> Og ég er að prenta þá út sem borðið.
Og virðist ætla ég að forsníða lyklana á einhvern hátt, með <td class = "lykill".
Svo virðist gildir að sumir sem bekknum val í CSS skrá GET.CSS minn.
Og virðist ætla ég að prenta út gildi mínir algjörlega mismunandi hátt.
Sem er ansi mikið það sem við sáum hér, þar
gildi okkar voru prentuð með bláum bakgrunni,
og lyklar okkar voru prentuð með gulum grunni.
Svo er það hvernig ég er að fá þessi mismunandi stíl.
Þar sem ég er að nota mismunandi flokka CSS.
En það er ansi mikið það fyrir FÁ.
Eins og ég ætla bara að útdráttur upplýsingar.
Og í þessu tilfelli, ég er bara prenta það á skjáinn.
Ég fæ það út af the URL, og það er það sem GET gerir fyrir okkur.
>> Sérðu mögulegt Vandamálið hér þó?
Hvers vegna ættum við að kannski ekki að nota $ _GET?
Hvað ef, kannski, ég var að gera þessa fyrirspurn?
--to get3.php, sem ég þarft ekki á IDE minn.
Það er bara ímyndaður skrá.
En eftir hér sem virðist liggur lykilorð í.
Og kannski er lykilorðið mitt vandræðaleg.
Eða kannski ég vil ekki að fólk vita hvað lykilorðið mitt er, ekki satt.
>> Ef ég er að láta hann though-- ef ég er að nota the $ _GET aðferð, hvað sem gerist er,
sem er að fara að vera í vefslóðinni.
Svo gæti einhver illgjarn notandi vera fær um að sjá hvað ég er að gera.
Ég má velta þeim viðkvæmar upplýsingar.
Eða kannski er það ekki einu sinni illgjarn notandi.
Kannski er það bara vinur þinn sem stendur yfir öxlina.
Og nú eru þeir að vita lykilorðið Facebook-reikninginn þinn.
>> Og kannski þeir myndu ekki gera neitt með það.
En ef lykilorðið þitt væri lögð með $ _GET á Facebook,
nú þeir vita Facebook lykilorðið þitt.
Vegna þess að það er þarna í vefslóð þegar þú hefur gert að senda upplýsingar.
>> Og svo kannski er það ekki besti leið til að fara framhjá viðkvæmar upplýsingar.
Það er góð leið til að koma upplýsingum að við gerum ekki sérstaklega
þykir vænt um eins og að vera of viðkvæm.
Vegna GET er ansi hratt, með tilliti til hinna frábær Víðværur
við erum að fara að tala um.
En kannski ekki besta tól fyrir viðkvæmar upplýsingar.
>> Til að við gætum vilja til nota eitthvað sem heitir $ _POST,
sem er annar Super Global Variable.
Það er annar tengin array.
Svo virkar það ansi mikið nákvæmlega það sama og að fá.
Nema, í stað þess að útdráttur upplýsingar frá vefslóð,
það er eitthvað í gegnum HTTP haus.
Svo muna frá okkar vídeó á HTTP, talaði við
um hvernig vafrar, netþjóna, og viðskiptavinir samskipti.
Og upplýsingar er liðinn aftur fram og til baka í HTTP haus.
>> Með $ _POST, er yfirleitt sent í gegnum þá HTTP haus.
Og við munum oftast sjá $ _POST í samhengi að senda HTML formum.
Þú getur samt notað HTML formum að leggja það til að fá.
En þeir eru oftast notuð í tengslum við færslu.
>> Svo er hér dæmi um HTML formi.
Nú höfum við séð þetta áður, en við höfum ekki séð þessa hluti, aðgerð = "post.php".
Svo þegar við ræddum um form í Samhengi HTML, ég hafði Senda hnappinn.
Og ef þú manst, ég myndi smella á Senda og þá síðu bara hressandi,
ekki gera neitt.
>> Í þessu tilfelli, ég er að senda inn hvað ég slegið á þessu formi,
til PHP skrá sem heitir post.php.
Og virðist, eins og ég er að gera sem í þessu formi er með POST aðferð.
Svo hvert stykki af upplýsingum sem ég slærð inn þessa mynd
verður lögð gegnum HTTP haus.
>> Það verður aðgengilegt á post.php, því það er aðgerð af mynd mína.
Það verður að vera aðgengileg með því að fara að $ _POST.
Og virðist, eins og ég get fá á hvers frumefnis
með því tengin array er með þessa eiginleika,
nafnið eiginleiki inntak tags okkar.
>> Svo virðist sem ég get sagt $ _POST ferningur sviga nafn til að fá hvað sem notanda
slegið í fyrsta sviði.
Og $ _POST lykilorð, af PW frekar, að fá á hvað notandinn slegið
í næsta reit.
>> Svo skulum taka a líta á þetta yfir í CS50 IDE.
Svo hér erum við, og ég ætla stækka fyrir a second.
Og við höfum til skrá sem kallast post.html.
Ég smelli á post.html.
Á the mjög toppur hér er ég með mjög einfaldur vefur formi.
Það er formið sem við sáum bara á mynd annað síðan.
>> Ég get slegið, Doug, og ég get Sláðu inn lykilorðið mitt, sem við öll
veit er squadgoals.
Og ég mun högg á Senda.
Og virðist, að leggur til post.php.
Og ég er greinilega prentun sem.
Þannig að ég ætla að fá losa af öllum öryggi sem POST gefur mér bara með því að prenta út
notandanafn og lykilorð.
>> Nafn notanda er Doug.
Lykilorð notandans er squadgoals.
Hvernig gerði ég þetta?
Jæja, skjóta yfir IDE aftur fyrir annað.
Við munum skruna niður til að taka a líta á post.php, sem var
aðgerð sem ég nota til að leggja hér.
Það var aðgerð á HTML formi mínu.
Og það er allt sem ég er að gera.
Nafn notanda er, og ég er prentun út innihald $ _POST "nafn".
Og þá lykilorð notandans er $ _POST "lykilorð".
Þannig að ég fékk þessar upplýsingar með því að senda HTML formi.
Og ég get nú draga hana með $ _POST vegna þess að aðferðin sem ég nota til að senda
gögn með því formi var POST aðferð.
>> Nú er það líklega ekki svo great-- ég ætla
til að fara aftur í annað að setja here-- okkar
það er sennilega ekki svo mikill ef ég er senda upplýsingar með POST,
sem er ostensibly öruggari.
Það er líklega ekki svo mikill ef ég er að gera það og þá
prenta út lykilorð notandans.
Það er ætlast til að vera öruggari.
>> OK, en það er ekki alveg öruggt.
Og svo í þetta litla runu hér vil ég
bara vekja athygli þína á nokkrum öryggi gagna áhyggjur, bara eitthvað
að hugsa um eins og þú ert vinna eða nota internetið.
Þetta er bara eitthvað til að íhuga.
>> Ég sagði þér að upplýsingar senda í gegnum HTTP haus
þegar þú notar POST aðferð.
Sem þýðir að þeir eru ekki alveg örugg.
Þeir eru erfiðara að finna en nota GET aðferð, þar
það er bara rétt í vefslóðinni.
En það er samt leið til að finna það.
Og ég vil bara að sýna þú þetta þannig að þú kannski
byrja að hugsa um þetta eins og þú ert að vinna eða nota
vefsíður og senda inn lykilorð, og kannski með
sama lykilorð í fullt af mismunandi stöðum.
Vita sem er enn í raun frekar auðvelt að finna út lykilorð einhver er.
>> Og svo hér, ég ætla að fara til post2.html.
Og munurinn með post2.html og post2.php er nokkuð lúmskur.
Munurinn er bara að ég prenta ekki út
lykilorðið þegar ég skila mynd.
>> Þannig að ég ætla að slá í, Doug.
Og ég ætla að slá í, squadgoals, jafnvel
þó við vitum að er lykilorðið.
Áður en ég senda inn mynda þó, ég ætla
að opna Developer Tools, bara til að sýna þér hvað er að fara að gerast hér.
Svo í Chrome, ég er bara að fara að lemja á F12.
Og það er að fara að opna minn Developer Tools á hægri hönd.
Ég hef ekki sent inn mynd ennþá.
Nú ætla ég að lemja Senda á formi mínu.
Og virðist, ég gerði kalla til, eða ég gerði beiðni
að post2.php, sem vit.
Ég ætla að smella á það.
>> Þá hérna, ég er að fara að smella á haus.
There 'a einhver fjöldi af efni að fara á hér.
En ef ég skruna niður að mjög botn, tilkynning rétt there-- dagatalið mitt
hefur lokað það fyrir second-- hægri það á mjög hornið,
name-- Doug, pw-- squadgoals.
Svo jafnvel þótt ég er að nota POST aðferð, sem er öruggari,
bara að vera meðvitaðir um að þegar þú gerir það, þú ert enn að senda upplýsingar
gegnum HTTP.
Og það getur samt verið fundið með andstæðing.
Það er bara eitthvað sem við erum að fara að þurfa að takast á við raunverulega.
Kannski er nokkrar leiðir til að dulkóða það okkar lykilorð áður en við senda þær,
sem myndi vera betri, sem ég ætla ekki að gera hér.
>> En bara að vera ljóst að Póst- Aðferðin hefur takmarkanir líka.
Það er framför yfir að komast í Skilmálar vera strax sýnilegur.
En það er ekki til fullnustu.
Svo er hér dæmi um a fljótur heima æfingu
sem þú getur notað til að fá sumir æfa vinna með PHP.
Búa eftirfarandi par af vefsíðum.
Fyrsta ætti bara að vera mjög einfalt mynda með sér reit og Leggja
hnappinn.
Svo mjög svipað og við bara gerði með post.html.
>> Og þá seinni skrá sem þú ættir að búa til
er skrá, PHP skrá, sem er von inntak, með POST,
og miðað við það sem notandinn slegið, sem þú getur tekið verður heiltala.
Þú þarft ekki að gera eitthvað villuprófun eða þess háttar.
Þú getur gert ráð fyrir að notandi verður gerð integer,
eða eitthvað eins og túlkað af PHP sem heiltala, í því formi.
Þú vilt bara að búa til n af n margföldun borð.
>> Þannig að ef notandi sendir 10, viljum við hafa 10 af 10 margföldun borð.
Ef notandi sendir 12, við viljum 12 af 12 margföldun borð.
Bara svo þú getur séð hvaða við erum að aka á hér,
við munum taka a líta á þessi skrá IDE mínu.
>> Svo hér í IDE, ég mult_form.html.
Ég smella á hann.
Það eina sem ég vil gera er að skila gildi.
Tegund í 10, högg á Senda.
Og virðist, mult_table.php, sem getum við séð á toppnum í vefslóð,
Ég er að skapa 10 af 10 margföldun borð.
>> Ef ég tegund 15 og högg Senda, nú er ég hafa 15 af 15 margföldun borð.
Ég er að sjálfsögðu ekki að fara að sýna þú innihald mult_table.php,
vegna þess að það myndi taka gaman út af þessu heima æfingu.
En það er frábær leið til að fá smá æfa vinna með PHP lykkjur
og POST, mjög einfalt, vonandi streitu frjáls dæmi, bara
að gera a lítill hluti af starfi.
Og ég hef fengið smá CSS fara á hér til þess að gera einstaka mitt borð
frumur bara svona skjóta burt a svolítið og líta aðeins meira
eins og margföldun borð, öfugt við bara texta bara
konar sitja þar.
Síðasti frábær alheims við munum tala um í þessu myndbandi er eitthvað sem kallast
$ _SESSION.
Og kannski er þetta í raun besta dæmið um eitthvað
við myndum íhuga heimsvísu.
Það er annað array.
Það er annar tengin array.
En það er aðgengilegt í gegnum alla PHP skrá sem er til staðar á kerfinu okkar.
>> Við þurfum ekki að leggja Upplýsingar eina síðu í einu
eins og við gerum með FÁ og POST.
Það er alltaf til staðar.
Og svo er þetta frábært fyrir síðu þar sem þú ert skráður í, til dæmis,
og þú vilt innskráningarupplýsingar þínar að hverfa frá síðu til síðu til síðu.
>> Þú getur bara byrjað fundi og þá nota $ _SESSION að spara hluti eins
nafn notanda, eða notandinn er ID upplýsingar, og svo framvegis.
Og að upplýsingar verði áfram í $ _SESSION Þar til þú eyðileggja fundur
svolítið síðar.
>> Ritun dynamic vefsíður með PHP gerir þá mikið betri.
Síður þínar verða mjög dynamic, og þú þarft ekki
þarft að gera of mikið meira en það sem þú annars hefði gert bara
gera það með HTML.
En það þarf æfa, a einhver fjöldi af æfa.
>> Þú veist nú þegar hvernig á að vinna par C, og svo er ekki of erfiður stökk á PHP.
Hvað er kannski svolítið dálítið erfiður er að vinna
með þessari nýju hugmynd af fá og POST, og kannski blanda HTML og PHP þinn
saman.
En einnig að vera meðvitaðir um að internetinu er mikill geymsla upplýsinga.
Og skjöl PHP er í boði á mörgum stöðum, en kannski mest
canonically á php.net.
Og þú getur fundið það, hellingur af mismunandi aðgerðir,
og nota tilvikum, og dæmi á dæmi, á dæmi.
Þar sem ef þú vilt reyna tala út hvernig á að gera eitthvað, eru líkurnar,
einhver er sennilega gert það áður en þú.
Og þú getur notað þá sem innblástur til að hrinda hvað
það er sem þú ert að reyna að hrinda í framkvæmd líka.
>> Ég er Doug Lloyd.
Þetta er CS50.