>> Doug LLOYD: Allura tagħna video fuq sintassi PHP,
tkellimna ħafna dwar kif PHP jistgħu jintużaw fil-linja tal-kmand
biex imexxu programmi b'mod li aħna qed pretty familjari mal mit C.
Imma kif semmejt ukoll f'dak video, PHP
inizjalment kien żviluppat biex implimentazzjoni tal-ipprogrammar tal-web, websajts.
U hekk f'dan il-video aħna qed ser jitkellmu dwar kif aħna
użu PHP fil-kuntest iżvilupp tal-web.
>> Aħna nafu, diġà, minn vidjo tagħna fuq HTML,
li l-websajts huma mibnija out ta 'sett ta' HTML tags
li semantikament jiddefinixxu l-istruttura ta 'paġna web.
Iżda websajts li huma mibnija bl pur HTML
jbatu minn ħafna, limitazzjoni serja ħafna.
>> U biex juru din il-limitazzjoni, ejja jikkunsidraw dan li ġej.
Allura issa I trid tibni web page li, kull meta l-utent żjarat IT,
hija tagħti me-kurrent time fil Cambridge, Mass.,
wiri lill-aħħar minuta.
Jekk I kienet qed tagħmel dan id-dritt issa, I jista 'jgħid xi ħaġa bħal din.
Ħin kurrenti fl Cambridge-- so I jkollhom Tags HTML, tags ras, tags titolu,
korp tags---kurrent time fil Cambridge huwa 14:08,
stampar ta 'żmien militari.
>> X'jiġri jekk huwa issa 02:09, 14:09?
Well s'issa, ma HTML, għandi li jmorru fi u bidla li 14:09.
U mbagħad minuta wara, Għandi li jerġa 'jinbidel.
U kif tista 'timmaġina, dan huwa probabbilment l-agħar impjieg qatt.
Int l-webmaster għal paġna web, u kull minuta, 24 siegħa kuljum,
għandek bżonn biex taġġorna l-ħin kurrenti mill manwalment ftuħ time.html u li qed tinbidel
biss li snippet ta 'kodiċi jiġifieri l- ħin kurrenti f'sigħat u minuti.
Li probabbilment mhux ħafna użu tajjeb tar-riżorsi tagħna,
kemm umani kif ukoll komputazzjoni.
>> Websajts li huma kollha HTML huma kompletament statika.
L-uniku mod inti tista 'taġġorna kontenut, kif aħna stajt biss tidher,
huwa li manwalment tiftaħ dawk sors files, jeditjaw minnhom, u ħlief.
U allura meta l-utent refreshes-paġna,
jew iżur il-paġna għall-ewwel time, dawn ser jiksbu l-kontenut aħħar.
Iżda biss għaliex aħna ħadthom editjat dan manwalment.
>> Jekk nibdew xi taħlita PHP fil hemm, kodiċi tagħna tista 'tieħu ħafna aktar flessibbli.
U nistgħu jkollhom mod għall-paġni tagħna li tkun dinamika, jew jaġġornaw lilhom infushom,
mingħajr ma jeħtieġu foqra tagħna webmaster fl-eżempju preċedenti
li jkun manwalment aġġornament affarijiet.
Huma jistgħu jagħmlu dan awtomatikament.
Aħna ma jkollhom biex tintervjeni.
Nistgħu tikseb xi irqad.
Liema hija probabbilment ħaġa tajba jekk int tagħmel ħafna ta 'programmazzjoni web.
>> Għalhekk fl CS50 IDE, we run web server Apache imsejħa.
Huwa użat b'mod komuni ħafna, sistema web server open source.
Din is-sistema għandha l- kapaċità li tinterpreta
PHP, li se tkun utli jekk inti tixtieq li tagħmel xi programmazzjoni PHP.
>> U fl IDE CS50, għandna kmand biex jagħmlu dan faċli ħafna li tagħmel,
apache50 tibda.
U mbagħad li mmejla triq, mmejla għal, mmejla
dir, li jinsab biss mod verament komuni ta ' jindika dak li inti stajt speċifikat hawn
hija triq għal partikolari direttorju li inti
tixtieq li tkun l-għerq sit, jew il-paġna għerq,
jew il-folder li minnha web server tiegħek se tibda teżamina fajls u jservu
minnhom sa klijenti li jitolbuhom.
Mela ejja pop quddiem għall CS50 IDE, just biex nuruk, tassew mgħaġġla, kif taħdem din.
>> Allura hawn fil IDE CS50, jien fil- direttorju imsejħa Week Zero Disa.
U jien two-- I jkollhom eżegwit LS kmand biss
hawn fuq biex turi li inti li għandi żewġ direttorji fil hawn, PHP,
li huwa s-sett ta 'fajls li I użati fid l-video sintassi PHP, u mbagħad PHP web,
li huwa s-sett ta 'fajls li I tixtieq tuża f'dan il-video.
>> U nixtieq li jibdew eżempju web server
mal-kontenut tal-folder PHP web kif il-fajls huma li qiegħed ikun servut up.
Allura dak am I se jagħmlu?
I ser tip apache50 ispazju tibda, PHP ispazju, web sing.
Dik hija l-passaġġ għall-direttorju minn fejn I bħalissa am.
Imbagħad I hit Ikteb.
Li għaddej biex tagħmel ftit ta 'għalf hawn.
U allura li għaddej biex ngħid, Apache beda b'suċċess.
Your sit hija issa disponibbli u at-- allura hemm il-URL għas-sit.
Allura dak am I se jagħmlu?
Jien ser malajr Kopja ta 'din.
U jien ser tiftaħ up-- u I ser zoom out ftit here--
Jien ser jiftħu ġdid tab fil Chrome.
U jien ser iżuru dan URL.
>> Jien ser hit Ikteb.
Li għaddej biex tagħbija.
U jien ser zoom out mill-ġdid.
U nistgħu naraw hawn huwa l- kontenut ta 'direttorju tiegħi web PHP.
>> Allura issa dak li qed jiġri bażikament hawnhekk hija, ngħidu aħna tiegħi ta 'CS50 IDE
huwa li jservu up dawn il-fajls li xi ħadd li titlobhom.
U matul il-kors ta ' dan il-video, aħna ser issolvi ta
tagħti ħarsa lejn mazz ta 'dawn fajls differenti fil-kuntest.
>> Li tittestja li Apache tiegħek server qed taħdem,
li ġeneralment se li jkun il-każ fil CS50 IDE,
imma jekk inti tagħmel dan b'mod aktar ġenerali, u tibda bini web tiegħek stess
servers, hemm verament tip komuni ta 'analog għal,
"dinja hello," li normalment użat għall-web PHP iżvilupp.
Li huwa li jkun hemm fajl li jikkonsisti biss dan code--
delimetru PHP stabbiliti bl PHP info, parentesi, virgola bejniethom.
Li bażikament huwa speċjali Funzjoni PHP li jgħidlek
liema verżjoni ta 'PHP inti taħdem.
>> Għalhekk fl CS50 IDE, għandi dan il-fajl disponibbli biss
biex turi li inti dak li dan look like.
Hekk jien tħares lejn indiċi tiegħi minn PHP eżempju tiegħi.
Apache eżempju tiegħi qed taħdem il-kontenut tal PHP Web.
U għandi fajl hawn imsejjaħ info.php.
>> Jien ser ikklikkja, zoom out.
Dan huwa dak li int ser biex tara, pretty ħafna.
Dan huwa biss javżak me li server Apache tiegħi qed taħdem.
U dan huwa, apparentement, il- verżjoni ta 'PHP li niġri.
Dan huwa Analog tiegħi għal "bonjour dinja."
>> So I know affarijiet huma operattivi.
Allura aħna qed imorru tajjeb.
Nistgħu jipproċedu minn hawn.
>> Mela ejja tirrevedi dik Eżempju ħin konna
jitkellem dwar ma webmaster fqira tagħna li kellhom biex jaġġornaw il-paġna kostantement.
Dan jista 'jkun tiffissa għal kemm Nixtieq jimplimentaw affarijiet
sabiex il-webmaster ma għandhom iżommu aġġornament tal-ħin.
Biss Ikun tip ta ' jiġri awtomatikament.
>> Il stabbiliti hawn taħt, il-HTML, huwa pretty simili, ħlief għal eċċezzjoni waħda.
Imma hawn stajt ltqajna xi PHP fil-quċċata.
Għandi, apparentement, sejjaħ dan date_default_timezone_set funzjoni.
>> U aħna ma nitkellmux dwar l dawn il-funzjonijiet fl CS50,
minħabba PHP probabbilment għexieren ta 'eluf.
Li jista 'jkun daqsxejn ta' eżaġerazzjoni, iżda jista 'ma jkunx.
Huwa ltqajna ħafna ta 'funzjonijiet mibnija.
U għalhekk dan huwa funzjoni apparentement tistabbilixxi żona ta 'ħin tiegħi bħala Istati Uniti / tal-Lvant,
li huwa l-żona ta 'ħin li jien bħalissa biex jagħmel dan video.
>> Imbagħad I tagħmel sejħa biex funzjoni imsejħa, id-data.
U, apparentement, jien ħażna tal- TIEGĦU ta 'xi ħaġa imsejħa, ħin.
Allura x'inhu għaddej hawn?
>> Ukoll, bażikament x'hemm jiġri huwa, jien jagħmlu sejħa
għal xi server li se tell me dak il-ħin attwalment.
U jien dan jinbidel ma 'format ta 'sigħat, minuti, sekondi.
U r-raġuni huwa kapital H hija din huwa ser jagħti lili 24 darba siegħa, mhux 12
żmien siegħa, li jkun h zghar.
U jien biss ħażna li fil-varjabbli imsejħa, ħin.
Allura li t-tieni linja ta 'PHP hemm, is-sejħa għall-funzjoni,
data, huwa biss jkollna xi spag, li hija
ser jagħti me-data, u l- ħin, u mazz ta 'informazzjoni oħra.
U l-ewwel argument hemm, li TIEGĦU, huwa biss estrazzjoni tal-parti importanti
li I kura dwar għal dan eżempju, li hija l-siegħa, minuta, u t-tieni.
Allura dak l-kollu li għaddej.
So I tinżamm din fi $ żmien varjabbli.
U mbagħad stabbiliti fuq il- ħafna qiegħ hemmhekk, I
jkollu dik qosor għal stampar ta 'l-ħin kurrenti.
Hekk jien biss se jistampaw barra dak il-ħin attwali hija.
>> Mela ejja tagħti ħarsa lejn dan IDE CS50 u tara kif aħna qed issa
iffrankar li webmaster ħafna problemi.
Kull dritt, so here I am darb'oħra lura fil-direttorju għerq
tal istanza Apache tiegħi.
U għandi fajl hawn imsejjaħ time.php.
Jien biss se ikklikkja fuq dik.
U jien ser iscroll up, għaliex aħna qed żżomjati fil pretty ħafna.
Il-ħin attwali hija 14:20:34.
Hekk jien tagħmel dan sigħat, minuti, u sekondi.
U nista 'jġedded il- paġna u jiksbu żmien ġdid.
--41.
Jien ser jġedded il-paġna u jiksbu żmien ġdid, 44, 46, 47.
>> So, I am ċar ma jinbidel xejn myself.
Jien hawn iġjeniċi il-paġna.
So I ma jistgħux jiġu lura hemm editjar.
UI wegħda, I ma xi Confederates
li qed editjar-fajl f'isem tiegħi fuq il-ġenb.
>> Jien biss jużaw dik il-funzjoni PHP, żmien, biex jiġġeneraw il-ħin għalija
awtomatikament.
Sabiex anke jekk jien rieqed, u web server tiegħi qed taħdem,
l-utent li żjarat dik il-paġna għadu se tikseb eżattament l-ħin kurrenti.
Allura dak pjuttost tajba.
I ħadna sit tiegħi aktar dinamiku bil-kodiċi PHP mhux wisq.
Kien biss żewġ linji ta 'kodiċi u mbagħad xi ftit ta 'dikjarazzjoni print.
U diġà għandi sit ħafna aktar dinamiku
minn dak l-ewwel eżempju rajna fil-bidu tal-video.
>> Allura, jiġbor lura mingħand l-video fuq sintassi PHP li meta l-interpretu PHP runs
programm tagħna, tinjora kollox li mhux ġewwa tal delimiters PHP,
bżieq it out.
F'dak eżempju, dak il-ħaġa li kien bżieq out kien HTML.
U dan ifisser nista 'issa intersperse HTML u PHP flimkien.
Minħabba li l-interpretu se biss jinjora l-HTML u litteralment output dan.
Li hija tajba, id-dritt?
>> Minħabba preżumibbilment, fl-aħħar tal-ġurnata,
Nixtieq sit tiegħi għal ikunu magħmula minn HTML.
Sabiex kwalunkwe web browser tista jinterpretaw dan, jew ma tifhimx il HTML fuq il-paġna
u jagħmilha bħala xi ħaġa li aħna jistgħu attwalment jifhmu bħala bnedmin.
U nista 'nuża biss PHP għall-partijiet ta 'sit tiegħi
l jeħtieġu dinamiżmu, li jeħtieġu me li jkollhom affarijiet li taġġorna kontinwament.
L-informazzjoni statika tista 'tissospendi l-istess.
>> OK, hekk li l-multa.
Iżda għaliex kieku nagħmel dan?
Għaliex kieku I ħallat HTML u PHP?
I jistgħu biss jistampa l- HTML, tuża l-funzjoni print PHP.
Why am I ma tagħmel dan?
Aħseb dwar dan għat-tieni.
>> Għaliex, meta I tista 'biss print out-- I jista 'jkollhom linji ta' PHP li biss jgħidu,
tag HTML print, print head.
Why am I ma tagħmel dan?
Why am I taħlit tal-PHP u HTML?
>> Ukoll, jekk inti taħseb dwar dan għat-tieni.
PHP, l-interpretu għandu li tinterpreta dak li jara.
U hekk li għaddej biex ikollhom biex tesegwixxi linja tal-kodiċi.
Jistampa HTML.
Jistampa tag ras miftuħ.
Jistampa titolu tag miftuħ.
Li għaddej biex ikollhom jesegwixxu u jinterpretaw
li kull pass wieħed tar-rotta.
Għaliex ma just let l- interpretu biss tleqqija fuq
affarijiet ma tifhimx u tagħmel dan awtomatikament?
Huwa ser tiffranka me ħafna ħin biex tħallat HTML tiegħi u PHP tiegħi flimkien.
>> U hekk hu għalhekk aħna ma sempliċiment għandek delimetru PHP miftuħa
u mbagħad biss jistampa l-kollu kontenut tal-paġna tagħna bħala PHP ġgant wieħed
sejħa għall-funzjoni, Stampa, u mbagħad delimetru PHP qrib u aħna qed isir.
Allura huwa għalhekk li għandna ħallat flimkien.
>> S'issa, ma rajniex wisq ta ' differenza minn sintassi PHP ġenerali.
Huwa kien pjuttost sempliċi.
Imxejna diġà raw il- trade mark in kwistjoni, ugwali.
Rajna ftit sejħiet funzjoni ġodda, iżda xejn verament fancy għaddejjin.
Ejja forsi tagħmel affarijiet ftit fancier.
X'jiġri jekk irridu li jgħaddu informazzjoni bejn il-files PHP differenti,
sabiex forsi l-utent jista ' jissottomettu informazzjoni lili.
U allura I jistgħu jagħmlu xi ħaġa magħha fuq paġna oħra.
>> Allura PHP għandha l-appoġġ għall xi ħaġa imsejħa Super Globali
Varjabbli, li ħsejjes pjuttost tal-biża.
Huma qed verament ftit arrays assoċjattiva ġgant
li jgħinu jimplimentaw din funzjonalità tal tgħaddi
informazzjoni bejn il-files PHP li huma eżistenti fuq is-server web tagħna.
>> L-ewwel minn dawn super globals tissejjaħ $ _GET.
U huwa probabbilment l- sempliċi biex jifhmu.
X'jiġri ma '$ _GET?
Well, bażikament, l-utent huwa ser tip ta 'informazzjoni addizzjonali
fl-aħħar tal URLs tagħna.
U tkun xi tkun dawn it-tip, jekk wieħed jassumi huwa formattjati b'mod partikolari
imsejħa string query, li huwa biss sett ta 'pari b'valur ewlenin separati
billi ampersands.
Dawk pari b'valur ewlenin se jkunu maħżuna $ _GET firxa assoċjattiva.
U minn video tagħna fuq Sintassi PHP, nafu
kif taħdem ma ' arrays assoċjattiva diġà.
Allura hawnhekk huwa eżempju ta ' xi PHP, fejn forsi jien
estrazzjoni kollha tal-pari valur ewlenin li l-utent fornut fil-URL.
So I jkollhom delimiter tiegħi PHP Open.
I jkollhom loop foreach.
Jien mtennija madwar l-Super Array Globali sejħet $ _GET.
>> U nixtieq li tkun tista 'tirreferi kemm iċ-ċavetta u l-valur.
U jien biss tistamphom out, kull wieħed fuq apparentement
paragrafu tag tagħha stess hawn.
Jien istampar xi HTML u interpolanti l-valuri
tal ċavetta u l-valur fis dik id-dikjarazzjoni.
>> Mela ejja tagħti ħarsa lejn kif dan se attwalment jaħdmu fuq IDE tagħna.
U forsi dan se jgħin juru ftit
ta 'dak IKOLLOK huwa attwalment tagħmel.
Hekk jien lura hawn fil għerq web tiegħi.
U jien ser zoom fi ftit biex turi li inti
li għandi fajl imsejħa, get1.php.
>> Mela ejja ikklikkja fuq get1.php.
U jien ma tara ebda kontenut.
Dak stramb, id-dritt?
Well, mhux verament fil-fatt.
Minħabba I ma pprovdiex xejn fil-URL.
Jien ser get1.php, imma I ma pprovdietx ebda pari b'valur ewlenin
bħala parti mill-sekwenza mistoqsija tiegħi.
Mela ejja żid string query u ara dak dan il-fajl jista 'jagħmel.
>> Biex tibda string query inti tip biss kwistjoni mark.
Imbagħad forsi I ser ngħid isem = Doug &-sena = 2015.
U mbagħad I se hit Ikteb.
Issa avviż dak li qed jiġri.
Jien xorta fil get1.php.
Imma issa stajt fornuti pari b'valur ewlenin, u jien
tistamphom fuq tagħhom stess isem paragraph--, sena Doug--, 2015.
Li eżattament l-kodiċi aħna biss raw fuq il-pjastra mument ilu.
>> U jekk irrid li forsi żid ieħor par ċwievet valur, & class = CS50.
Issa għandi valur ewlieni ieħor par li l-stampata
meta I tirrevedi il-URL ġdid.
Issa forsi dan mhux formattjati terriblement ukoll.
So I jkollhom ieħor verżjoni tal get.php.
Huwa get2.php.
>> Id-differenza f'din wieħed huwa għandi fajl CSS,
u formati affarijiet ftit aktar nicely għalija.
Huwa forsi mhux l-aktar CSS beautiful fid-dinja.
Iżda huwa biss mod ieħor ta 'kif isir dan.
So I xorta jistgħu jiksbu aċċess għall-varjabbli tiegħi jużaw $ _GET.
U f'dan il-każ, jien biss tip ta ' jagħmlu l-CSS ftit aktar fancy.
U jekk aħna pop quddiem għall IDE tiegħi għat-tieni,
I ser nuruk fil-web PHP tiegħi direttorju hawn, get2.php.
Aħna ser tiftaħ it up, xi HTML hawn.
Apparentement I am jgħaqqdu f'dak Fajl CSS I kien jitkellem dwar.
I tiftaħ tag tabella.
U allura hawnhekk loop foreach tiegħi.
>> Hawnhekk hija li, dak I wera fuq il-pjastra qabel.
L-unika differenza hija I jkollhom dan ewlenin u CSS valur
grafika li jien li tapplika għalih.
Imma li kollox jien tagħmel, hija jien mtennija madwar $ _GET li nikseb kollha
tal-pari b'valur ewlenin.
>> U jien tistamphom kif il-mejda.
U, apparentement, jien ifformattjar l-imfietaħ b'xi mod, bl-<td class = "ewlenin".
Allura apparentement li tapplika għal xi selettur klassi tiegħi GET.CSS fajl CSS.
U, apparentement, jien istampar l Valuri tiegħi b'mod totalment differenti.
Li hija pjuttost dak li rajna hawn, fejn
valuri tagħna kienu stampati bi sfond blu,
u ċwievet tagħna kienu stampati bi sfond isfar.
Allura li kif jien jkollna dawk stili differenti.
Għaliex jien jużaw klassijiet differenti CSS.
Imma dak li pretty ħafna minnha għal IKOLLOK.
Bħal jien biss estrazzjoni ta 'informazzjoni.
U f'dan il-każ, jien biss istampar lill-iskrin.
Jien jkollna out ta 'l-URL, u dan huwa dak IKOLLOK ma għalina.
>> Inti tara possibbli problema hawn għalkemm?
Għaliex kieku aħna forsi ma tridx li jużaw $ _GET?
X'jiġri jekk, forsi, I kienet qed tagħmel din il-mistoqsija?
get3.php --to, li jiena ma jkollhom fuq IDE tiegħi.
Huwa biss fajl ipotetiku.
Iżda avviż hawnhekk li apparentement tgħaddi password tiegħi fil.
U forsi password tiegħi huwa imbarazzanti.
Jew forsi Ma rridx nies biex jafu liema password tiegħi huwa, dritt.
>> Jekk jien jgħaddiha though-- jekk jien jużaw il-metodu $ _GET, dak li jiġri huwa,
li għaddej biex tkun fil-URL.
Allura xi utent malizzjużi jista tkun tista 'tara dak li qed nagħmel.
I tista 'tgħaddi minnhom informazzjoni sensittiva.
Jew forsi huwa lanqas utent malizzjużi.
Forsi huwa biss ħabib tiegħek li hija wieqfa fuq l-ispalla.
U issa jkunu jafu l-password għall-kont tiegħek Facebook.
>> U forsi dawn mhux se tagħmel xejn magħha.
Imma jekk password tiegħek kienu sottomessa permezz $ _GET għall Facebook,
issa huma jafu password tiegħek Facebook.
Għaliex dan huwa hemm dritt fil-URL meta inti ghamilt sottomissjoni informazzjoni.
>> U hekk forsi li mhux l-aħjar mod biex jgħaddu informazzjoni sensittiva.
Huwa mod tajjeb biex jgħaddu informazzjoni li aħna ma partikolarment
jimpurtahom bħala wisq sensittivi.
Minħabba IKOLLOK huwa pretty fast, relattiva għall-globals super oħra
aħna qed tmur biex jitkellmu dwar.
Imma forsi mhux l-aħjar għodda għall-informazzjoni sensittiva.
>> Għal li aħna tista 'tixtieq li jużaw xi ħaġa imsejħa $ _POST,
li huwa Varjabbli ieħor Super Globali.
Huwa array assoċjattiva ieħor.
Allura taħdem pjuttost ħafna eżattament l-istess bħal IKOLLOK.
Ħlief, minflok estrazzjoni informazzjoni mill-URL,
dan ma xi ħaġa permezz headers HTTP.
Allura lura mit tagħna video fuq HTTP, tkellimna
dwar kif browsers, servers, u l-klijenti jikkomunikaw.
U l-informazzjoni tingħadda lura u lura fil headers HTTP.
>> Bil $ _POST, l-informazzjoni hija tipikament mibgħuta permezz ta 'dawk headers HTTP.
U aħna ser aktar komunement tara $ _POST fil kuntest ta 'sottomissjoni forom HTML.
Inti xorta tista 'tuża forom HTML biex jissottomettu affarijiet li tikseb.
Iżda dawn qed normalment użati fil-kuntest ta 'POST.
>> Allura hawnhekk eżempju ta 'forma HTML.
Issa aħna stajt tidher dawn qabel, iżda aħna għandna ma bbenefikawx din il-parti, l-azzjoni = "post.php".
Allura meta aħna tkellem dwar forom jilħqu l- kuntest ta HTML, I kellhom Submit buttuna.
U jekk inti recall, I d ikklikkja Submit u allura l-paġna biss aggornata,
ma tagħmel xejn.
>> F'dan il-każ, jien sottomissjoni kwalunkwe I tip fil din il-formola,
għall-fajl PHP imsejħa post.php.
U, apparentement, il-mod li qed nagħmel dan f'din il-forma qed tuża l-metodu POST.
Allura kull biċċa informazzjoni I tip fis din il-formola
ser jiġu ppreżentati permezz tal-headers HTTP.
>> Se jkun aċċessibbli post.php, għaliex dak l-azzjoni ta 'formola tiegħi.
Se jkun aċċessibbli billi jmorru $ _POST.
U apparentement, il-mod I tista jiksbu f'kull element individwali
ma 'dak array assoċjattiva hija ma dan l-attribut,
l-Isem attribut ta 'tags input tagħna.
>> So apparentement nista 'ngħid $ _POST kwadru parentesi isem li tikseb xi utent
ittajpjat fl-ewwel qasam.
U $ _POST password, tal PW pjuttost, li jiksbu fil x'ikun l-utent ittajpjat
fit-tieni qasam.
>> Mela ejja tagħti ħarsa lejn dan fuq fil IDE CS50.
Allura aħna qegħdin hawn, u jien ser zoom fl għal tieni.
U aħna jkollhom fajl imsejjaħ post.html.
I ikklikkja fuq post.html.
Fil-quċċata ħafna hawn I jkollhom forma web sempliċi ħafna.
Hu l-formola aħna biss raw fuq il-pjastra tieni ilu.
>> I tista tip, Doug, u nista ' tip password tiegħi, li aħna kollha
jafu hu squadgoals.
U jien se tolqot Submit.
U apparentement, li tissottometti lill post.php.
U jien apparentement istampar dik.
Hekk jien jwarrbu l-garanzija li POST tagħti me bi ftit stampar ta
il username u password.
>> Isem l-utent huwa Doug.
Password tal-utent hija squadgoals.
Kif ma nagħmel dan?
Well, pop quddiem għall IDE għal darb'oħra għat-tieni.
Aħna se iscroll biex jieħdu ħarsa lejn post.php, li kienet
l-azzjoni I li jintużaw biex jissottomettu hawn.
Dan kien l-azzjoni tal-forma HTML tiegħi.
U li kollox jien tagħmel.
Isem l-utent huwa, u jien istampar l-kontenut ta '$ _POST "isem".
U mbagħad password tal-utent huwa $ _POST "password".
So I kien mogħti l-informazzjoni billi jissottomettu l-formola HTML.
U jien issa tista 'estratt billi tuża $ _POST minħabba l-metodu I użati biex jittrasmettu
data ma 'dik forma kien il-metodu POST.
>> Issa huwa probabbilment mhux so great-- jien ser
li jmorru lura għat-tieni li here-- sett tagħna
huwa probabbilment mhux daqshekk kbir jekk I am preżentazzjoni ta 'informazzjoni ma' POST,
li hija apparentement aktar sigura.
Huwa probabbilment mhux daqshekk kbir jekk qed nagħmel dan u mbagħad
stampar ta password tal-utent.
Huwa suppost li jkunu aktar siguri.
>> OK, iżda mhux kompletament sigura.
U hekk f'dan il-ftit snippet hawn Irrid
għal ftit niġbidlek l-attenzjoni għal xi preokkupazzjonijiet ta 'sigurtà tad-data, biss xi ħaġa
biex jaħsbu dwar kif int ħidma jew jużaw l-internet.
Dan huwa biss xi ħaġa li jikkunsidraw.
>> I qallek li l-informazzjoni hija sottomessa permezz headers HTTP
meta tuża l-metodu POST.
Li jfisser li mhux qed kompletament sigura.
Huma qed aktar diffiċli biex isibu minn użu tal-metodu IKOLLOK, fejn
huwa biss id-dritt fil-URL.
Iżda għad hemm mod li jsibuha.
U jien biss jixtiequ juru inti dan sabiex inti forsi
jibdew jaħsbu dwar dan kif qed jaħdmu, jew bl-użu
websajts u l-preżentazzjoni passwords, u forsi bl-użu
l-istess password fil- ħafna postijiet differenti.
Kun af li hija għadu attwalment pretty faċli biex issir taf password xi ħadd.
>> U hekk hawn, jien ser biex tmur post2.html.
U d-differenza ma post2.html u post2.php hija pjuttost sottili.
Id-differenza hija biss li jien ma jistampa
l-password meta I tissottometti l-formola.
>> Hekk jien ser tip fil, Doug.
U jien ser tip fil, squadgoals, anke
għalkemm nafu dak l-password.
Qabel I jippreżenta l- jiffurmaw għalkemm, jien ser
biex jiftħu Developer Tools, just biex nuruk dak li għaddej biex jiġri hawn.
Allura fil Chrome, jien biss ser jintlaqtu F12.
U li għaddej biex tiftaħ tiegħi Developer Tools fuq il-lemin.
I ma ppreżentat il-formola s'issa.
Issa jien ser jintlaqtu Issottometti fuq formola tiegħi.
U apparentement, I għamel sejħa biex, jew I għamel talba
li post2.php, li jagħmel sens.
Jien ser ikklikkja fuq dik.
>> Imbagħad hawn fuq, jien ser ikklikkja fuq headers.
Hemm ħafna ta 'għalf jiġri hawn.
Imma jekk jien iscroll isfel sa l-ħafna qiegħ, avviż dritt there-- kalendarju tiegħi
blukkat dan għal dritt second-- hemm fil-kantuniera qiegħ nett,
name-- Doug, squadgoals pw--.
Għalhekk anki jekk jien jużaw l POST metodu, li hija aktar sikura,
biss ikunu konxji li meta tagħmel hekk, int xorta trasmessa informazzjoni
permezz HTTP.
U xorta tista 'tkun misjuba minn avversarju.
Huwa biss xi ħaġa aħna qed tmur ikollhom jittrattaw mal verament.
Forsi hemm xi modi biex kriptaġġ tagħna passwords qabel we tibgħathom fuq,
li tkun aħjar, li jien ma nagħmilx hawn.
>> Iżda biss ikunu konxji li l POST Metodu għandha l-limitazzjonijiet wisq.
Huwa ta 'titjib fuq IKOLLOK fil sens li jkun immedjatament viżibbli.
Imma din mhix tiffissa kompluta.
Allura hawnhekk eżempju ta ' a quick fid eżerċizzju dar
li tista 'tuża biex nikseb xi prattika jaħdmu ma PHP.
Oħloq il-par ta 'paġni tal-web li ġejja.
L-ewwel għandu jkun biss sempliċi ħafna jiffurmaw bi qasam wieħed u Issottometti
buttuna.
Allura simili ħafna għal dak li biss għamlet ma 'post.html.
>> U allura l-tieni fajl għandek toħloq
huwa fajl, fajl PHP, li qed tistenna input, permezz POST,
u bbażat fuq dak l-utent ittajpjat, li inti tista 'tassumi ser tkun numru sħiħ.
Inti ma għandekx tagħmel xi verifika żball jew simili.
Inti tista 'tassumi l-utent se tip ta 'valur sħiħ,
jew xi ħaġa bħal interpretat mill PHP bħala numru sħiħ, din il-forma.
Inti biss jixtiequ joħolqu n billi tabella multiplikazzjoni n.
>> Mela jekk l-utent jissottometti 10, irridu jkollhom tabella 10 permezz 10 multiplikazzjoni.
Jekk l-utent jissottometti 12, irridu tabella 12 permezz 12 multiplikazzjoni.
Just sabiex inti tista tara dak aħna qed sewqan hawn,
aħna ser tagħti ħarsa lejn dan il-fajl fil IDE tiegħi.
>> Allura hawn fil IDE, I jkollhom mult_form.html.
I ser ikklikkja dan.
All I trid tagħmel hu li jippreżenta valur.
Ittajpja 10, hit Submit.
U apparentement, mult_table.php, li nistgħu naraw fil-quċċata hemmhekk fil-URL,
Jien ħolqien ta '10 b'10 tabella multiplikazzjoni.
>> Jekk I tip 15 u hit Issottometti, issa I jkollhom tabella 15 permezz 15 multiplikazzjoni.
Jien, naturalment, mhux se juru inti l-kontenut ta 'mult_table.php,
minħabba li se jieħu l-gost minn dan fid-eżerċizzju dar.
Iżda huwa mod tajjeb ħafna biex nikseb xi prattika li jaħdmu ma 'linji PHP
u POST, sempliċi ħafna, wieħed jittama eżempju stress ħielsa, biss
li tagħmel ftit ta 'prattika.
U stajt ltqajna CSS ftit għaddejjin hawn biex tagħmel tabella individwali tiegħi
ċelluli biss tip ta 'pop off ftit u tfittex ftit aktar
bħal tabella multiplikazzjoni, għall-kuntrarju biss test biss
tip ta 'seduta hemmhekk.
L-aħħar super globali aħna ser nitkellmu dwar f'dan il-video huwa xi ħaġa imsejħa
$ _SESSION.
U forsi dan huwa effettivament l-aħjar eżempju ta 'xi ħaġa
aħna se jikkunsidra globali.
Huwa array ieħor.
Huwa array assoċjattiva ieħor.
Iżda huwa aċċessibbli permezz ta 'kull Fajl PHP li teżisti fis-sistema tagħna.
>> Aħna ma għandhom jippreżentaw informazzjoni paġna waħda fi żmien
bħal nagħmlu ma IKOLLOK u ma POST.
Huwa dejjem hemm.
U għalhekk dan huwa kbir għal paġna fejn inti illoggjat, per eżempju,
u trid informazzjoni login tiegħek li jippersistu minn paġna għal paġna għal paġna.
>> Tista 'biss tibda sessjoni u mbagħad użu $ _SESSION biex jiffrankaw affarijiet simili
isem l-utent, jew mar-utent Informazzjoni ID, u l-bqija.
U li l-informazzjoni se jibqgħu $ _SESSION Sakemm int teqred is-sessjoni
ftit aktar tard.
>> Kitba websajts dinamika ma PHP jagħmilhom ħafna aħjar.
Siti tiegħek jsir ħafna dinamika, u inti ma
għandek tagħmel wisq aktar minn dak inti kieku għamlu biss
tagħmel dan ma HTML.
Iżda teħtieġ li prattika, ħafna ta 'prattika.
>> Inti diġà taf kif taħdem ma 'C, u għalhekk jaqbeż lil PHP mhix wisq delikata.
X'inhu forsi ftit bit delikata qed taħdem
ma din l-idea ġdida ta 'GET u POST, u forsi taħlit HTML tiegħek u PHP tiegħek
flimkien.
Iżda wkoll ikunu konxji li l-internet hija repożitorju kbir ta 'informazzjoni.
U d-dokumentazzjoni PHP hija disponibbli f'ħafna postijiet, imma forsi l-aktar
kanonikament fil php.net.
U inti tista 'ssib hemmhekk, lottijiet ta 'funzjonijiet differenti,
u każijiet ta 'użu, u eżempji fuq eżempji, fuq eżempji.
Fejn jekk inti tixtieq li jippruvaw u figura kif tagħmel xi ħaġa, odds huma,
xi ħadd probabbilment sar qabel int.
U inti tista 'tużahom bħala ispirazzjoni biex jiġu implimentati x'ikun
huwa inti qed tipprova timplimenta wisq.
>> Jien Doug Lloyd.
Dan huwa CS50.