>> Doug LLOYD: Taigi mūsų Vaizdo PHP sintaksė,
mes kalbėjome daug apie tai, kaip PHP gali būti naudojamas komandų eilutėje
paleisti programas tokiu būdu, kad mes gana gerai susipažinęs su iš C.
Bet kaip aš taip pat paminėjo, tame video, PHP
iš pradžių buvo sukurtas įgyvendinti Web programavimas, interneto svetainėse.
Ir taip šiame video mes ketiname kalbėti apie tai, kaip mes
naudoti PHP interneto plėtros kontekste.
>> Mes žinome, jau nuo Mūsų vaizdo HTML,
kad tinklapis yra pastatytas iš visų HTML žymes rinkinys
kad semantiškai apibrėžti iš tinklalapio struktūra.
Bet svetainių, kurios yra pastatytas su gryno HTML
kenčia nuo labai, labai rimtas apribojimas.
>> Ir iliustruoti šį apribojimą, Apžvelkime šiuos.
Taigi, dabar aš noriu sukurti tinklalapį kad, kai vartotojas apsilanko IT,
tai suteikia man srovę laikas, Cambridge, Mass.,
ją rodyti iki naujausios minutę.
Jeigu aš buvo padaryti šią teisę dabar Galėčiau pasakyti kažką panašaus į tai.
Dabartinis laikas Cambridge-- todėl turiu HTML žymes, galvos žodžius, pavadinimas žymės,
kūno tags-- srovę Laikas Kembridžo yra 14:08,
spausdinti karinę laiką.
>> Kas atsitiks, jei tai dabar 02:09, 14:09?
Na iki šiol, su HTML, turiu eiti ir pakeisti jį į 14:09.
Ir tada vieną minutę vėliau, Turiu pakeisti jį dar kartą.
Ir kaip jūs galite įsivaizduoti, kad tai tikriausiai blogiausias darbas bet kada.
Jūs esate tinklalapiui redaktorius, ir kiekvieną minutę, 24 valandas per parą,
Jums reikia atnaujinti esamą laiką rankiniu būdu atidaryti time.html ir keičiant
tik, kad kodo fragmentą pasakyti Dabartinis laikas valandomis ir minutėmis.
Tai tikriausiai nėra labai gerai panaudoti savo išteklius,
žmogiškųjų ir skaičiavimo.
>> Tinklalapiai, kurie visi yra HTML yra visiškai statiška.
Vienintelis būdas galite atnaujinti turinys, kaip mes ką tik matėme,
yra rankiniu būdu atidaryti tuos šaltinį failai, juos redaguoti ir išsaugoti juos.
Ir tada, kai vartotojas atgaivina puslapį,
arba apsilanko puslapyje pirmas laikas, jie bus gauti naujausią turinį.
Bet tik todėl, kad mes rankiniu būdu jį redagavo.
>> Jei pradėsime maišyti šiek tiek PHP ten, Mūsų kodas gali gauti daug lankstesnis.
Ir mes galime turėti mūsų puslapiuose būdas būti dinamiška, ar atnaujinti patys,
nereikalaujant mūsų vargšams administratoriui ankstesniame pavyzdyje
būti rankiniu būdu atnaujinti dalykus.
Jie gali tai padaryti automatiškai.
Neturime leisti įstoti į bylą.
Mes galime pamiegoti.
Kuris yra turbūt geras dalykas, jei darai web programavimas daug.
>> Taigi CS50 IDE, vedame Web serveris vadinamas "Apache.
Tai labai dažnai naudojamas, atviro kodo žiniatinklio serverio sistema.
Ši sistema yra gebėjimas interpretuoti
PHP, kuri bus naudinga, jei norite padaryti bet PHP programavimo.
>> Ir CS50 IDE, mes turime komandą kad tai labai lengva padaryti,
apache50 pradėti.
Ir tada, kad velniop kelias, velniop, velniop
rež, tai tik tikrai paplitęs būdas nurodant, ką jūs čia nurodyta
yra kelias į ypač katalogas kad jūs
nori būti šaknis Svetainės arba šaknis puslapis
arba aplanką, iš kurio jūsų žiniatinklio serverio pradės nagrinėti bylas ir tarnauti
juos klientams, kurie jas prašo.
Taigi leiskite pop perkelti į CS50 IDE, tik parodyti jums, tikrai greitai, kaip tai veikia.
>> Taigi čia CS50 IDE, aš A katalogas vadinamas Savaitė nulis devyni.
Ir aš turiu two-- Turiu įvykdytos LS komanda tiesiog
pirmiau parodyti jums, kad aš turiu du katalogai čia, PHP
kuris yra failų rinkinys, kad aš naudojamas PHP sintaksė vaizdo, tada PHP-interneto,
kuri yra failų rinkinys, kad aš norėtų naudoti šį vaizdo įrašą.
>> Ir aš norėčiau pradėti interneto serverio egzempliorius
su PHP Web aplanko turinį kaip failai įteikus iki.
Taigi, ką aš ketinu daryti?
Aš ketina įvesti apache50 erdvę pradėti, erdvė PHP, brūkšnys interneto.
Štai į katalogą kelias iš kur aš šiuo metu esu.
Tada aš paspauskite Enter.
Ji ketina padaryti šiek tiek daiktų čia.
Ir tada jis ketina pasakyti, Apache pradėjo sėkmingai.
Jūsų svetainė dabar yra at-- ir tada ten už svetainės URL.
Taigi, ką aš ketinu daryti?
Aš ruošiuosi greitai nukopijuoti tai.
Ir aš ruošiuosi atidaryti up-- ir Aš nutolinti truputį here--
Aš ruošiuosi atverti naujas skirtukas "Chrome".
Ir aš ruošiuosi aplankyti šį URL.
>> Aš ruošiuosi paspauskite Enter.
Tai vyksta įkelti.
Ir aš nutolinti dar kartą.
Ir matome, čia yra Mano turinys PHP Web Directory.
>> Taigi, dabar, kas iš esmės vyksta Čia yra mano pavyzdys CS50 IDE
tarnauja iki šių failų Bet kas, kas juos prašo.
Ir virš žinoma Šis vaizdo įrašas, mes rūšiuoti
pažvelgti iš jų krūva išvaizdą įvairius failus kontekstą.
>> Norėdami išbandyti, kad jūsų Apache serveris veikia,
kuris paprastai vyksta būti atvejis CS50 IDE,
bet jei jums tai padaryti apskritai, ir pradėdami kurti savo web
Serveriai, ten tikrai bendra tarsi analoginių prie,
"hello world", tai yra dažniausiai naudojama PHP Web Development.
Kuris yra turėti failą sudaro tik šios code--
PHP atskirkite rinkinys su PHP info, skliaustai, kabliataškiu tarp.
Kuris iš esmės yra ypatinga PHP funkcijos, kad jums pasakys,
kokia versija PHP dirbate.
>> Taigi CS50 IDE, turiu kad failas prieinama tik
parodyti jums, ką šis atrodys.
Taigi aš žiūriu mano indeksą iš mano PHP pavyzdžiui.
Mano Apache atvejis veikia PHP-Web turinys.
Ir aš turiu failas čia vadinamas info.php.
>> Aš ruošiuosi jį spustelėkite, nutolinti.
Tai yra tai, ką jūs ketinate pamatyti, gana daug.
Tai tik pasakojo, kad mano Apache serveris veikia.
Ir tai yra, matyt, PHP versija, kad Bėgu.
Tai yra mano analoginis "hello world".
>> Taigi aš žinau, viskas yra veikti.
Taigi mes gerai eiti.
Mes galime pradėti nuo čia.
>> Taigi leiskite peržiūrėti, kad laikas pavyzdys buvome
kalbame apie mūsų prastos webmaster kurie turėjo atnaujinti puslapį nuolat.
Tai gali būti dėl, kaip nustatyti Norėčiau įgyvendinti dalykus
taip, kad administratoriui nebuvo turi išlaikyti atnaujinimo laiką.
Tai tiesiog tarsi atsitikti automatiškai.
>> Toliau pateiktoje žemyn, HTML, tai gana panašūs, su viena išimtimi.
Bet čia aš turiu šiek tiek viršuje PHP.
Aš, matyt, pavadino šį funkcija date_default_timezone_set.
>> Ir mes nekalbame apie visa Šios funkcijos CS50,
nes PHP tikriausiai dešimtys tūkstančių.
Tai gali būti, kai jos buvo šiek tiek išpūtimas, tačiau ji gali būti.
Jis atšoko funkcijų pastatytas daug.
Ir taip, tai yra funkcija, matyt, nustato savo laiko juostą, kaip mus / Rytų,
kuri yra laiko juosta, kad aš Šiuo metu priimant šį vaizdo įrašą.
>> Tada aš skambinti į funkcija vadinama, data.
Ir, matyt, aš saugojimą JO kažkas vadinamas laiko.
Taigi, kas čia vyksta?
>> Na, iš esmės tai, kas vyksta yra, aš skambutį
tam tikru serverį, kuris turi pasakykite man, ką laikas metu.
Ir aš konvertuoti jį į formatą valandų, minučių, sekundžių.
Ir priežastis, tai kapitalas O tai ketina duoti man 24 valandų laiko, o ne 12
valandų laiko, kuris būtų mažosiomis val.
Ir aš tiesiog laikyti, kad į kintamąjį vadinamą, laiko.
Taigi, kad antroje eilutėje PHP ten, prie skambinimo funkcijos,
data, yra tik gauti kai eilutė, kuri yra
ketina duoti man datą ir laikas, ir iš kitos informacijos krūva.
Ir pirmasis argumentas yra, kad jo, tiesiog išgauti svarbų vaidmenį
kad aš rūpi šiame pavyzdyje, kuris yra valandos, minutės, ir, antra.
Taigi, kad "viskas, kas vyksta.
Taigi, aš laikyti, kad kintamojo $ metu.
Ir tada žemyn labai apačioje, aš
turėti, kad sutrumpinta spausdinti esamą laiką.
Taigi, aš tik ketina spausdinti , kas dabartinis laikas yra.
>> Taigi leiskite pažvelgti tai CS50 IDE ir pamatyti, kaip mes dabar
taupyti, kad administratoriui daug problemų.
Gerai, kad čia aš vėl atgal į šakninį katalogą
mano Apache pavyzdžiui.
Ir aš turiu failą čia vadinamas time.php.
Aš tik ketina paspausti, kad.
Ir aš slinkti aukštyn, nes mes Mastelis gana toli.
Dabartinis laikas yra 14:20:34.
Taigi darau tai valandų, minutėmis ir sekundėmis.
Ir aš galiu atnaujinti puslapis ir gauti naują laiką.
--41.
Aš ruošiuosi atnaujinti puslapį ir gauti naują laiką, 44, 46, 47.
>> Taigi, aš esu akivaizdžiai nėra kažką pakeisti save.
Aš čia atnaujinti puslapį.
Taigi, aš negali būti ten atgal jį redaguoti.
Ir aš jums pažadu, aš ne jokių konfederatai
kurie redaguodami failą mano vardu pusėje.
>> Aš tik naudojant, kad PHP funkciją, laikas, generuoti man laikas
automatiškai.
Taigi, kad net jei aš miega, ir mano žiniatinklio serveris veikia,
vartotojas, kuris apsilanko, kad puslapis yra vis dar ketinate gauti tiksliai esamą laiką.
Taigi tai gana gera.
Aš atlikau mano svetainę labiau dinamiškas su ne per daug PHP kodą.
Tai buvo tik dvi eilutės kodą ir tada šiek tiek spausdinimo ataskaitoje.
Ir jau turiu daug labiau dinamiškas svetainė
negu pirmajame pavyzdyje matėme ties vaizdo pradžioje.
>> Taigi, prisimenu iš PHP sintaksė vaizdo kad kai PHP interpretatorius veikia
Mūsų programa, ji ignoruoja viską tai ne viduje PHP separatoriai,
spjaudytis jį.
Be to, pavyzdžiui, tai, ką dalykas kad ji buvo spjaudė iš buvo HTML.
Ir tai reiškia, kad galiu dabar prikaišioti HTML ir PHP kartu.
Kadangi vertėjas tiesiog ignoruoti HTML ir tiesiog išėjimą.
Kuris yra gera, tiesa?
>> Nes matyt, Dienos pabaigoje,
Norėčiau savo svetainę į būti pagamintos iš HTML.
Taigi, kad bet kurios interneto naršyklės gali interpretuoti tai, ar suprasti puslapyje HTML
ir padaryti jį kaip kažką, kad mes iš tikrųjų gali suprasti kaip žmogui.
Ir aš galiu naudoti tik PHP už mano svetainę dalys
reikalauja dinamiškumo, kad reikia mane turėti dalykų, kad atnaujinti nuolat.
Statinis informacija gali likti tas pats.
>> Gerai, kad viskas gerai.
Bet kodėl aš norėčiau tai padaryti?
Kodėl turėčiau maišyti HTML ir PHP?
Galėčiau tiesiog atsispausdinti visus HTML naudojant PHP spausdinimo funkciją.
Kodėl aš tai daro?
Pagalvokite apie tai sekundę.
>> Kodėl, kai aš galėjau tiesiog atsispausdinti out-- aš gali turėti linijas PHP, kad tik pasakyti,
Spausdinti HTML tegus, spausdinimo galvutė.
Kodėl aš tai daro?
Kodėl aš maišant PHP ir HTML?
>> Na, jei jūs manote apie tai sekundę.
PHP interpretatorius turi interpretuoti tai, ką jis mato.
Ir todėl jis ketina turėti vykdyti kodo eilutę.
Atsispausdinkite HTML.
Atsispausdinkite atviru viršumi žymą.
Atsispausdinkite atvira žymės pavadinimą.
Tai teks vykdyti ir interpretuoti
kad kiekvienu žingsnį būdu.
Kodėl ne tik tegul interpretatorius tiesiog Koloryzować
dalykų ji nesupranta ir tai padaryti automatiškai?
Jis ketina išsaugoti man daug laiko maišyti savo HTML ir PHP mano drauge.
>> Ir taip, tai kodėl mes darome ne tiesiog atvirą PHP skyriklis
ir tada tiesiog atsispausdinti visą turinys mūsų puslapyje, kaip vieną milžinišką PHP
skambinti funkcija, spausdinti, ir tada Uždaryti PHP skyriklis ir baigsime.
Štai kodėl mes sumaišykite juos kartu.
>> Iki šiol mes nematėme per daug skirtumas nuo bendro PHP sintaksė.
Tai buvo gana paprasta.
Mes jau matėme klaustukas, lygūs.
Mes matėme keletą naujų funkcijų skambučių pora, bet nieko tikrai išgalvotas vyksta.
Leiskite gal padaryti dalykus šiek tiek mėgėjas.
Ką daryti, jei mes norime perduoti informaciją tarp skirtingų PHP failus,
kad gal vartotojas gali pateikti informaciją man.
Ir tada aš galėčiau padaryti kažką su juo į kitą puslapį.
>> Taigi PHP paramą kažkas vadinamas "Super Globalus
Kintamieji, kurie skamba gana awesome.
Jie tikrai tik Giant Association masyvai
kad padėti įgyvendinti šį funkcionalumas kitko
informacija tarp PHP failus, yra esama mūsų serveryje.
>> Pirmasis iš šių super globals vadinamas $ _GET.
Ir tai turbūt paprasčiausias suprasti.
Kas atsitinka su $ _GET?
Na, iš esmės, vartotojas ketina įvesti papildomą informaciją,
tuo mūsų URL pabaigoje.
Ir ką jie tipo, darant prielaidą, jis suformatuotas tam tikru būdu
vadinamas užklausos eilutę, kuri yra tik iš pagrindinių verčių porų rinkinys atskirti
pagal jungimo ženklus.
Tos rakto poros bus saugomi $ _GET masyvą.
Ir iš mūsų vaizdo PHP sintaksė, mes žinome,
kaip dirbti su Association masyvai jau.
Taigi čia yra pavyzdys kai PHP, kurioje gal aš
gavybos visi pagrindiniai vertės porų kad vartotojas, tiekiamą URL.
Taigi turiu Open PHP skyriklis.
Turiu foreach ciklą.
Aš Iteracja visoje Super Pasaulinis masyvas vadinamas $ _GET.
>> Ir aš noriu, kad būtų galima kreiptis tiek raktui ir vertę.
Ir aš tiesiog jų spausdinimą , ir kiekvienu atveju viena ant matyt,
savo dalis žyma čia.
Aš spausdinti šiek tiek HTML ir interpoliuojant vertes
raktas ir vertę į šio pareiškimo.
>> Taigi leiskite pažvelgti, kaip tai atrodo būtų faktiškai dirba mūsų IDE.
O gal tai padės iliustruoti truputį
ką gaunate iš tikrųjų daro.
Taigi, aš vėl čia mano interneto šaknis.
Ir aš priartinti A šiek tiek parodyti jums,
kad turiu failą pavadinimu, get1.php.
>> Taigi leiskite paspausti get1.php.
Ir aš nematau jokio turinio.
Tai keista, tiesa?
Na, tikrai ne iš tikrųjų.
Nes aš nepateikė nieko URL.
Aš ruošiuosi get1.php, bet aš nepateikė jokių rakto poros
kaip savo užklausos eilutę.
Taigi leiskite pridėti užklausos eilutę ir pamatyti, ką šis failas gali padaryti.
>> Norėdami pradėti užklausos eilutę jums tiesiog įrašykite klaustuką.
Tada gal aš sakau name = Doug & metai = 2015.
Ir tada aš paspauskite Enter.
Dabar pastebėti, kas vyksta.
Aš vis dar get1.php.
Bet dabar aš tiekiamas rakto poros, ir aš
spausdinti juos dėl jų pačių paragraph-- vardas, Doug-- metų, 2015.
Būtent kodas mes tiesiog pamačiau ant skaidrės prieš momentas.
>> O jei aš noriu gal pridėti kitą rakto pora, & class = CS50.
Dabar turiu kitą rakto pora, kad manimi išspausdinti
kai aš peržiūrėti URL dar kartą.
Dabar gal tai ne suformatuotas siaubingai gerai.
Taigi turiu kitą get.php versiją.
Tai get2.php.
>> Į šis skirtumas vienas Turiu CSS failą,
ir formatai dalykų šiek tiek daugiau gražiai man.
Tai gal ir ne pats Gražus CSS pasaulyje.
Bet tai tik dar vienas būdas tai daryti.
Taigi, aš vis dar galite gauti prieigą mano kintamųjų naudojant $ _GET.
Ir šiuo atveju, aš tiesiog rūšies priėmimo CSS šiek tiek daugiau išgalvotas.
Ir jei mes pop perkelti į Mano IDE antra,
Aš jums parodysiu, mano PHP web katalogas čia get2.php.
Mes ją atidaryti, kai HTML čia.
Matyt aš susiejimas, kad CSS failą aš kalbėjau apie tai.
Aš atidaryti lentelę žymą.
Ir tada čia mano foreach ciklas.
>> Čia yra tai, kad tai, ką aš parodė ant prieš skaidrę.
Vienintelis skirtumas yra tai, aš turi šį raktą ir vertės CSS
stilius, kad aš kreiptis į jį.
Bet tai viskas, ką aš darau, yra aš Iteracja visoje $ _GET gauti visus
iš pagrindinių verčių porų.
>> Ir aš jų spausdinimą, kaip stalo.
Ir, matyt, aš formatavimą raktus vienaip, su <td class = "rakto".
Taigi, matyt, taikomas kai klasė selektorių mano CSS failo GET.CSS.
Ir, matyt, aš spausdinti Mano vertybės visiškai kitaip.
Kuris yra gana daug ką matėme čia, kur
Mūsų vertybės buvo spausdinami su mėlyname fone,
ir mūsų raktai buvo spausdinami su geltoname fone.
Štai kaip aš gaunu tie įvairių stilių.
Kadangi aš naudoju skirtingus CSS klases.
Bet tai gana daug Get.
Kaip aš tiesiog išgauti informaciją.
Ir šiuo atveju, aš tiesiog spausdinimas jį į ekraną.
Gaunu ją iš URL, ir tai, ką GET daro už mus.
>> Ar matote galimas problema čia nors?
Kodėl mes gal nenorite naudoti $ _GET?
Ką daryti, jei, galbūt, aš buvo padaryti šią užklausą?
--to get3.php, kurį aš neturi mano IDE.
Tai tiesiog hipotetinis failą.
Tačiau pastebėti, kad čia, matyt, artimųjų savo slaptažodį.
O gal mano slaptažodis yra nepatogus.
O gal aš nenoriu žmones žinoti, ką mano slaptažodis yra teisinga.
>> Jei aš perduoti ją though-- jei aš naudoju $ _GET metodu, kas atsitinka, yra
kad tai bus į URL.
Taigi kai piktybinis vartotojas galėtų galės pamatyti, ką darau.
Aš gali būti perduoti juos slapta informacija.
O gal tai net ne piktybinis vartotojas.
Gal tai tik jūsų draugas, kuris stovi ant savo pečių.
Ir dabar jie žino savo slaptažodį "Facebook" paskyroje.
>> O gal jie nebūtų nieko su juo daryti.
Bet jei jūsų slaptažodis buvo pateiktas per $ _GET Facebook,
Dabar jie žino savo Facebook slaptažodį.
Nes tai tiesiai ten URL Kai baigsite pateikdami informaciją.
>> Ir taip galbūt tai ne pats geriausias būdas perduoti slaptą informaciją.
Tai geras būdas perduoti informaciją, kad mes ne itin
rūpi, kaip pernelyg jautri.
Kadangi GET yra gana greitai, palyginti su kitais super globals
mes ketiname kalbėti apie.
Bet gal ir ne geriausia priemonė už slaptos informacijos.
>> Norėdami, kad mes galbūt norėsite naudoti kažką vadinama $ _POST,
kuri yra dar vienas super pasaulinį kintamąjį.
Tai dar vienas masyvą.
Taigi ji veikia gana daug lygiai tas pats kaip GET.
Išskyrus tuos, vietoj to, ekstrahavimo informaciją iš URL,
ji kažką per HTTP antraščių.
Taigi prisimenu iš mūsų Vaizdo HTTP, mes kalbėjome
apie tai, kaip naršyklėse serveriai, ir klientai bendrauti.
Ir informacija perduodama atgal pirmyn ir HTTP antraščių.
>> Su $ _POST, informacija paprastai yra siunčiami per tuos HTTP antraščių.
Ir mes dažniausiai pamatyti $ _POST į galimybė pateikti HTML formas kontekste.
Jūs vis dar galite naudoti HTML formas pateikti daiktus gauti.
Bet jie paprastai naudojami Baigto kontekste.
>> Taigi čia rasite HTML formą pavyzdys.
Dabar mes matėme tai anksčiau, bet mes turime nemačiau šioje dalyje, action = "post.php".
Taigi, kai mes kalbėjome apie statusus kontekstas HTML, turėjau mygtuką Pateikti.
Ir jei jūs prisimenate, aš spustelėkite Pateikti ir tada tiesiog puslapis atnaujinamas,
nebuvo nieko daryti.
>> Šiuo atveju, aš pateikti ką aš tipo ne tokia forma,
į PHP failą pavadinimu post.php.
Ir, matyt, kaip aš darau, kad Šioje formoje naudojant POST metodą.
Taigi kiekvienas gabalas informacijos kad aš tipo į šią formą
bus pateiktas per HTTP antraščių.
>> Tai bus prieinama post.php, nes tai mano forma veiksmų.
Ji bus prieinama kreipdamiesi į $ _POST.
Ir, matyt, aš taip gali gauti ne kiekvieno atskiro elemento
su tuo masyvą yra su šio požymio,
pavadinimas atributas mūsų indėlis žymes.
>> Taigi, matyt, galiu pasakyti, $ _POST aikštė skliausteliuose vardas gauti bet vartotoją
atspausdintos pirmoje srityje.
Ir $ _POST slaptažodį, ir pw, o, gauti ne ką vartotojas įvedėte
antroje srityje.
>> Taigi leiskite pažvelgti tai CS50 IDE daugiau.
Taigi čia mes esame, ir aš priartinti sekundę.
Ir mes turime failą pavadinimu post.html.
Aš spustelėkite post.html.
Pačiame viršuje čia turiu labai paprastas interneto forma.
Tai forma, mes tik pamačiau ant skaidrės antras prieš.
>> Galiu tipo, Doug ir aš galiu įveskite slaptažodį, kurį mes visi
žinoti squadgoals.
Ir aš smogs Pateikti.
Ir matyt, kad pateikia post.php.
Ir aš, matyt, spausdinti, kad.
Taigi, aš atsikratyti visų saugumo kad po suteikia man tiesiog spausdinti
vartotojo vardas ir slaptažodis.
>> Vartotojo vardas Doug.
Vartotojo anketa slaptažodis yra squadgoals.
Kaip man tai padaryti?
Na, pop perkelti į IDE vėl sekundę.
Mes slinkite žemyn imtis Žvilgsnis post.php žvilgsnis, kuris buvo
veiksmų, kad aš naudojamas pateikti čia.
Tai buvo mano HTML formą veiksmų.
Ir tai viskas, ką aš darau.
Vartotojo vardas, ir aš spausdinimas dėmesį į $ _POST "pavadinimas" turinį.
Ir tada vartotojas slaptažodis yra $ _POST "slaptažodis".
Taigi man buvo suteikta, kad informacija pateikiant HTML formą.
Ir dabar galiu išgauti naudojant jį $ _POST nes Metodas naudojamas perduoti
duomenis su ta forma buvo POST metodas.
>> Dabar jis tikriausiai ne taip great-- aš ruošiuosi
grįžti sekundę mūsų nustatytą here--
tai tikriausiai ne toks didelis, jei aš esu pateikiant informaciją Pašto,
kuris yra tariamai saugesnis.
Tai tikriausiai ne toks didelis jei darau, kad ir tada
spausdinti vartotojo slaptažodį.
Tai turėtų būti saugesnis.
>> Gerai, bet tai nėra visiškai saugus.
Ir taip šis mažas fragmentą čia Noriu
tiesiog atkreipti Jūsų dėmesį į kai duomenų saugumo problemos, tiesiog kažkas
galvoti apie, kaip jūs esate darbo ar naudojantis internetu.
Tai tiesiog kažkas apsvarstyti.
>> Sakiau, kad informacija yra pateiktas per HTTP antraštes
kai jūs naudojate POST metodą.
Tai reiškia, kad jie nėra visiškai saugus.
Jie sunkiau rasti nei naudojant GET metodas, kai
tai tik teisė į URL.
Bet dar yra būdas jį rasti.
Ir aš tiesiog noriu parodyti jums tai, kad jūs gal
pradėti galvoti apie tai, kaip jūs dirbate, arba naudojant
svetainės ir pateikti slaptažodžiai, o gal naudojant
tas pats slaptažodis A daug skirtingų vietų.
Žinokite, kad yra dar tikrai gana lengva sužinoti kažkieno slaptažodį.
>> Ir taip čia aš ruošiuosi eiti į post2.html.
Ir skirtumas su post2.html ir post2.php yra gana subtilus.
Skirtumas yra tik kad aš ne atsispausdinti
slaptažodis kai aš pateikti formą.
>> Taigi, aš ruošiuosi įveskite Doug.
Ir aš ruošiuosi rašyti į, squadgoals, net
nors mes žinome, kad tai slaptažodis.
Prieš pateikite forma, nors aš ruošiuosi
atverti Kūrėjo įrankiai, tik parodyti jums, kas nutiks čia.
Taigi Chrome ", aš tik ketina hit F12.
Ir tai vyksta atverti savo Kūrėjo įrankiai dešinėje pusėje.
Aš dar nebūna formą.
Dabar aš ruošiuosi nukentėjo Pateikti ant mano forma.
Ir, matyt, aš padariau skambinti, arba aš pateikė prašymą
į post2.php, kuris turi prasmę.
Aš ruošiuosi spustelėkite, kad.
>> Tada per čia, aš ruošiuosi paspausti ant kolektoriaus.
Yra daug dalykų vyksta čia daug.
Bet jei aš slinkite žemyn į labai apačioje, dešinėje pranešimas there-- mano kalendorių
užblokavo jį už second-- teisė ten labai apatiniame kampe,
name-- Doug, pw-- squadgoals.
Taigi, nors aš naudoju POST metodas, kuris yra daugiau saugus,
tiesiog reikia žinoti, kad kai jūs padaryti, Jūs vis dar perduodant informaciją
per HTTP.
Ir ji vis dar gali būti rasti priešo.
Tai tiesiog kažkas mes ketiname turi spręsti su tikrai.
Gal ten keletas būdų užkoduoti mūsų slaptažodžius, kol mes juos siųsti daugiau,
kuris būtų geriau, kurį aš nesu daro čia.
>> Bet tiesiog reikia žinoti, kad po metodas turi trūkumų per daug.
Tai per GET pagerėjimas sąlygos yra iš karto pastebimas.
Bet tai nėra pilnas nustatyti.
Taigi čia pavyzdys, namuose pratybų greitai
kad jūs galite naudoti norėdami gauti kai praktika dirbant su PHP.
Sukurti tokią porą tinklalapių.
Pirmasis turėtų būti tiesiog labai paprastas suformuoti su vienu srityje ir Pateikti
mygtuką.
Taigi, labai panašios į tai, kas mes tiesiog padariau su post.html.
>> Ir tada antras failą, kurį turėtų sukurti
yra failas, PHP failą, kad tikisi prisidėti per POST,
ir remiantis ką vartotojas įvedėte, kuris galite manyti, bus sveikasis skaičius.
Jūs neturite daryti bet klaidų tikrinimas arba panašiai.
Galite manyti, kad vartotojas bus tipo sveikasis vertę,
ar kažkas panašaus į kurią aiškinama PHP kaip sveikasis skaičius, į tą formą.
Jūs tiesiog norite sukurti n pagal n daugybos lentelę.
>> Taigi, jei vartotojas pateikia 10, norime turi 10 iki 10 daugybos lentelę.
Jei vartotojas pateikia 12, norime 12 12 daugybos lentelė.
Tiesiog todėl jūs galite pamatyti, ką mes važiuojant čia
mes pažvelgti Šis failas mano IDE.
>> Taigi čia IDE, turiu mult_form.html.
Aš spustelėkite ją.
Viskas, ką aš noriu padaryti, tai pateikti vertę.
Tipas 10, nukentėjo Pateikti.
Ir, matyt, mult_table.php, kuris matome, viršuje yra URL,
Kuriu 10 iki 10 daugybos lentelė.
>> Jei aš tipo 15 ir nukentėjo Pateikti, dabar aš turėti 15 iki 15 daugybos lentelę.
Aš, žinoma, nesiruošia rodo Jūs Šio mult_table.php turinys
nes tai užtruktų įdomus iš šio namuose naudotis.
Bet tai puikus būdas gauti kai praktika dirbant su PHP kilpų
ir po, labai paprasta, tikiuosi streso pavyzdys, tiesiog
padaryti šiek tiek praktikos.
Ir aš turiu šiek tiek CSS vyksta Čia padaryti, kad mano individualų lentelę
ląstelės tiesiog rūšies pop off truputį ir atrodo šiek tiek daugiau
kaip daugybos lentelę, o ne tik tekstą tik
rūšies sėdi ten.
Paskutinis Super pasaulinė mes kalbame apie šiame video yra kažkas vadinamas
$ _SESSION.
O gal iš tikrųjų tai yra geriausias pavyzdys kažką
mes turėtų apsvarstyti pasaulio.
Tai dar vienas masyvas.
Tai dar vienas masyvą.
Bet tai yra prieinama per kiekvieną PHP failas, kuris egzistuoja mūsų sistemoje.
>> Neturime pateikti Informacija vienas puslapis vienu metu
kaip mes darome su GET ir POST.
Jis visada ten.
Ir todėl tai yra puikus puslapį kur jūs prisijungęs, pavyzdžiui,
ir jūs norite, kad jūsų prisijungimo informacija išlieka iš vieno puslapio į kitą puslapį.
>> Jūs galite tiesiog pradėti seansą ir tada naudoti $ _SESSION sutaupyti dalykų, pavyzdžiui,
vartotojo vardą arba vartotojo anketa ID informacija, ir taip toliau.
Ir kad informacija liks $ _SESSION, Kol jūs sunaikinti sesiją
šiek tiek vėliau.
>> Rašymas dinamines svetaines su PHP daro juos daug geriau.
Jūsų svetainės tampa labai dinamiška, ir jūs neturite
turi padaryti per daug daugiau nei tai, ką Jūs priešingu atveju būtų padaryta tik
tai daro su HTML.
Bet tai reikia praktikos, daug praktikos.
>> Jūs jau žinote, kaip dirbti su C, ir taip šokinėja PHP yra ne per sudėtinga.
Kas yra gal šiek tiek tiek sudėtinga dirba
šios naujos idėjos GET ir POST, o gal maišymo savo HTML ir PHP
kartu.
Bet taip pat reikia žinoti, kad internete yra didžiulis kapinynas informacija.
Ir yra prieinama PHP dokumentacija daugelyje vietų, tačiau bene
kanoniškai ne php.net.
Ir jūs rasite ten, daug skirtingų funkcijų,
ir naudoti bylas ir pavyzdžiai nuo pavyzdžių, gavusi pavyzdžius.
Kur, jei norite išbandyti ir išsiaiškinti , kaip ką nors padaryti, šansai yra,
nors tikriausiai tai padarė prieš jus.
Ir jūs galite naudoti juos kaip įkvėpimo įgyvendinti kokia
tai jūs bandote per įgyvendinti.
>> Aš Doug Lloyd.
Tai CS50.