>> Doug LLOYD: Tātad mūsu video uz PHP sintaksi,
mēs daudz runājām par to, kā PHP var lietot pie komandrindas
palaist programmu tādā veidā, ka mēs esam diezgan pazīstams ar no C.
Bet kā es arī minēts Šajā video, PHP
sākotnēji tika izstrādāta, lai ieviest tīmekļa programmēšanu, tīmekļa vietnes.
Un tā šajā video mēs esam gatavojas runāt par to, kā mēs
izmantot PHP web izstrādes kontekstā.
>> Mēs zinām, jau no Mūsu video uz HTML,
ka mājas lapas tiek būvētas no kopuma HTML tagus
kas semantiski definēt struktūra mājas lapā.
Bet tīmekļa vietnes, kas ir būvēts ar tīru HTML
cieš no ļoti, ļoti nopietns ierobežojums.
>> Un, lai ilustrētu šo ierobežojumu, pieņemsim apsvērt sekojošo.
Tāpēc tagad es gribu, lai izveidotu mājas lapu ka, ikreiz, kad lietotājs apmeklē tā,
tas man dod strāvu Laiks Cambridge, Mass.,
attēlot to ar jaunāko minūti.
Ja man bija padarīt šīs tiesības tagad, Es varētu teikt kaut kas līdzīgs šim.
Pašreizējais laiks Cambridge-- tāpēc man ir HTML tagus, galvas tagus, nosaukums tagus,
ķermenis tags-- strāvu laiks Cambridge ir 14:08,
izdrukāšana militāro laiku.
>> Kas notiek, ja tas ir tagad 02:09, 14:09?
Nu tik tālu, ar HTML, man ir iet un mainīt to uz 14:09.
Un tad vienu minūti vēlāk, Man ir mainīt to vēlreiz.
Un, kā jūs varat iedomāties, kas ir iespējams, sliktākais darbs jebkad.
Jūs esat webmaster web lapā, un katru minūti, 24 stundas diennaktī,
Jums ir nepieciešams, lai atjauninātu pašreizējo laiku manuāli atverot time.html un mainot
tikai, ka koda fragmentu teikt Pašreizējais laiks stundās un minūtēs.
Tas ir iespējams, nav ļoti labi izmantot mūsu resursus,
gan cilvēku un skaitļošanas.
>> Tīmekļa vietnes, kas visi ir HTML Ir pilnīgi statisks.
Vienīgais veids, kā jūs varat atjaunināt saturs, jo mēs esam tikai redzējuši,
ir manuāli atvērt šīs avots failus, rediģēt tos, un saglabājiet tos.
Un tad, kad lietotājs atsvaidzina lapu,
vai apmeklē lapu par pirmo laiks, tie būs saņemt jaunāko saturu.
Bet tikai tāpēc, ka mēs esam manuāli rediģētas to.
>> Ja mēs sākam jaukt dažas PHP tur, Mūsu kodu var iegūt daudz elastīgāku.
Un mēs varam būt ceļu mūsu lapas jābūt dinamiskai, vai atjaunināt sevi,
neprasot mūsu draņķīgi webmaster iepriekšējā piemērā
būt manuāli atjaunināt lietas.
Viņi var darīt automātiski.
Mums nav jāiejaucas.
Mēs varam iegūt dažas miega.
Kas ir iespējams, ir laba lieta, ja jūs darāt daudz web programmēšanu.
>> Tātad CS50 IDE, mēs palaist web serveri sauc Apache.
Tas ir ļoti bieži izmanto, atvērtā koda web servera sistēmas.
Šī sistēma ir tāda spēja interpretēt
PHP, kas būs noderīgi, ja jūs vēlaties darīt jebkuru PHP programmēšana.
>> Un CS50 IDE, mums ir komanda lai padarītu šo ļoti viegli darīt,
apache50 sākt.
Un tad, ka slīpsvītra ceļš, slīpsvītra to, slīpsvītra
dir, tas ir tikai tiešām izplatītākais veids norādot, ko esat norādījis šeit
ir ceļš uz konkrētu katalogs, kas jums
vēlas būt root vietā, vai saknes lapā,
vai mapi, no kuras jūsu tīmekļa serveris sāks izskatīt failus un kalpot
tos līdz klientiem, kuri tos pieprasa.
Tātad pieņemsim pop pār CS50 IDE, tikai lai parādīt jums, tiešām ātri, kā tas darbojas.
>> Tātad šeit CS50 IDE, es esmu direktoriju sauc Week Zero Nine.
Un man ir two-- man izpildīts LS komanda tikko
Iepriekš, lai pierādītu, ka man ir divi katalogi šeit, PHP,
kas ir failu kopa ka es izmanto PHP sintakse video, un tad PHP-web,
kas ir failu kopa, ka es vēlētos izmantot šajā video.
>> Un es gribētu sākt web serveri instance
ar saturu PHP web mape kā faili tiek pasniegtas uz augšu.
Tātad, ko es esmu gatavojas darīt?
Es gatavojas rakstīt apache50 telpu sākt, telpa PHP, domuzīme web.
Tas ir ceļš uz direktoriju no kurienes es šobrīd esmu.
Tad es hit Enter.
Tas būs jādara Mazliet sīkumi šeit.
Un tad tas notiek, proti, Apache veiksmīgi sākusies.
Jūsu vietne ir tagad ir pieejams at-- un tad tur ir URL uz vietas.
Tātad, ko es esmu gatavojas darīt?
Es esmu gatavojas ātri kopēt to.
Un es esmu gatavojas atvērt up-- un Es tālināt mazliet here--
Es esmu gatavojas atvērt jauns tab Chrome.
Un es esmu gatavojas apmeklēt šo URL.
>> Es esmu gatavojas hit Enter.
Tas notiek, lai slodze.
Un es ņemšu attālinātu vēlreiz.
Un mēs varam redzēt šeit ir saturs manu PHP interneta katalogs.
>> Tāpēc tagad, kas būtībā notiek šeit ir, mans piemērs CS50 IDE
apkalpo šos failus ikviens, kurš pieprasa tos.
Un gaitā Šis video, mēs veida
ieskatieties ķekars no šiem dažādus failus kontekstā.
>> Lai pārbaudītu, ka jūsu Apache serveris strādā,
kas parasti notiek būt gadījums CS50 IDE,
bet, ja jūs to izdarītu vispārīgāk, un jūs sākt veidot savu web
serveri, tur ir patiešām kopīgs veida analogo,
"hello world", kas parasti izmanto PHP interneta attīstību.
Kurš ir panākt, lai failu veido tikai šīs code--
PHP norobežotājs komplekts ar PHP informāciju, iekavas, semikolu starp.
Kas būtībā ir īpašs PHP funkcija, kas stāsta,
kāda versija PHP jūs izmantojat.
>> Tātad CS50 IDE, man ir ka fails pieejams tikai
lai parādītu Jums to, ko tas izskatās.
Tāpēc es esmu meklē mana indekss no manas PHP instancē.
Mana Apache instance darbojas saturs PHP-Web.
Un man ir fails šeit sauc info.php.
>> Es esmu gatavojas uz tā, zoom out.
Tas ir tas, ko jūs gatavojas lai redzētu, diezgan daudz.
Tas ir tikai stāsta man, ka mans Apache serveris strādā.
Un tas ir, acīmredzot, PHP versija, ka es skrienu.
Šī ir mana analogās uz "Hello World".
>> Tāpēc es zinu, lietas ir darboties.
Tāpēc mēs esam labi iet.
Mēs varam doties no šeit.
>> Tātad pieņemsim pārskatīt ka laiks piemērs mēs bijām
runājam ar mūsu sliktu webmaster kas bija atjaunināt lapā pastāvīgi.
Tas varētu būt noteikt, cik Es vēlētos ieviest lietas
tā ka webmaster nebija ir, lai saglabātu atjaunināšanu laiku.
Tas būtu tikai veida notikt automātiski.
>> Turpmāk uz leju, HTML, tas ir diezgan līdzīgi, ar vienu izņēmumu.
Bet šeit es esam ieguvuši dažas PHP augšpusē.
Man ir, acīmredzot, sauc šo funkcija date_default_timezone_set.
>> Un mēs nerunājam par visiem šīs funkcijas CS50,
jo PHP ir iespējams desmitiem tūkstošu.
Tas varētu būt mazliet pārspīlēts, bet tas varētu būt.
Tas ir ieguvuši daudz funkciju uzcelta.
Un tā tas ir funkcija acīmredzot nosaka manu laika joslu kā ASV / austrumu,
kas ir laika josla, kas es esmu šobrīd padarot šo video.
>> Tad es piezvanītu uz funkcija sauc, datums.
Un, acīmredzot, es esmu glabāšanai HIS par kaut ko sauc, laikam.
Tātad, kas notiek šeit?
>> Nu, būtībā to, kas ir notiek, ir, es esmu veicot zvanu
uz kādu serveri, kas gatavojas man pateikt, kāds laiks šobrīd ir.
Un es esmu pārveidojot to formātu stundu, minūtes, sekundes.
Un iemesls, tas ir kapitāls H tas ir gatavojas sniegt man 24 stundu laikā, nevis 12
stundu laika, kas būtu mazie burti h.
Un es esmu tikai glabāšanai, kas ar mainīgo sauc, laika.
Tā, ka otrajā rindā PHP tur, zvans uz funkciju,
datumu, ir tikai kļūst daži virkne, kas ir
gatavojas sniegt man datumu, un laiks, un ķekars citu informāciju.
Un pirmais arguments tur, ka viņa, ir tikai ieguves svarīgu daļu
ka man rūp šim piemēram, kas ir stunda, minūte, un otrais.
Tātad tas ir viss, kas notiek.
Tāpēc es uzglabāt ka mainīgā $ laiku.
Un tad lejā pie ļoti apakšas tur, es
ir, ka saīsināts izdrukāt pašreizējo laiku.
Tāpēc es esmu tikai gatavojas drukāt , ko pašreizējais laiks ir.
>> Tātad, pieņemsim to apskatīt šo CS50 IDE un redzēt, kā mēs esam tagad
ietaupot ka webmaster daudz nepatikšanas.
Labi, tāpēc šeit es esmu atkal atpakaļ pie saknes direktorijā
mana Apache instancē.
Un man ir fails šeit sauc time.php.
Es esmu tikai gatavojas uzklikšķiniet uz to.
Un es ritiniet uz augšu, jo mēs pietuvināto diezgan tālu.
Pašreizējais laiks ir 14:20:34.
Tāpēc es daru to laiku, minūtes un sekundes.
Un es varētu atsvaidzināt lapa un iegūt jaunu laiku.
--41.
Es esmu gatavojas, lai atsvaidzinātu lapu un iegūt jaunu laika, 44., 46., 47..
>> Tātad, es esmu skaidri nav nemainot neko sevi.
Es esmu šeit atsvaidzināt lapu.
Tāpēc es nevaru būt atpakaļ tur labojot.
Un es apsolu jums, man nav ir kādi domubiedrus
kuri rediģējot failu manā vārdā pusē.
>> Es esmu tikai izmantojot šo PHP funkciju, laiks, lai radītu laiku man
automātiski.
Tā, ka pat tad, ja es esmu aizmigusi, un mana web serveris darbojas,
lietotājs, kurš apmeklē ka lapa joprojām gatavojas saņemt tieši pašreizējo laiku.
Tātad tas ir diezgan labs.
Esmu veikusi manā vietā dinamiskāku ar ne pārāk daudz PHP kodu.
Tas bija tikai divas rindiņas kodu un pēc tam mazliet drukas paziņojumu.
Un jau man ir daudz dinamiskāks vietne
nekā šī pirmā piemēru mēs redzējām sākumā video.
>> Tātad, atceros no video PHP sintaksi ka tad, kad PHP tulks darbojas
Mūsu programma, tā ignorē visu tas nav iekšā PHP atdalītājus,
spļaut to ārā.
Šajā piemērā, ko lieta ka tas tika spitting veic bija HTML.
Un tas nozīmē, ka varu tagad izkaisīt HTML un PHP kopā.
Tā kā tulks būs tikai ignorēt HTML un burtiski izejas tā.
Kas ir labi, vai ne?
>> Jo, iespējams, beigās, dienā,
Es gribētu manu vietni jābūt izgatavotam no HTML.
Tā, ka jebkuru interneta pārlūku var interpretēt tas, vai saprast HTML lapā
un padarīt to par kaut ko, ka mēs faktiski var saprast kā cilvēkiem.
Un es varu izmantot tikai PHP par daļām manā vietā
Pieprasīt dinamiku, kas prasa man ir lietas, kas pastāvīgi atjaunināt.
Statiskā informācija var palikt tāds pats.
>> Labi, tā tas ir jauki.
Bet kāpēc es varētu darīt?
Kāpēc man būtu sajauc HTML un PHP?
Es varētu vienkārši izdrukāt visu HTML, izmantojot PHP drukāšanas funkciju.
Kāpēc es to nedarīšu, ka?
Padomājiet par to otru.
>> Kāpēc, kad es varētu tikai drukāt out-- I varētu būt līnijas PHP ka tikai teikt,
drukāt HTML tag, drukas galviņa.
Kāpēc es to nedarīšu, ka?
Kāpēc es esmu sajaucot PHP un HTML?
>> Nu, ja jūs domājat, ka par to uz otru.
PHP, tulks ir interpretēt to, ko redz.
Un tā tas notiek, lai būtu izpildīt koda rindu.
Izdrukāt HTML.
Izdrukāt atvērts galvas tag.
Izdrukāt atvērts nosaukums tag.
Tas nāksies izpildīt un interpretēt
ka katru solis ceļu.
Kāpēc ne tikai let tulks tikai notušēt
lietas nesaprot un darīt to automātiski?
Tas notiek, lai saglabātu mani daudz laika jaukt manu HTML un manu PHP kopā.
>> Un tā, ka tāpēc mums nav vienkārši ir atvērta PHP norobežotājs
un tad tikai izdrukāt visam saturs mūsu lapu par vienu milzu PHP
zvaniet uz funkciju, Print, un pēc tam aizvērt PHP norobežotājs un mēs esam darījuši.
Tātad, tāpēc mēs sajauc tos kopā.
>> Līdz šim mēs neesam redzējuši pārāk daudz atšķirība no vispārējās PHP sintaksi.
Tas ir diezgan vienkārši.
Mēs jau esam redzējuši jautājuma zīme, kas vienāda.
Mēs redzējām pāris jaunu funkciju zvanu, bet nekas īsti iedomātā notiek.
Pieņemsim varbūt darīt lietas mazliet mīļotājs.
Ko darīt, ja mēs vēlamies nodot informāciju starp dažādām PHP failus,
tā ka varbūt lietotājs var iesniegt informāciju, kas man.
Un tad es varētu darīt kaut ko līdz ar to uz citu lapu.
>> Tātad PHP ir atbalstīt kaut ko sauc Super Global
Mainīgie, kas izklausās diezgan laba.
Viņi tiešām tikai milzu asociatīvas bloki
kas palīdz īstenot šo funkcionalitāte apdzīšana
informācijas apmaiņu starp PHP failus, ir esošais mūsu tīmekļa servera.
>> Pirmais no šiem super Globālie sauc $ _GET.
Un tas ir iespējams, vienkāršākais saprast.
Kas notiek ar $ _GET?
Nu, būtībā, lietotājs gatavojas rakstīt papildus informāciju
beigās mūsu URL.
Un kādi tie tipa, pieņemot tas ir formatēts noteiktā veidā
sauc par vaicājuma virknes, kas ir tikai kopums, galveno vērtību pārus atdala
ar ampersands.
Šīs galvenās vērtības pāriem būs uzglabāti $ _GET asociatīvo masīvu.
Un no mūsu video PHP sintaksi, mēs zinām,
kā strādāt ar asociatīvas masīvi jau.
Tātad, šeit ir piemērs daži PHP, kur varbūt es esmu
ieguves visu galveno vērtību pārus ka lietotājam piegādā URL.
Tāpēc man ir mana Atvērt PHP norobežotājs.
Man ir foreach cilpu.
Es esmu atkārtojot pāri Super Global Array sauc $ _GET.
>> Un es gribu, lai varētu atsaukties gan atslēgu un vērtību.
Un es esmu tikai to iespiešanu ārā, katrs par šķietami
savs punkts tag šeit.
Es esmu drukāšanas dažus HTML un interpolāciju vērtības
Galveno un vērtību vērā šo paziņojumu.
>> Tātad, pieņemsim to apskatīt, kā šī tiešām strādā mūsu IDE.
Un varbūt tas palīdzēs ilustrē mazliet
no tā, ko saņemam, ir faktiski dara.
Tāpēc es esmu atpakaļ šeit manā mājas saknes.
Un es tuvinātu mazliet, lai parādītu jums
ka man ir failu ar nosaukumu, get1.php.
>> Tātad, pieņemsim, noklikšķiniet uz get1.php.
Un es neesmu redzēt jebkādu saturu.
Tas ir dīvaini, vai ne?
Nu, nav īsti reāli.
Jo man nesniedza kaut URL.
Es esmu gatavojas get1.php, bet es nepiegādāja nevienu atslēgas vērtību pārus
kā daļa no manas vaicājuma virknes.
Tātad pieņemsim pievienot vaicājuma virknes un redzēt, kas šo failu var darīt.
>> Lai sāktu vaicājuma virknes jums vienkārši ierakstiet jautājuma zīme.
Tad varbūt es saku nosaukums = Doug & gads = 2015.
Un tad es hit Enter.
Tagad pamanīt to, kas notiek.
Es esmu vēl get1.php.
Bet tagad es esmu piegādā atslēgas vērtību pārus, un es esmu
drukāšanas tos paši paragraph-- nosaukums, Doug-- gadā, 2015.
Tas ir tieši tas kods mēs tikko redzēju uz slaida pirms brīža.
>> Un, ja es vēlos, lai varbūt pievienot otru galvenā vērtība pāri, un class = CS50.
Tagad man ir vēl viens atslēgas vērtību pāris, kas ir izdrukāts
kad es atkārtoti URL vēlreiz.
Tagad varbūt tas nav formatēti briesmīgi labi.
Tāpēc man ir cita versija get.php.
Tas ir get2.php.
>> Ar šī atšķirība viens ir man CSS failu,
un tas formāti lietām nedaudz vairāk labi par mani.
Tas varbūt nav pats skaists CSS pasaulē.
Bet tas ir tikai vēl viens veids, kā to darīt.
Tāpēc es vēl joprojām var piekļūt maniem mainīgajiem izmanto $ _GET.
Un šajā gadījumā, es esmu tikai veida padarot CSS nedaudz vairāk iedomātā.
Un, ja mēs pop pār mans IDE par otro,
Es jums parādīs, manā PHP web direktoriju šeit, get2.php.
Mēs atvērt to, kādu HTML šeit.
Acīmredzot es esmu saistot ar to, ka CSS fails es runāju par.
Es atvērt galda tag.
Un tad šeit ir mana foreach cilpa.
>> Te ir tas, ko es parādīja uz slaida pirms.
Vienīgā atšķirība ir tā, es ir šo atslēgu un vērtību CSS
stils, ka es esmu, kas attiecas uz to.
Bet tas ir viss, ko es daru, ir es esmu atkārtojot pāri $ _GET iegūt visu
no galvenajiem vērtību pārus.
>> Un es esmu drukāšanas tos kā galda.
Un, acīmredzot, es esmu formatējumu atslēgas vienā veidā, ar <td class = "atslēgu".
Tātad acīmredzot tas attiecas uz dažām klase atlasītājs manā CSS failu GET.CSS.
Un, acīmredzot, es esmu izdrukāšana manas vērtības pilnīgi savādāk.
Kas ir diezgan daudz tas, ko mēs šeit, kur redzēju
tika iespiesti mūsu vērtības ar zila fona,
un mūsu atslēgas tika iespiesti ar dzeltena fona.
Tātad, tas ir, kā es saņemu šie dažādi stili.
Tā kā es esmu, izmantojot dažādus CSS klasēm.
Bet tas ir diezgan daudz, tas par GET.
Tāpat kā es esmu tikai iegūt informāciju.
Un šajā gadījumā, es esmu tikai drukāšana uz ekrāna.
Es saņemu to no URL, un tas, ko dara GET mums.
>> Vai jūs redzat iespējas Problēma šeit gan?
Kāpēc mēs varbūt nevēlaties izmantot $ _GET?
Ko darīt, ja, varbūt, man bija padarīt šo jautājumu?
--to get3.php, kuru es nav par manu IDE.
Tas ir tikai hipotētisks fails.
Bet ievērosiet šeit acīmredzot iet savu paroli.
Un varbūt mana parole ir neērts.
Vai varbūt es negribu cilvēkus zināt, kāds ir mans parole ir, taisnība.
>> Ja es esmu tā nodošanu though-- ja es esmu, izmantojot no $ _GET metode, kas notiek, ir,
kas būs URL.
Tātad daži ļaunprātīgs lietotājs var iespēja redzēt to, ko es daru.
Es var iet tos jutīgu informāciju.
Vai varbūt tas pat nav ļaunprātīgs lietotājs.
Varbūt tas ir tikai jūsu draugs, kas stāv pār savu plecu.
Un tagad viņi zina paroli savā Facebook kontā.
>> Un varbūt tie nebūtu kaut ko darīt ar to.
Bet, ja jūsu parole bija iesniegts, izmantojot $ _GET Facebook,
Tagad viņi zina savu Facebook paroli.
Jo tas ir labi tur URL kad jūs esat darījuši informācijas iesniegšanai.
>> Un tāpēc varbūt tas nav labākais veids, kā nodot konfidenciālu informāciju.
Tas ir labs veids, kā nodot informāciju ka mums nav īpaši
rūp kā pārāk jutīga.
Jo GET ir diezgan ātri, salīdzinot ar citiem super Globālie
mēs ejam runāt.
Bet varbūt nav labākais līdzeklis jutīgu informāciju.
>> Par ko mēs varētu vēlēties, lai izmantot kaut ko sauc par $ _POST,
kas ir vēl viens Super Global Variable.
Tas ir vēl viens asociatīvais masīvs.
Tātad tas darbojas diezgan daudz tieši tāds pats kā minimāli.
Izņemot, nevis ieguves informācija no URL,
tas kaut ko caur HTTP galvenes.
Tātad atceramies no mūsu video uz HTTP, mēs runājām
par to, kā pārlūki, serveri, un klientiem sazināties.
Un informācija tiek nodota atpakaļ un atpakaļ HTTP galvenes.
>> Ar $ _POST, informācija parasti nosūtīts caur šiem HTTP galvenes.
Un mēs visbiežāk redzēt $ _POST in konteksts iesniegšanas HTML formas.
Jūs joprojām varat izmantot HTML formas iesniegt lietas, lai saņemtu.
Bet viņi parasti lieto kontekstā POST.
>> Tātad, šeit ir piemērs HTML formas.
Tagad mēs esam redzējuši šos pirms, bet mums ir nav redzējuši šīs daļas prasību = "post.php".
Tātad, kad mēs runājām par formām konteksts HTML, man bija pogas Iesniegt.
Un, ja jūs atceraties, es noklikšķiniet uz Iesniegt un tad lapa vienkārši atsvaidzināt,
nedarīja neko.
>> Šajā gadījumā, es esmu iesniedzot ko es rakstīt šajā veidlapā,
uz PHP failu ar nosaukumu post.php.
Un, acīmredzot, kā es daru, ka šo veidlapu izmanto POST metodi.
Tātad katrs gabals informācijas ka es rakstīt šajā veidlapā
tiks iesniegts caur HTTP galvenes.
>> Tas būs pieejams post.php, jo tas ir darbība mana formā.
Tas būs pieejams dodoties uz $ _POST.
Un acīmredzot, kā es varētu nokļūt pie katra atsevišķa elementa
ar šo asociatīvo masīvu ir ar šo atribūtu,
Name atribūts mūsu ieejas tagiem.
>> Tātad acīmredzot es varu teikt $ _POST square kronšteini nosaukt, lai iegūtu visus lietotāju
ievadījis pirmajā laukā.
Un $ _POST parole, no pw drīzāk, nokļūt jebkādā lietotājs drukāti
otrajā laukā.
>> Tātad, pieņemsim to apskatīt Tas pār CS50 IDE.
Tātad, šeit mēs esam, un es ņemšu tuvinātu par sekundi.
Un mums ir fails ar nosaukumu post.html.
Es noklikšķiniet uz post.html.
Tajā pašā augšā šeit man ir ļoti vienkāršs tīmekļa veidlapu.
Tas ir veids, mēs tikko redzēju uz slaida otro atpakaļ.
>> Es varu rakstīt, Doug, un es varu ievadiet savu paroli, kuru mēs visi
zinu ir squadgoals.
Un es dosies Iesniegt.
Un acīmredzot, ka iesniedz post.php.
Un es esmu acīmredzot drukāšanas kas.
Tāpēc es esmu, lai atbrīvotos no visiem drošības ka POST dod man, tikai izdrukāšana
lietotājvārds un parole.
>> Lietotāja vārds ir Doug.
Lietotāja parole ir squadgoals.
Kā es to izdarītu?
Nu, pop pār IDE atkal uz otru.
Mēs ritiniet uz leju, lai ņemtu apskatīt post.php, kas bija
prasība, ka es izmantoti, lai iesniegtu šeit.
Tas bija prasība manas HTML formas.
Un tas ir viss, ko es daru.
Lietotāja vārds ir, un es esmu drukāšana out satura $ _POST "nosaukums".
Un tad lietotāja parole ir $ _POST "parole".
Tāpēc man tika dota šo informāciju iesniedzot HTML formu.
Un es tagad var iegūt to, izmantojot $ _POST jo metode, es izmantoti, lai pārraidītu
datus ar šo veidlapu bija POST metodi.
>> Tagad tas ir iespējams, nav tāpēc great-- es eju
lai dotos atpakaļ uz otru mūsu set here--
tas, iespējams, nav tik liels, ja es esmu Iesniedzot informāciju ar POST,
kas ir šķietami drošāka.
Tas ir iespējams, ne tik liels ja es daru to un pēc tam
izdrukāt lietotāja paroli.
Tas ir vajadzētu būt drošāk.
>> OK, bet tas nav pilnīgi droša.
Un tā tas maz fragments šeit es gribu
tikai vērst jūsu uzmanību uz dažām datu drošības problēmām, tikai kaut ko
domāt par, kā jūs esat strādā vai izmantojot internetu.
Tas ir tikai kaut ko izskatīt.
>> Es jums teicu, ka informācija ir iesniegts, izmantojot HTTP galvenes
kad jūs izmantojat POST metodi.
Kas nozīmē, ka viņi nav pilnīgi droša.
Viņi grūtāk atrast nekā izmantojot GET metodi, kur
tas ir tikai tiesības URL.
Bet tur ir vēl veids, kā atrast to.
Un es tikai vēlos, lai parādītu Jums tas tā, ka jums varbūt
sāk domāt par to kā jūs strādājat, vai izmantojot
mājas lapas un iesniegšana paroles, un varbūt, izmantojot
pats paroli no dažādām vietām daudz.
Zina, ka ir vēl faktiski diezgan viegli noskaidrot kāds paroli.
>> Un tāpēc šeit, es eju doties uz post2.html.
Un starpība ar post2.html un post2.php ir diezgan smalks.
Atšķirība ir tikai ka man nav izdrukāt
parole, kad es iesniegt veidlapu.
>> Tāpēc es esmu gatavojas rakstīt, Doug.
Un es esmu gatavojas rakstīt in, squadgoals, pat
lai gan mēs zinām, ka ir parole.
Pirms es iesniedz forma, lai gan, es eju
atvērt Developer Tools, tikai parādīs, kas notiek varētu notikt šeit.
Tātad Chrome, es esmu tikai gatavojas hit F12.
Un kas notiek, lai atvērtu manu Izstrādātāju rīki labajā pusē.
Man nav iesnieguši veidlapu vēl.
Tagad es esmu gatavojas hit Iesniegt par manu formu.
Un acīmredzot, es izdarīta zvanīt, vai man ir iesniegusi attiecīgu pieprasījumu
uz post2.php, kas ir jēga.
Es esmu gatavojas uzklikšķiniet uz to.
>> Tad vairāk nekā šeit, es eju noklikšķiniet uz galvenes.
Tur ir daudz sīkumi notiek šeit.
Bet, ja es ritiniet uz leju līdz ļoti apakša, paziņojums tiesības there-- manu kalendāru
bloķē to par second-- tiesības tur pie ļoti apakšējā stūrī,
name-- Doug, pw-- squadgoals.
Tātad, pat ja es esmu, izmantojot POST metode, kas ir drošāka,
Vienkārši jāapzinās, ka tad, kad jūs to darāt, jūs joprojām pārraidot informāciju
caur HTTP.
Un tas joprojām var būt atrasts ar pretinieku.
Tas ir tikai kaut kas, mēs ejam jātiek galā ar patiesi.
Varbūt tur ir daži veidi, lai šifrētu mūsu paroles, pirms mēs nosūtām vairāk,
kas būtu labāks, ko es nedaru šeit.
>> Bet tikai jāapzinās, ka pēc metodei ir ierobežojumi too.
Tas ir uzlabojums, salīdzinot iekļūt ziņā ir uzreiz redzams.
Bet tas nav pilnīgs fix.
Tātad, šeit ir piemērs ātri mājās izmantot
ka jūs varat izmantot, lai iegūtu kādu prakse strādājot ar PHP.
Izveidot šādu tīmekļa lapām pāri.
Pirmais ir vienkārši ļoti vienkāršs forma ar vienu lauka un Iesniegt
poga.
Tik ļoti līdzīgs tam, ko mēs tikko izdarīja ar post.html.
>> Un tad otrā failu jums vajadzētu izveidot
ir fails, PHP failu, kas sagaida ievadi, izmantojot pastu,
un, pamatojoties uz to, ko lietotājs drukāti, kas Jūs varat pieņemt, būs vesels skaitlis.
Jums nav jādara kādu kļūdu pārbaude vai tamlīdzīgi.
Jūs varat uzņemties lietotāju rakstīs veselu vērtību,
vai kaut kas līdzīgs interpretējusi PHP kā vesels skaitlis, šo formu.
Jūs vienkārši vēlaties, lai izveidotu n ar n reizināšanas tabulu.
>> Tātad, ja lietotājs iesniedz 10, mēs gribam ir 10 līdz 10 reizināšanas tabulu.
Ja lietotājs iesniedz 12, mēs gribam 12 līdz 12 reizināšanas tabulu.
Vienkārši, lai jūs varētu redzēt, kas mēs esam braukšanas šeit,
mēs ņemšu apskatīt Šis fails manā IDE.
>> Tātad šeit IDE, man ir mult_form.html.
Es noklikšķiniet uz tā.
Viss, ko es gribu darīt, ir jāiesniedz vērtību.
Type 10, hit Iesniegt.
Un acīmredzot, mult_table.php, kas mēs varam redzēt no augšas tur URL,
Es veidoju 10 līdz 10 reizināšanas tabulu.
>> Ja es rakstīt 15 un hit Pieteikt, tagad es ir 15 līdz 15 reizināšanas tabulu.
Es, protams, nav dodas, lai pierādītu, Jums saturs mult_table.php,
jo tas būtu nepieciešams jautri no šī mājās izmantot.
Bet tas ir lielisks veids, kā iegūt kādu prakse strādā ar PHP cilpas
un POST, ir ļoti vienkāršs, cerams stress free piemērs, vienkārši
darīt mazliet praksi.
Un man mazliet CSS notiek šeit, lai padarītu savu individuālo tabulu
šūnas tikko veida pop off Mazliet un izskatās mazliet vairāk
kā reizināšanas tabulu, nevis tikai tekstu vienkārši
veida sēdēja.
Pēdējais super globālā mēs runājam par šajā video ir kaut kas ko sauc
$ _SESSION.
Un varbūt tas ir faktiski vislabākais piemērs kaut
mēs uzskatām pasaules.
Tas ir vēl viens masīvs.
Tas ir vēl viens asociatīvais masīvs.
Bet tas ir pieejams caur katru PHP fails, kas pastāv mūsu sistēmā.
>> Mums nav jāiesniedz Informācija viena lapa laikā
tāpat kā mēs ar GET un ar POST.
Tas vienmēr tur.
Un tā tas ir liels, lai lapā kur jūs esat pieteicies, piemēram,
un jūs vēlaties, lai jūsu pieteikšanās informāciju plūst no lapas uz lapas uz lapu.
>> Jūs varat sākt sesiju un pēc tam izmantot $ _SESSION, lai saglabātu lietas, piemēram,
lietotāja vārds, vai lietotājs ir ID informācija, un tā tālāk.
Un šī informācija paliks $ _SESSION Kamēr jūs iznīcināt sesiju
mazliet vēlāk.
>> Rakstīšana dinamisku tīmekļa vietnes ar PHP padara tos daudz labāk.
Jūsu vietnes kļūt ļoti dinamisks, un jums nav
jādara pārāk daudz vairāk nekā to, kas jūs citādi būtu darījis tikai
darot to ar HTML.
Bet tas prasa praksi, daudz prakses.
>> Jūs jau zināt, kā strādāt ar C, un tā lekt uz PHP nav pārāk grūts.
Kas ir varbūt nedaudz mazliet viltīgs strādā
ar šo jauno ideju GET un POST, un varbūt sajaucot savu HTML un jūsu PHP
kopā.
Bet arī jāapzinās, ka internetā ir plašs apkopojot informāciju.
Un PHP dokumentācija ir pieejama daudzās vietās, bet, iespējams, lielākā daļa
kanoniski pie php.net.
Un jūs varat atrast tur, daudz dažādu funkciju,
un izmantot gadījumos, un piemēri pēc piemēriem, tiklīdz piemērus.
Kur, ja jūs vēlaties, lai mēģinātu skaitlis , kā kaut ko darīt, izredzes ir,
kāds droši vien darījuši pirms jums.
Un jūs varat izmantot tos kā iedvesma ieviest neatkarīgi
tas ir jūs mēģināt īstenot too.
>> Es esmu Doug Lloyd.
Tas ir CS50.