>> [Musika jotzen]
DAVID J. MALAN: Guztiak eskubidea.
Ongi etorri berriro.
Hau da CS50.
Honek aste 8 bukaera da.
Eta ezagutzen duzun bezala, nahiko daukagu gutxi barru ohiko bulegora ordu
jangela areto, Annenberg barne.
Eta talde batzuk, atsegin handiz Argazki batzuk hartu azkenaldian.
Eta omenez Halloween, pentsatu genuen genuke
Bat baizik harrapatu guk partekatu Hemen sorpresa Annenberg Hall besterik
gaueko beste.
Zure ikaskide Jacob posatu zuen argazki honetan, baina ez zen gehiago dibertigarria
Facebook-en zuen, horrek zekarren guero hori gertatu da elkarrizketa.
>> Erantzuna bere lehen post Bere argazki hau izan zen.
Minutu batzuk geroago, erabaki zuen berak sortu bat honekin.
Joan zen, ondoren, hau joan, eta, ondoren, are gehiago amusingly
denean, bere ama baietsi.
Eta gero, azken finean, badirudi hau ez da txarra izan
baterako ruse zoragarri bat jokatuko duten ari den gertatzen.
>> Beraz, nahi izanez gero Jacob eta beste batzuk ikusteko,
horien artean Cynthia Meng, nor CS50 zona langileen atzealdean,
URL hau eta antzezlan hau hemen buru.
Beraz ADO gehiagorik gabe, gaur web programazioa begirada hau jarraitzen dute,
eta benetako programak sortzea Hori ez da zure komando lerroko exekutatu dute,
baina horren ordez nabigatzaile baten barruan exekutatu.
>> Ustezko, edo, Hemendik gutxira, bazoazela
ezartzeko erdian izan Zeure web zerbitzari,
da web programazioa desberdinak.
Web pset6 zerbitzaria guztiei buruz idazten daki software nola hartu
Nabigatzaile batetik HTTP eskaerak, edo are batetik, giza,
programa bat Telnet izenekoa, eta ondoren, eskaerak horiek erantzuteko bai
HTML fitxategi bat tu arabera, edo bat jpeg edo gif, edo are php fitxategia.
>> Baina web-zerbitzari batekin, ez da ustezko ireki PHP fitxategi bat,
php bukatzen den zerbait, eta ondoren, txu edukia.
Honez ustezko egin zer fitxategi hori lehen nahi?
Nolabait esateko.
Ez konpilatu, astelehenean esan dugu, baina baizik Beraz, interpretatzeko.
>> PHP lengoaia interpretatu bat da, eta, beraz, Zure web funtsezko ezaugarrietako bat
zerbitzaria, gurekin bidez bideratzen bada ere, Zure web zerbitzariak gaitasuna hau da:
, nabarituko oh.
Hau php bukatzen fitxategi bat da.
Utzidazu ez soilik bidali behar Gustatu erabiltzaileak eduki estatikoa da,
baizik utzi lerro irakurri me by lerroan, ezkerretik eskuinera, eta interpretatu.
>> Eta egin, duzun guys izango funtsean
programa bat punt aparatuaren, eta sistema informatikoak asko,
besterik ez PHP izeneko.
PHP izenean dagoen hizkuntzaren interprete izena.
Beraz, pieza hori ezartzeko dugu duzu, eta zer duzu utzi,
azken finean, zenbaki bat da pieza, eta horien artean
euskarria garatzea da eduki estatikoa da.
>> Baina orain, eta ekin arazo multzo zazpi, zaren
trantsizioa hasteko joan benetan PHP kodea idazten
lortzen interpretatu back end bat hizketan hasi
datu-baseko informazioa biltzen duen.
Hargatik hobeto ulertzeko lehen, superglobals horiek pare bat
eta, besterik gabe, zenbat botere duzu get out koadroan doan
PHP bezalako hizkuntza batekin.
Things ez duzu zeure burua ezartzeko.
>> Beraz, ikusi astelehenetik $ _GET dugu, bertan superglobal bat da,
hau da, besterik PHP global bat hitz aldagai edozein lekutan sar zaitezke.
Eta zer da $ _GET barruan?
Zer da hau barrutik superglobal ikusten dugun?
Ziur naiz at estatistikoki Gutxienez pertsona bat daki.
Zer da $ _GET barruan?
Bai?
>> Ikusleak: aldagaiak da kontsulta-katea jarri.
>> DAVID J. MALAN: Perfect.
Aldagaiak duzun da kontsulta-katea jarri.
Beraz, gure adibide zaharragoak reimplementing Google izan dugu,
URL bat, eta ondoren galdera-marka, zein HTTP Irteeran demarcates
parametroak, orduan q berdinak izan genuen zerbait, q berdinen bezala katuak,
zer automatikoki joango litzateke barruan duten _GET $ super duzu global,
PHP delako, Q gako bat da eta katuak haren balioa.
>> Beste era batera esanda, $ _GET eta guztietan Gauza horiek elkartze-array dira,
era askotako taulak hash, hori denda gakoak eta balioak.
Orain, atzera pset5 ere, hash taulan zuk inplementatu liteke,
edo saiatu liteke ezarri dituzte, benetan
zen eraginkortasunez asoziazioa array, datu-egitura
Horren bidez erlazionatu ditzakezula balio gakoak.
>> Baina pset5 ere, balioak trivial ziren.
Balioa, funtsean egia edo gezurra zen.
Hiztegian hitzari da?
Beraz, sagarra bezala, hitz bat hashed duzu sagar hiztegian dagoen jakiteko,
Zure kontrol funtzioa ustez egia edo gezurra itzuli.
Beraz, modu eraginkorrean balio atzera ari gara.
>> Baina ikusi astelehena laburki, zalantzarik gabe, ahal duzun
erlazionatuko interesgarriagoa besterik ez da egia edo gezurra baino balioak
gakoak, sagarra bezala.
Benetan ezin duzu itzultzeko bat kate arbitrarioak, eta, hain zuzen,
hori da $ _GET eta horiek Beste aldagai duzu egin dezagun.
>> Beraz $ Bi_dali espiritua antzekoa da, baina post bidez buletina aurkeztu izanez gero,
hori da bat desberdina HTTP metodoa kreditu-txartelak bezalako gauzak erabiltzen,
eta informazio pribatua, eta are argazkiak bezalako informazio bitarra,
Gauza horiek, azkenean, $ Bi_dali barruan.
Eta benetan fitxategientzako jpegs eta halakoak sartzen,
ez dago, nahiz eta beste hori ez da Hemen gehienez $ _FILES deitzen baita.
>> Beraz, zerbitzariak ez dugu dwell ere asko, baina ematen dizu sartu da
beherako maila buruzko xehetasunak ordenatzeko zerbitzari bera erabiltzen ari zarela.
Cookie eta saio, ordea, eraginkortasunez egingo dugu orain ikusten.
Azken hauxe da: zer ezartzea erabiltzen dugu erosketa saskia baten ideia.
A bat super simple, baina gogoratzen Adibide honetan izan dugun hemen,
zenbat aldiz zuk kontatuta bisitatu orrialdea lehenago zegoen.
>> Baina gaur egun, eta ez bakarrik begiratu baino honen eragina, dezagun bat ireki
Chrome Inspector, hau da, normalean, ahal duzun
eskubidea klik edo Control egin edonon web orri batean klik eginez,
eta, ondoren, aukeratu ikuskatu elementutzat.
Edo menuak bidez joan ahal izango duzu pset6 zehaztapenak deskribatzeko dugula.
Eta Sarea fitxa noa hemen, eta dezagun ikusten une batez
HTTP trafikoa hori atzera eta aurrera joan.
>> Dezagun lehen me aurrera eta Chrome argi cache.
Beraz, batzuk ezagunak izan liteke teknika hau dagoeneko,
eta horretan ari gara erabiliko normala da helburu arazteko hemen.
Orain ordenagailuan zientzialariak dira hasteko
Hau egiten arazteko helburuetarako, zeinaren
cachea garbitu egingo dugu, normalean, beraz, guk
cookies izeneko gauza kentzeko dezakezu.
Beraz, seguruenik, oro har, ezagunak zer cookies dira, edo, gutxienez,
, existitzen dutela, baina zer da Zure horiek ulertzeko,
besterik erabiltzaile gisa ordenagailuak, zer cookie bat?
Bai.
>> Ikusleak: pixka bat da of-- ondo, ez informatikako termino bat ere bit.
Datu bat da hori a web bidaltzen ordena
duzu estatistikak grabatu ahal izateko.
DAVID J. MALAN: Ados, ona da.
Beraz, datu bat da hori a zerbitzaria, zure ordenagailuan gainean jartzen,
eta dezagun orokortu are gehiago, gako bat da balioa ondo,
hori zehatzagoak lortzeko.
Pieza bat da Informazio, datu-pieza bat,
zerbitzari bat gai da zure ordenagailuan jarri
eta askotan, zerbitzariak ez du hau, beraz, gogoratu nor zaren.
Horrela, esate baterako, odds dira Ziurrenera
Facebook bezalako guneak sartu, edo Gmail, edo beste batzuk, lehenago
eta saioa hasi duzu zure izena eta pasahitza,
eta, ondoren, zenbaki batzuk minutu edo ordu edo are egunetan ere,
zerbitzariak gogoratzen zaudela, hain zuzen ere, oraindik sartu.
Orain, nola esan benetan gertatzen ari da?
Zu, zalantzarik ez retyping delako Erabiltzailea eta pasahitza idatzi aldi bakoitzean
nabigatzeko bat duzu Facebook-orri desberdinetan.
Beraz, izarrekin bihurtzen da cookies erantzuna dira.
>> Cookie bat bezala uste dezakezu, ordenatzeko bezala, eskuko digital bat
zigilu hori jolas bat dezakezu lortu parke edo elkarte bat, funtsean
adierazten hemen egon zaren aurretik, eta dagoeneko duzun
Zure bouncer izateko ID agerian, for Esate baterako, eta hori klubaren edo parkean
behar orain bere gain hartzen duten Dagoeneko autentifikatutako dute.
Duzu dagoeneko identifikatu behar direnean.
>> Beraz, hau jakinda, dezagun bat ireki counter hemen.
Dezagun aurrera, besterik ez nuen, eta garbitu nire cookies guztiak.
Eta orain zer egin behar dut da Shift eutsi, neurri ona,
eta indarrez orria berriz kargatzea.
Shift ziurtatu ezer lortzen katxean.
Eta hemen eskaera atzera eta aurrera joan zen.
Beraz, hemen baino gehiago, eskaera bat egin behar dugu, eta utzi gerturatzeko me behera hemen, eta hau asko
xehetasunak ordenatzeko uninteresting orain nabigatzaileak automatikoki ditu
bidali, baina utzi egin klik View Iturria goiburuak gordinak ikusteko.
>> Eta pset6 sartu duzun dagoeneko atean sartu bada, zalantzarik gabe duzu gauza aitortu
Hau atsegin, eta agian batzuk beste lerro hauek hemen,
baina zer gehiago gaur egun interesgarria Behera joan nintzen, ez eskaerari bada
baina erantzuna deiturikoak, Lerro hau seguruenik itxura ezagutzen.
Hori gauza ona da 200 OK bat ikusiko duzu.
Antza denez, hau da, data eta ordua zerbitzarian
eta, stuff sorta bat da.
Oh, hau interesgarria da.
>> Turns direnean erabili duzu PHP, gutxienez zerbitzari honetan,
zerbitzariak spits zer erabiltzen ari zaren PHP bertsio.
Zein da, benetan, segurtasunerako helburuetarako, ez da gauza ona.
Baina, itzuli dugu hori beste batzuetan agian.
Baina orain hau gaur mamitsuena lerroa da, eta labur ikusi dugu horietako batzuk,
Uste Facebook ekin nion eta poked dugu Garai hartan Inspector inguruan,
set-cookie da, zer da landatzen Informazio zati hori apur
zure ordenagailuan gainean.
>> Hau HTTP goiburua da hori eraginkortasunez
Zure nabigatzailean kontatzea, Chrome, IE, edozein dela ere,
hey nabigatzailean Erabiltzaile dauden denda disko gogorra, edo erabiltzailearen RAM,
PHPSESSID izeneko gako bat, hau da, saioaren izena idazkera azkarra,
eta balioa ematen diote 0vlk8t, dot, dot, dot.
Sasi benetan luze A alfanumeriko katea ausazko.
Benetan big zenbaki bat besterik ez da, baina, nik letrak eta zenbakiak kodetuta
beraz, tamaina hori izan daiteke nahiz eta zenbakiak bakarrik baino handiagoa den.
Eta gero, bide batez, Path = /, hori besterik gabe esan nahi cookie hori izan beharko luke
lotutako Webgunearen osotasunean,
ez soilik zehatz bat orria gauza osoa.
Beraz, hau eskuz zigilua birtuala da.
Da zerbitzariak, Facebook bagina bezala da, edo gure kasuan aparatuaren,
literalki, idatzizko 0vlk8t ditu eta abar, eskua.
Iragarki zerbitzariak zer en, ez egiten da, ez da
Nire erabiltzaile izena gehiagorik, zalantzarik gabe, Ez da pasahitza gordetzeko.
>> Horren ordez, izan dirudielako pseudo ausazko informazioa gordetzeko
inork ez duela asma dezan Nire eskua zigilua zer den.
Zerbitzari aldean, Bien bitartean, zerbitzariak
da gogoratu, ziurrenik joan datu-base bat edo zerbait,
duten erabiltzaileak, etorkizunean, nork eskuko 0vlk8t zigilua aurkezten du, dot,
dot, dot, behar da honekin lotutako bereziki erosketa saskia, nolabait esateko.
Bestela esanda, gaur egun joaten naiz back hemen eta kargatu berriro orri hau,
zerbitzariari nola daki Garai batean bisitatzen dut hori?
>> Edo berriro egin dut bada, nola zerbitzari egiten du ditudan bisitatu birritan ezagutzen?
Beno behera joan I honetarako bada Eskaera berriena gehienetan, eta horrek
orain hirugarren dudala bidali guztira, konturatu nire eskaera orain.
Oraindik ez dago honi Hemen, gauza bera eskatu sortu
lehen bezala, ez da oraindik osoa sorta lehen bezala dugu ez ikusi gauza,
baina azken goiburua, hau Denbora, izan dut aurretik hemen egon direlako,
aurkezpena egin da eskuko zigilua birtual honetan.
>> Horren bidez, lerro hau hemen, ez ezarri cookiea baina cookie colon PHPSESSI = 0vlk8t,
hori da, nire nabigatzailearen automatikoa eskuan zigilu honek, beraz, aurkezpen
orain zerbitzariak, konturatuko bezain laster, ooh, erabiltzaile 0vlk8t dot, dot, dot,
Dut orain gogoratzen nork zuen da eta erabiltzaile horrekin reassociate whatever
informazioa nahi dut, eta guztia Informazio zuk gorde daiteke,
programatzailea, $ _saioa da.
>> Beraz, argi izan, ireki dut bada benetako azkar gedit benetako fitxategia, counter.php,
nire ostalari lokalean direktorioa publikoetan lehen bezala, nabarituko, hain zuzen ere,
Naiz, azken finean gordetzeko $ _saioa Aurrekontua unquote "kontra"
aurreko counter balioa zein Lortuko dut lerro hauen bitartez sortu hemen dugun
Azken aldiz plus bat begiratu.
Beraz kanpaia azpian, hori da, cookie guztiak dira.
Besterik digitalen sailkatu da eskuko zigilua atzera eta aurrera joan,
eta Egia irekitzean Chrome bada Inspector duen webgunean
bisitatu gaur egun, batez super probabilitate handia,
agian bat ikustera joan zaren, agian dozena erdi cookies
ari zaren gogoratu.
>> Eta okerragoa oraindik, horiek bada webgune bisitatzen ari zaren
guztiek dute iragarkiak, gaur egun, zalantzarik gabe, oso ohikoa,
eta iragarki horiek dira datozen bada batzuk party zentrala, norbait
Google edo AdWords bezalako ahala deitu euren produktu bat
edo beste saltzaileek iragarkiak saltzeko, zer da interesgarria,
eta Egia zer da apur bat worrisome, nola HTTP funtzionamendua,
dela baldin baduzu ad bat barneratua Facebook.com, eta Google.com in,
eta Harvard.edu, edozein zenbaki webguneen eta, beraz, hala nola da
ez dagoela erdi gizon bat nor da zerbitzatu guztiak web horietako hiru iragarkiak sortu,
bihurtzen da hori egin cookies domeinu bakoitzeko dira.
>> Beraz baldin baduzu ad bat datozen webgune ezberdinetan enpresa bereko,
enpresaren modu eraginkorrean duten jarraipena webgune horiek guztietan zara.
Harvard agian ez daki Facebook bisitatzen ari zaren.
Facebook agian ez daki eta Harvard bisitatzen ari zaren.
Baina edozein dela ere ad zerbitzua domeinu hori bada ari dira erabiltzen
bai Harvard.edu web presente orriak eta Facebook.com webguneak,
erdiko gizon honek ziur aski badaki nor zaren partekatutako ari cookie horiek delako
zeharkatuz, edo hobe da, duen middleman deiturikoak.
>> Beraz, itzuli dugu hau egiteko segurtasun inplikazio horien,
baina ez dago informazio asko edonoiz duzu buruz gordetzen ari zaren
bisitatu gehienak edozein web orrian internet eta benetan
Mekanismo oso erraz honetara murrizten.
Zer gertatzen da, orduan, bada Oraindik super paranoid
eta Chrome edo IE sartzen joan erabakitzen duzu edo dena eta itzali cookieak?
Zer gertatzen da?
Bai?
Egin duzun eskubide hori really-- duzu?
OK.
No, aurrera.
>> Ikusleak: Zenbait webguneek ez dute hori gabe, funtzio bat gustatzen Facebook.
DAVID J. MALAN: Bai!
Beraz, zenbait webgune izango da besterik ez dute funtzionatuko.
Eta webgune gehienak egun hauetan funtsean cookies oinarritzea,
zure saioa badute, bereziki ere, ari dira hondatu.
Kontuan hartu delako alternatiboak, web bada
ez gogoratzeko modu nor zaren ditu, eta, beraz, zure web nabigatzailea ez da
HTTP bakoitzarekin ordezkari eskuan zigilu honek eskatuta,
eraginkortasunez web bat Facebook en going bezala
duzun galdetuko behar dute eman eman darn aldi bakoitzean
orriak aldatzerakoan, edo egin klik lotura, da ziur aski ez erabiltzaileak bereziki ona
esperientzia.
>> Beraz, ez dagoela, ere, merkataritza offak artean.
Beraz ADO gehiagorik gabe, dezagun Emandako web programazioa, horretarako,
PHP bezalako hizkuntza gogoratzeko dezakezu Horrelako informazioa arazo ezarri
zazpi zeure ezartzeko Horrekin erosi E * Trade-bezalako webgune
eta stock saltzen, zehazki gogoratzen dituzu erabiltzaileak zer erosi ditu eta saltzen
eta nor zuen da Saio honen bidez.
Baina ari gara behar joan email baino modu dotore bat
inguruan informazioa mantenduz hasteko.
Eskuin?
>> Astelehenean, hitz egin dugu Frosh Berehal buruz eta nola bertsioan web hori bat,
Duela urte Guztiok egin zen email Proctor nor
the intramural kirol arduratzen programa, izena, eta genero,
eta ala ez kapitaina ari dira, eta norbaitek gela nor
intramural kirol bat erregistratzeagatik.
Beraz, ez da txarra, baina berak orduan beren email bidez troll izan,
kalkulu orri bat edo antzeko zerbait egiteko horretan, guztia antolatu mantentzeko.
Beraz, ziur aski dugu programatzaile gisa egin dezakezu PROCTOR horretarako.
Eta horrela SQL sartu, Query egituratuak hizkuntza,
hau da, nahiko itxura joan bai C eta PHP ezberdinak,
eta murgiltze dituzu eskuak askoz gehiago PHP eta arazo multzo zazpi baina baita SQL,
edo SQL, honek hizkuntza bat dela Datu-base bateko hitz erabili duzu.
>> Baina zer gertatzen da datu-base bat?
Beno bat dela uste duzu datu-basea, gutxienez orain,
gisa besterik Excel fitxategi bat bezala, edo Oraindik Mac zenbakiak erabiltzaileak irudiak izanez gero,
edo Oraindik Google Apps bat bada Erabiltzaileak Google kalkulu orri bat,
eraginkortasunez da datu-base bat du, edo benetan zehazki, datu-base erlazional bat.
Base erlazional bat besterik ez da errenkadak eta zutabeak ditu zerbait,
eta edozein motatako gorde dezakezu Errenkada edo zutabe hauetan jasotako informazioa.
>> Baina zer da SQL buruz nice, eta datu-base benetako buruz, eta ez bakarrik
kalkulu edo Google kalkulu-orriak, dela hizkuntza bat erabili ahal izango dituzu
benetan exekutatu kontsultei sartu datuak, datuak kentzeko,
bidaltzen diren datuak bilatzeko, nahiz eta garrantzitsuena, eta zu
ez dute nahiko eskuz erabili normalean agian, Google gisa
Hau bezalako kalkulu-orria.
>> Beraz, SQL, badago sorta bat da oinarrizko adierazpenak edo piezak
funtzionalitate eraikia.
Ez dago horiek baino askoz gehiago, baina distantzia handi bat joan ahal izango duzu
besterik ez dela jakitea izeneko hizkuntza honetan
SQL gutxienez lau ditu adierazpenak leverage dezakezu.
>> Ezabatu, datuak ezabatzeko, Txertatu, ilarak gehitzeko,
Update, aldatzekoa errenkadak, eta hautatzea,
atzeko ilaretan lortzean eta hori da, hain zuzen ere, SQL duenaren.
Osorik funtzionatzen Hain errenkadak denean, txertatu edo kendu duzula,
edo eguneratzeko edo hautatu zer ari zaren atzera lortzean emaitza multzo deiturikoak bezala,
Lerro array bat bezalakoa.
Ilaratan mordo bat mahai batetik.
>> Beraz, egun atzera, eta are gehiago, egun honetan,
elkarreragin dezakezu datu-baseko komando-lerroa erabiliz,
baina ez da bereziki fun erabili Zuri-beltza eta estilo leiho hau
eta benetan exekutatu komandoak eta zure datu-base ikutu.
Erabiltzaile interfaze grafikoa, edo GUI, da askoz hobe da, dudarik gabe,
eta, beraz, tresna gomendatzen dugu eta, zuretzat bitartekarien tresnaren
da phpMyAdmin izeneko.
Guztira kasualitatea da dela da gauza honen izena PHP du bertan,
esan nahi du, besterik gabe, jendea Programa horretaz idatzi zuen bere burua
idatzi PHP.
>> Baina, azken finean, administratzen buruz datu-base zerbitzaria, MySQL zerbitzari bat bezala
duzula agian, ahala do, CS50 tresnan.
Beraz, ez dago xehetasun gehiago hemen baino gaur buruzko zaintzeko behar dugu,
baina, zer da garrantzitsua da, ezker Atzelari datu-base guztien zerrenda bat da
zure ordenagailuan duzula, Zure CS50 tresnaren gainean,
edo amaierako proiektuak zaudela agian hirugarren batek, enpresaren batean dute
webgune edo web zerbitzariak eta, espazioa izango duzu ordaindu daiteke.
Beraz, ezkerretik da datu baseak, eta horietako batek
pset7 bertan maileguan hurrengo kopiatu nuen aste pset, eta, ondoren, goiko aldeko
Han konturatu ez da bat fitxak mordo, eta horietako batek
datu-baseak, SQL, egoera da, erabiltzaileek, esportazio eta abar.
Beraz luzea joan ahal izango duzu modu besterik ez konturatu
Erabiltzailearen interfazea gehiena goiko ezkerreko zutabean da
eta goialdean eskubidea han zehar.
Beraz, zer egin dezakegu benetan honekin?
Beno, dezagun hasteko bat sortzeko informazio-bit gisa jarraitzen du.
>> Demagun honako kasua, hala izango da egun gutxi barru izango da,
bat ezartzeko nahi duzun web, CS50 Ogasun izenekoa,
eta kokatzeko aukera ematen du erosten duzunean aipatu unquote eta stock saltzeko.
Eta hori irudikatu joan duten stock prezioa,
azken finean, ikusiko duzun bezala, Yahoo Ogasun hitz eginez.
Zein, wonderfully, doako zerbitzua eskaintzen du Horren bidez, duzu stock ticker batean gainditu ahal
GOOG Google, eta atsegin izango Google egungo stock eman duzu atzera
Iraganean barruan prezioa Minutu batzuk behintzat.
>> Beraz, hori erabili ahal izango duzu, azken batean, to erabiltzailearentzat itxurak
erosi eta saldu benetako diru birtuala erabiliz stock,
baizik eta lehen gauza erabiltzailea da ikusteko dut
bertan eskatu die hasierako pantaila hau da bere erabiltzaile-izena eta pasahitza.
Eta horrela, lehenengo bat zuretzat erronka pset7
da atzera amaieran martxan jarri ahal izango da datu-basea, izango bada kalkulu-orria,
hori gordetzeko joan erabiltzaile-izenak eta pasahitzak
eta, azken finean zer izakinen jabe, eta Zenbat, eta zenbat cash dute,
beraz, beste gauza mordo bat beste mahai, edo kalkulu-orriak.
>> Beraz, dezagun nola begirada bat Baliteke hasiera batean agertzen dira.
Atzera joan nahi dut aparatuaren eta ez naiz
URL honetara joan hemen joan phpMyAdmin localhost / phpmyadmin
eta ikusiko duzu dela hartzen me interfaze bat
zehazki ikusi bezala dugu pantaila jaurtiketa, eta hemen I
datu-base berri bat erantsi hitzaldia gaur eskatu du
eta utzi aurrera Lehenengo eta klikatu pset7 on.
>> Aukera pare bat izan badirudi I, berriekin bat, taula berri bat sortzeko,
eta erabiltzaileei lotura, Dagoeneko sortu dut taula bat da.
Beraz, zer da taula bat?
Beraz Excel erabiltzen baduzu aurretik, eta dut baduzu
zenbakiak erabili edo Google Kalkulu-orriak, ireki leiho bat
eta sorta oso bat lortuko duzu errenkada eta zutabe,
baina, ondoren, normalean lan-orriak behean, edo fitxa desberdinetan zehar.
You bakoitzak pentsa dezakezu worksheet taula gisa
beraz, datu-base hori, azken finean, da a bat edo gehiago taulak konbinazioa, bata
edo lan-orriak gehiago, in the kalkulu-normal bat munduan.
Hargatik aurrera me eta Ezkutatu worksheet hau
premade dudala, erabiltzaile izeneko, a.k.a.
Datu-basearen taula.
Eta behera joan I izanez gero, utzi gerturatzeko me out apur bat,
hau da phpMyAdmin zer kontatzea da Taula honen barruan dago digu oraintxe.
Pixka bat nahasgarria da hasiera batean Begirada UI ez delako
munduko gauzarik politena da, baina zer interesgarria da zati honetan hemen.
NAN, izena, eta hash.
>> Aldez aurretik, eta eskuarekin izango zara hau arazo girotuta zazpi,
super bat duen fitxategi bat ematen dugu datu-baseko taula txiki, maileguan benetan
hacker edizioan batetik arazoa bi multzo,
horietatik barruan sei ilaratan daude.
Belinda guztiak bata modu Zamyla bat behera,
eta horiek ezkerreko du nabarituko Erabiltzaile izen bat bezala identifikazioak bakarrak dira,
bi, hiru, lau, bost, sei, osoko zenbakiak eta, ondoren, eskubidea egiaztapenekin dira.
>> Eta, baldin eta aurka daude, ez duzu egin hacker edizioa arazoa bi multzo,
baina hash bat besterik ez da segurua behar bezala ohar gutxi batzuekin pasahitza.
Eta beraz, hemen zer ikusten duzun enkriptatuta sei guztien bertsioak
Arazoa gure pasahitzak ezarri bi edizioan hacker.
Orain ezkerreko besterik GUI stuff batzuk, Lerro honetan editatzen, ilara hau kopiatzea,
Lerro honetan ezabatzen.
>> Baina zer da interesgarria gaur egun honako hau da.
I actually has daiteke Taula honetan esperimentatzen.
Beraz, joan nintzen, eta egin klik SQL bada fitxa, testu kutxa handi hau lortu dut.
Eta hori ez da nola goaz egin ezazu benetan idaztean kodea.
Argi izan, phpMyAdmin Hori besterik ez da tresna bat da
Poke digu datu-basearen inguruan utzi du eta utzi esperimentu galdera egiteko gurekin.
>> Horrela, esate baterako, eman dezagun Zehazki hau exekutatu dut.
Aukeratu, hau da horietako bat keywords lehenago, star aipatu dut,
horrek suposatzen guztiak mahai baten zutabeak.
Zer taula From?
Beno, erabiltzaileei.
Eta, adi, ez da hau SQL hitzarmena bitxi
non benetan erabiltzen duzun Atzera akainak, normalean,
Komatxorik ez bakar eta ez komatxo bikoitzak taulak izenak aipatzean,
beraz, atzera aurrekontua buruzko gauza da Goiko ezkerreko zure teklatua eskutik gehien
litekeena.
>> Hargatik aurrera me now eta besterik ez dela bakarrik utzi
eta joan behera eta sakatu Joan, eta ez gara benetan gauza bera ikusteko.
Besterik ez dute SQL kontsulta bat exekutatu dugu hautatu dena izar esaten
erabiltzaile izeneko taula, eta atzera lortuko duzu, hau da.
Azken finean, gai izango garen gauza bera egin kodean,
baina orain guztientzat nahi dut ez zen ikusten nire nabigatzailean.
Beno, egin dezagun zerbait utzi apur bat desberdina.
Dezagun atzera me SQL fitxa, eta demagun besterik gabe, zer da hori?
Zamyla bere guztiak galdu ditu dirua, eta, beraz, da
Gurekin denbora bere erabiltzaile gisa ezabatzeko.
She dagoeneko ez eta saioa hasi.
>> Beraz, ez dut ezabatu from-- esanen ondo, kapitalizazioa mantentzea
koherentzia, ezabatu erabiltzaileen bertan.
Eta, beraz, hauek izan dezakegu predikatu, edo horiek
sailkatze, nire adierazpen amaieran non eta nola izan dut Zamyla ezabatu?
Bere izena Zamyla historikoetan, beraz, zutabe, zutabe bat
izendatu zuten, beraz, non name = "Zamyla".
Eta hemen bikoitza erabiltzen dut komatxo edo komatxo bakar,
atzeko ticks denean bakarrik erabiltzen dituzu izenei buruz hitz egiten, esate baterako,
taulak edo eremuetako.
Eta utzi Joan hemen sakatu me.
Eta orain, web orrialdea da Apur bat uptight izateaz.
>> Edo, ez duzu benetan exekutatu ezabatu nahi erabiltzaile izen berdinen Zamyla from?
Bai.
Beraz, orain, atzera joan bada nire mahai dugu klikatzen erabiltzaileek, Hm nabarituko.
Goofed dut.
Eta hain zuzen ere, mota I klik egindakoan kanpoan hain azkar
zuen, nahiz eta ikusi ez duzun error gorriz mezua, agian.
Zer oker egin dut?
IKUSLEEN: ez duzu behar bere izena larriz.
DAVID J. MALAN: Bai I bere izena kapitalizatzen,
baina benetan username-- bere I pare akats bat egin, ezta?
One, bere erabiltzaile-izena da Zamyla, minuskulaz Z,
eta zutabe-izena erabiltzaile-izena da, ez aipatzearren, beraz Berriro egin dezagun.
Dezagun aurrera eta erabiltzaileei nondik ezabatu
username aurrekontua unquote "Zamyla" berdin.
Guztiak eskubidea?
Beraz, itxura apur bat hobeto, utzi behera joan, joan eta sakatu Joan.
Oraindik joan me at Yell ziur izan.
Ezkutatu I Bai, eta orain ikusiko dugu, Egia hau gertatu zen, benetan
azkar, bat baino gutxiago Bigarren zalantzarik, honi
got exekutatu kontsulta da, zehazki.
Baieztatzeko, erabiltzaileei sakatu me eta hain zuzen ere, gaur egun Zamyla desagertuko da.
Orain egin dezagun kontrakoa utzi.
Demagun Gabe duten nahi du Webgunean izena emateko.
Zer da SQL kontsulta, zer da Komando Gabe gehitzeko idatz nezakeen?
Beno nahiko erraza da.
Erabiltzaile txertatzeko, eta orain apur bat críptica xelebrea.
Zehaztu behar dut, zerbitzaria, zer esleitu nahi ditut eremu.
Ez benetan axola zer Gabe ikastetxerako ID zenbakia da, beraz, albo batera noa.
Naiz ordez esateko joan izena, hash, eta gero
balioekin jarri nahi dut ez da Gabe izango.
Eta gero, bere hash, ez dakit.
Beraz, oraingoz, noa uzten duten handi bat egin zuen.
Itzuli dugu nahi arazo multzoa
zehaztapenak nola benetan egiten duzun bezala.
>> Beraz, berriro ere, sintaxia.
Taula izena txertatzeko, orduan a eremuen zerrenda parenthesized,
zutabeak gehitu nahi duzun balioak, eta, ondoren,
antolamendu zehatza bera ezkerrean gehitu nahi dituzun balioak eskuinean,
eta besterik ez delako itzulbiratzeko Testua apur bat luzea da.
Beraz, orain utzi egin klik me Go.
Lerro bat sartuta.
Eta orain joan I itzuli bada erabiltzaileak, zer da interesgarria
dela ez Gabe bakarra da, gaur egun dauden datu-basea, zer da itxuraz bere izena?
>> Beno zazpi da.
Zergatik da zazpi denean ez nuen gehitu?
Beraz, ere, da bat Ezaugarri basearen lortuko duzu.
Asko funtzionalitate eraikia.
Bihurtzen denean, dela sortutako mahai hau,
Aurrez I automatikoki da ID bat esleituko dira, kasuan
it-gehikuntzak.
Beraz duzun inoiz inguruan poked bada, eta zein den zure Facebook ID begira geratu
zenbakia da, egun hauetan ez da benetan , baina Facebook gauza bat egin API gisa,
Aplikazio-programen interfazea, Horren bidez lortu dezakezu
Datu sorta osoa buruz zeure burua, zure lagun inguru,
eta zure konexioak.
Eta zer ziren halako izateko cool, egun atzera,
zen bilatuko behar duzu zure Facebook NAN zenbakia izan zen.
Mark Zuckerberg, adibidez, hiru da
gunearen egileak hartu duelako.
Eta istorioa doa, sortu zuen bi proba kontuak, erabiltzaile bat eta bi,
zein ondoren ezabatu egiten zuen.
Eta, beraz, Zuck, bere erabiltzaile-izena da gisa Facebook-en, NAN kopurua hiru da,
eta guztiok askoz zenbakiak egun horiek hiru baino handiagoa da.
Izan ere, uneren batean Facebook urrundu egin zen
nahiz eta int bat, erabiltzen ez uztea bertan 32-bit balio bat da erabiliz
hurrengo urratsa egin dute, funtsean, luze bat, beraz,
duten lekua izan dute nahiz eta erabiltzaile gehiago erregistratzeko.
Beraz, pixka bat Izan historiko fun.
>> Beraz, besterik gabe, oinarrizko sintaxia horrekin
pare bat exekutatu genuke kontsultak, baina ezin dugu benetan
Gauza mordo bat gehiago egin SQL batekin.
Eta ikusiko duzu, azken batean, arazo girotuta zazpi
bat egin behar duzula diseinu erabakiak zenbakia,
horien artean izango da joan zer datu-mota erabili.
Beraz, besterik C bezala, ez dira datuak base batean mota, MySQL bezalako,
eta datu-mota aukeratu behar duzu Halaber, eremu horiek hemen.
Char, varchar, Int, int big, hamartar eta data ordu, eta beste asko.
Beraz, ez benetan dezagun.
Dezagun asmoa ez ote genuen erabiltzaile honen eskua mahai
eta utzi aurrera me eta sortu, for neure burua, hitzaldietan, eta datu-basea
benetan utzi aurrera me eta ezabatu Mahaian hemen dut dagoeneko
beraz, benetan sor dezake honek.
Whoops.
Hau askatu nahi dut mahaia, eta orain naiz
berriro joan joatea hemen baino gehiago hitzaldia datu-basea,
Mahai bat sortu nahi dut erabiltzaile izeneko eta dezagun
besterik ez egin hiru zutabeak Hasieran eta sakatu Joan.
>> Orain, zati handiena, berriro, hau da, besterik
izeneko tresna grafiko hau erabiliz phpMyAdmin, eta orain zer egiten ari garen
Taula bat sortzeko da.
Beraz, hau da joan File bezalakoa da, New, eta Excel fitxategi berri bat sortzeko.
Beraz, niri galdetuz du pare bat galderak, ezkerretik eskuinera,
zer da lehen zutabean izena, eta, ondoren, bigarren zutabean izena,
eta hirugarren baten izena.
Hargatik birsortzeko honetan.
ID, eta, ondoren, erabiltzaile izen bat izan zen, eta gero hash beste izan zen.
Beraz, datu-mota da zer egin beharko lukete izan orain IDa bezalako eremu batean?
>> Hona hemen datu moten zerrenda osoa da zure eskura base batean,
eta orain dezagun int joan besterik ez.
32 biteko balioa, ez dut Uste errealistan naiz
4 milioi baino gehiago izan da joan Nire kontua lankideei, nire zerbitzuan,
beraz, ez naiz mugitzen jarraitzea hurrengo galderara on.
Ez dut zehaztu joan luzera edo baloreak,
Ez da aplikagarria da Hemen int bat, per se.
Eta orain zehaztu dezaket, itxuraz, lehenetsi
balioa, eta hori ez dut zehaztu joan.
Kolazioa A, ez dakit zer dela.
Atributu bat.
Orain benetan egiten dugu diseinua erabaki dute.
Beraz, ez da eremu batzuk hemen, ez guztiak horietatik dira aplikagarri, baina sinatu gabe
besterik gabe esan nahi du zer?
Hau int izan behar?
Just ez negatiboa.
Beraz, 0 gora egon behar du.
Ez, ez dut nahi duelako egiaztatu joan Erabiltzaile bakoitzak ID bat izan nahi dut,
ezin da nulua.
Eta, ondoren, get batzuk gehiago behar ditugu hau bezalako diseinu erabakiak interesgarria.
Itzuli dugu honen une batean, baina zer datu-basea beste ezaugarri bat
da dela esan dezakezu Datu-base zerbitzaria aurrera
eta optimizatzeko zeure burua, zure RAM eta zure disko gogorrean,
beraz, hautatzen eta txertatzen, eta ezabatzen, eta eguneratzerik benetan azkar.
Kontrastatu hau pset5 batekin.
>> Zerbait begiratu nahi baduzu hash taula, eta horrek
datu-base gisa uste duzu, duten guztia egin behar izan
hash taula azkar egiten lan.
Da bezala, jakina, duzu.
Eskuin?
Denbora fina guztietan jarri izan duzu gauza findu, hash funtzio bat lortzean
eskubidea, out nola kalkulatzen kuboak asko behar.
>> Baina zer polita, berriro ere, buruzko datu-basea da
punt besterik ez duzu guztia honek beste pertsona
dutenek ez dute pentsatu zuretzat bidez, eta jarraitu
Hemen esan pean noa indizea da identifikatuta eremu horretan
da modu nagusia izango da erabiltzaile identifikatuz datu-base honetan.
Ez dut uste joan Zamyla Zamyla gisa,
Uste noa Bere kopurua 6 baita.
>> Zergatik da, agian, hobeto intuizioa eta eredua pentsatzea
Zure ilaratan banakako erabiliz bakoitzak zerbait ordez zenbaki bat
kate bat, Zamyla bezala bezalako edo Gabe edo gehiago kate oraindik?
Bai?
>> IKUSLEEN: ID bat berezia da?
DAVID J. MALAN: Esan berriro?
IKUSLEEN: ID bat berezia da?
DAVID J. MALAN: ID An bakarra da, baina suppose--
oro har, hala Erabiltzaile izen batekin, demagun
Era berean, esan nuen, ez bakarrik ikusi ahal izango da, inork Zamyla munduan, eta inork Gabe bakarrik.
Berezitasuna inposatu nezakeen kateak murriztapen ere, nahi nuen.
Beraz, ez pentsamendu txarra.
>> Ikusleak: More segurua.
>> DAVID J. MALAN: gehiago seguru, zergatik?
IKUSLEEN: Ezin duzu esan zein hau da, erabiltzaileak legez.
DAVID J. MALAN: Ados, ezin ditugu, erabiltzaileak kontatu
da eta horrek, beraz, ez da bat pribatutasun alderdi,
batez ere, identifikazioak agian URL agertzen.
Beraz, ziur, hori esango nuke lan mota, too.
Beste pentsamenduak?
Bai?
>> Ikusleak: errazagoa da bertan eragiteko int on.
DAVID J. MALAN: Hori da benetako kicker da.
Besterik eraginkorragoa, edo ordenagailua errazagoa,
zenbaki oso bat eragiketak egiteko.
Eskuin?
Int bat dago bermatuta izan 32-bit, Zamyla berriz
da gutxi karaktere luzea, Gabriel dagoen karaktere batzuk gehiago luze,
Davenport benetan luzea da, eta, beraz, handia da ez bereziki eraginkorra da erabiltzeko
kateak balioak konparatzeko eta begiratu eremuak, eta egunera-zelaietan,
zuk kanpoan bazara osokoa bakarrarekin.
Just 32 bit.
Beraz, erabiltzaile izenak, ere, modu horretan, ez dute berezia izan da,
ziurrenik behar zuten arren izan, eta nahiz eta modu honetan gehiegi
Erabiltzaile bat behar da onartzen liteke bere izena aldatu.
>> Beraz, utz dezagun orain hau bezalako Erabiltzaileak identifikatzeko modu lehen.
Hau da, datu-basearen kontatzea aurrera eta zeuk optimizatzeko
beraz up look hori IDa super azkarrak dira.
AI, horribly izendatu, besterik Auto gehikuntza esan nahi du,
eta hau da Kutxa egiaztatu behar dugu
Identifikazio-eremua zehaztu automatikoki niretzat eguneratuko da,
eta ondoren, naiz joan eskubidea hemen jaon
eta Egia ez naiz benetan interesatzen zait Edozein arlo hauek gehiago.
Zalantzarik ez baitago.
>> Beraz, ez dut hemen itzuli egingo, Lehen zutabean, nora
Erabiltzaile-izena zehaztu behar dut eta hash, eta dezagun
an gutxienez foku at oraingoz inork bigarren.
Int Seguru asko ez da eskubidea deia, beraz, zer gehiago zentzuzkoa agian?
>> Ikusleak: Testua.
DAVID J. MALAN: Esan berriro?
Ikusleak: Testua.
DAVID J. MALAN: Idatzi?
OK, testua entzun nuen.
Zer gehiago?
Motatako daukagu ​​aukera mordo bat Naturan testualak dira.
Beraz, noiz, eta zergatik, do horietako batzuk erabili duzu?
Beno char, aurkakoa duzuna gerta uste, ez da pertsonaia bat bakarra.
Karaktere kopuru jakin bat da.
Beraz, bada, badakigu-izen guztiak direla Zortzi karaktere bezalakoa izan behar du,
erabiliko zaharragoak ohikoa izan den bezala sistema informatikoak, char esan izan dut
eta, ondoren, esan izan dut 8 hemen.
Hori da, hirugarren zutabeak bihurtzen denean dagokio taula bat sortuz.
>> Baina hori da gogaikarriak mota pertsona batzuek agian delako
Erabiltzaile izen luzeagoa izan nahi Zortzi karaktere baino,
Baliteke pertsona batzuek nahi Erabiltzaile izen laburragoa dute,
beraz, zergatik konpromisoa neuk kopuru jakin bati?
Zergatik ez aldagai bat karaktere eta besterik
esan duten gehieneko izen baten luzera da, ez dakit, 64 pertsonaiak bezala.
Ezin dut lagunik uste dutenek 64 karaktere baino izen luzeagoa izan,
eta hori oso motza bada ere, ezin duzu zalantzarik erliebe sortu arbitrarioki.
>> Beraz varchar aldagai bat da chars kopurua.
Testua ez da sena txarra, eta Egia sort hori ez du esaten,
baina testu-eremu bat izan daiteke 65.000 byte gutxienez bezala.
Hori da, ziurrenik bat Overkill eremua, eta hain zuzen ere, yup, 65,535.
Hori da, ziurrenik bat Overkill izendatzeko, beraz, makila dugu, normalean,
textual for varchars ekin eremu eta hash, gehiegi.
Hash, bihurtzen da, bat egin genezake varchar baita edo horrelako zerbait,
baina ez dugu gaur dutelakoan on Kriptografia han eta zenbakiak
egia esan dezakegu dela bere luzera erabili nahi.
>> Baina utzi behera joan me eskuinera.
Bat bakarrik izan dezakezu indizea lehen mahai bat,
baina ez horiek edozein aplikatu nahi dut, orain, erabiltzaile izena da, esan nahi duzu?
Zer erabiltzaile-izena behar da vague batean oinarritzen lau aukera horiek ulertzeko?
Just bere izenez?
>> Ikusleak: Unique.
>> DAVID J. MALAN: Beraz, berezia da, ezta?
Eta gertatu da, ez bakarrik dela gai datu base bat esango dizu, aldez aurretik,
hau lehen modu bat da esparruetan identifikatuz.
Ere esan dezakezu hau da eremu berezia izango da.
Ez da izango gauza konfiantza dut,
baina datu-basean nahi nuke funtsean, hori bada baldintza, beraz,
dela inoiz erregistratzen saiatu badut izen bereko beste bi erabiltzaile,
datu-base out lauak ez dit utzi du.
Baliteke kodea gehigarri batzuk ditut PHP askoz eragozten ere,
baina datu-basean, ere, bermatu ahal dela inoiz gertatuko.
>> Orain, bat alde batera utzita, batez ere, gisa azken proiektu uste duzu,
mind da indizea eta osorik mantentzeko Testua oso erabilgarria egia esan.
Datu-base handiago bat, ez badaukazu dozenaka, baina ehunka edo milaka
edo are eremuak milioika, egin dezakezu halaber, aldez aurretik, datu-basean kontatuko
hau eremu bat noa da asko behar da bilatzen.
Agian bere izena, agian bio da, ez bazaude
Facebook-antzeko webgune bat egiten duten Erabiltzaile ahalbidetu paragrafoetan ditu
gordetzen du, eta, nahi izanez gero aldez aurretik, datu-basean kontatuko
Eremu honetan beharreko bila noa asko, baina ez da zertan bakarra,
sortu me indize bat zehaztu dezakezu.
Edo, esan dezakezu ere baimendu egin dit Komando bezalako bilaketak arbitrarioa mota
edo Kontrol F, zu bezalako Word Processor batean gerta daiteke,
beraz kateak arbitrarioa dela ikusten da edo arlo horretan azpikateak.
Bestela esanda, ari gara seihilekoan puntua
non ez duzu kezkatu eraginkortasunez gauzak nola ezartzeko.
Besterik ez duzu buruz jakin zer diseinu erabakiak beraz zarela egiteko
tresna eskubidea erabiliz Ordena ezaugarri onura ateratzeko ere merkataritza
beste pertsona duzu eraiki.
Beraz, laburpena, lehen egin beharko lukete bakarrik dute bat, duzun bakarra izan dezakete,
eta gauza duzun konpromisoa ari da Eremu bakarrean identifikatzeko erabiliz.
Berezi besterik espiritua antzekoa da, baina noizean behin bakarrik gerta daitekeen erabili,
baina datu-basea da inposatu nahi izatea.
Index besterik esan preemptively Azkartu etorkizunean
dudala bilatu dezakezu, beraz, arlo horretan gauzak.
Eta gero, testu osoa, oro har, aldeko paragrafo, edo saiakerak, edo organo handiak
Testuaren bertan duzu baliteke ere izan nahi
izar baliokidea bezala basa-txartelak.
Eskuin.
>> Beraz, mota izan zen guztiori aldi berean.
Ea ez badugu distill Let Ezaugarri horiek pare bat
eta, ondoren, zerbait eraikitzeko nahiko erraza da, baina indartsua.
Beraz, beste artean diseinu erabakiak Oraindik
azken finean, behar da batera joan biltegiratze motorren lerroetan.
Eta utzi egin me besterik honetan aipamen azken proiektu aurrea hartzeko,
eta aurrea dezagun esan gabe, egin dezagun.
Dezagun eraikitzeko txiki honetan Aplikazio lehen.
Nire terminal joan noa leiho, eta hemen ere ez dago
bakarrik counter.php, oraintxe goaz gisa jada ez germane kentzeko,
baina sorta oso bat daukagu guneak eta honen
da izpiritua oso antzekoa izango da zer arazo ikusiko dituzu zazpi ezarri.
>> Beraz, hiru guneak daukagu Biltzen publiko eta txantiloiak, eta horrek
zehazki non dagoen utzi dugu Gure osoan MVC paradigma batera astelehenean.
Eta laburpena, jendaurrean dago joan duten erabiltzaileek nahi dut edozein agiria orain
v izan ere bisitatu ahal bere nabigatzailea URL bidez.
Txantiloi.
Zer egin templates jarri dugu?
Nolako stuff?
Ez zegoen askoz baina pare bat fitxategiak behintzat astelehenean.
Bai.
>> Ikusleak: goiburua eta orri-oina?
>> DAVID J. MALAN: goiburua eta orri-oina.
Gaur egun, beraz, antzeko zerbait egin behar dugu, gehiegi.
Nik fitxategi batzuk gehiago lortu dugu, baina , Orri-oina ikusten dut Header ikusten dut,
eta, ondoren, beste fitxategi mordo bat.
Beraz, honen baliokidea da horrek V MVC ikuspegia, eta,
berriro, izango da, pixka bat gehiago Arazoa argi multzo zazpi,
baina hori besterik ez da karpeta bat naiz da nire estetika asko jarriz.
Nire HTML, nire forma asko asko.
Bitartean, eta proiektuaren baitan, beste duten hiru fitxategi hauek ditu direktorioa
eta dezagun begirada azkar bat horietan.
>> Aurretik joan noa eta ireki config.php.
Out, askoz Bihurtzen da terminoa lehenago bezala,
zorrotz sartzen duzu CS50 dot h pset7 batekin.
Gaurko adibidean, bazoazela horren baliokidea egin
eskatzen adierazpen bat eraginkortasunez
Hainbat lerro hauek dira.
Beraz, argi izan, hau da, fitxategi batean config.php izeneko.
Eta nabarituko zer egiten ari da.
Honez itxuraz zerbait egiten críptica, inflexio akats mezuak
haiek ere ikusi ahal izango duzu nabigatzailean.
Da, ondoren, itxuraz beste bi fitxategi eskatzen
beraz, C # include bezalakoa da, eta ondoren, hau ikusi genuen,
eta haiekin bermea dugu, hau aktibatu erosketa funtzionalitate bezala saskia dela.
>> Hau cookie borondate esan nahi du atzera eta aurrera bidaliko dira.
Beraz, zergatik da hau interesgarria?
Ba, joaten gara itzuliz gero hau dugu direktorioa eta ireki, adibidez,
constance.php.
Iragarki PHP egiten duen laguntza-konstanteak, ez da nahiko C. define bezala
Horren ordez, literalki duzu definitu esan, eta oharra
dudan aldez aurretik gordeta fitxategi honetako lau konstanteak.
Gaur egungo datu-base bat, baterako Nire pasahitza, nire erabiltzaile izena,
eta zerbitzari baten izena da.
Beraz, horiek dira benetan izango da Nahiko arazo bertsua multzo zazpi.
Azkenik, eta hau da, non nago nice funtzionalitate batzuk lortzeko
langileen, functions.php idatzi dugu kodea sorta bat da,
eta horren zati batek lapurtu I arazo multzo zazpi
Gaurko, gauza mordo bat egiten du eta dezagun horietako bat begiratu besterik ez
bereziki.
Funtzio hau hemen, kontsulta, izango da
PHP funtzioa deitzen dugu Ordena SQL exekutatu.
Duela une bat erabiliz ginen phpMyAdmin, baina hori besterik ez
Ikaskuntzan moduko for eta diagnostikoak egiteko
eta zure datu-base multzo ahaztu.
Noiz benetan erabili dituzu zure datu-basea, zuk, giza,
dira, jakina, ez da joan egingo dio sortu den web bat
orria aldi bakoitzean norbait erregistratzen du.
Kodea idatzi behar duzu duten txertaketak eta eskariaren erabiltzaile ezabatzen,
eta horretan ari gara hori egin ahal izateko joan Kontsulta funtzioa bidez.
Orain joan I behera bada, ez da Ezaugarri batzuk gehiago izango.
Redirect da joan idatzi dugu funtzio bat izango
zuretzat egiteko aukera ematen duena erabiltzaileari bidali URL bestera,
eta errendatu funtzio bat da, nahiko bezala ikusi Astelehena, benetan errendatzen
txantiloi bat, baina gehiago ere horiei buruzko pset7 ibilaldia propioen bidez forma.
Oraingoz, dezagun aurrera eta hau egin.
>> Dezagun joan nire hitzaldiak taulan sartu eta Ikusten ez dagoela da gaur egun ezer
Hemen, besterik gabe, eta utzi ere joan me nire direktorioa publikoak, non sartu
fitxategi bat besterik ez da, index.php.
Fitxategi honek agertzen super simple izateko une honetan, itxura besterik ez hau atsegin du.
Oso zenbat atsegin dugu utzi off astelehenean.
Fitxategi hau eskatzen dut, config.php, eta bertan dago
bat direktorioa, biltzen dituen dot dot da, nire gurasoak,
eta, ondoren, besterik ez da fitxategi hau bihurtzean.
Beraz, zer fitxategia hau?
>> Dezagun ireki nire txantiloietan form.php, eta hau ikusiko dugu.
Super simple, itxuraz datu-orri hau to _GET bat $ edo $ Bi_dali ek aurkeztu zuen joan.
Behatu check azkar.
Literalki ikusmen bilatu fitxategia.
Metodoa post berdin.
Beraz, ez da URL erabili behar dituzten bezala, Google ez, nik ezkutatu ordenatzeko
Informazio atzean eszenak, eta hori da
to bat aurkeztu joan fitxategia erregistroa deitzen,
eta fitxategia da oraindik ez dugu idatzizko
baina zer da hori joan da itxura hau dute.
>> Joaten naiz aparteko orri bat baduzu Hori zer localhost / index.php itxura.
Eta berriz, zerbitzari besterik index.php suposatuz.
Sartu.
Beraz, non gaude , eta zer egin nahi dut
da izango gauzak idatzi ahal David bezala, eta, ondoren,
Nire telefono zenbakia, eta horrek esan egingo 617-555-1212, oraingoz, izena eman
eta, orain, erregistroa ez da topatu.
Beraz, hau martxan jarri ahal izateko behar dut.
Hargatik Látigo bizkor en up honen antzeko zerbait.
Dezagun joan nire direktorioa publikoan sartu eta egiten erregistroa gedit,
eta, orain, aurrera noa, eta joan hasteko PHP moduan, egin genuen bezala, astelehenean,
eta itxi PHP etiketa eta Egin gauza pare bat utzi.
>> Beraz, inork, jakin dut inprimaki hori idatzi zuenik,
honako hau egiaztatu nahi nuela.
Hutsik badago, edozein erabiltzailea idatzi sartu izena eremuan, eta gero
Zerbait esan nahi dut atsegin barkatu izena falta da.
Barkatu, bere aldetik, ez da PHP gauza eraikia,
idatzi dugu funtzio bat da pset7 functions.php
horrela sartzeko aukera izango duzu.
Bestela, beste arlo bada hutsik dago, zenbakia da, orduan naiz
nahi duela, barkamena eskatzea Erabiltzaileak eta esan kopurua falta diren.
Gorde fitxategi hau.
>> Orain goazen atzera nire nabigatzailea, go foroa atzera saiatu berriro.
Izena eman.
OK.
Ez da ezer gertatu, eta hori ona da.
Ez nuen errore-mezu bat jaso.
Baina horren ordez, utzi freskatuz honetan orria, eta ez da ezer ematen.
Malditos.
Hori egiteko.
Izena eman.
Zer oker egin dut?
Hutsik badago, $ Bi_dali izena.
Esan berriro?
>> Oh, jakina.
Garrantzitsuena, ahaztu dut bertan da eskatzen ("../ includes / config.php.").
Sarbidea izan behar dut Barkatu funtzioa,
Horregatik ez da ezer gertatzen ari zen.
Funtzioa ez da benetan existitzen.
Hargatik saiatu berriro.
Dezagun berriro orria, sakatu Erregistratu.
OK.
Hor dago.
Beraz, irteera gaude Hemen ikusten emaitza da
hots Barkatu bat funtzioa, super simple,
eta besterik ez bistaratzen da edozein dela ere Argumentu gisa ematen dut.
>> Ondo da, beraz dezagun lankidetzan aritzeko.
Dezagun ematen nire izena David bezala, erregistroa,
zenbakia OK dezagun falta direla ematen, gehiegi.
617-555-1212.
Izena eman.
OK.
Beraz, guztiak ondo orain, besterik ezer interesgarria gertatzen ari da.
Beraz, gaur egun dezagun zerbait gehiago egiteko en Hau atsegin gertatuko interesgarria.
Me phpMyAdmin sartu, eta dezagun benetan erabiltzaile izeneko taula bat sortu,
Emateko hiru noa zutabe, eta azkar egingo dut
ID sortu eta gero izendatzeko, eta gero zenbakia,
eta NAN eremuan naiz int bat bezala uzten joan.
Izena eremua noa to varchar gisa utzi,
eta esan dugu 64, zertxobait arbitrarioki.
Kopuruak noa egiteko, zer dakizu?
Sartu gara US zenbakiak hemen onartzen,
beraz, naiz zerbait egin nahi dut char bezala eta, ondoren, 10 karaktere
Gehienez area kodea batentzat eta, ondoren, zazpi digituak.
Eta gero, hemen baino gehiago, ez naiz joan zehaztu auto gehikuntza arlo horretan,
hau lehen mailako gako bat izan dadin, eta Animatu eta ez joan nahi dut
egiaztatu beste kaxak horiek edozein.
>> Beraz, orain, azkenik, I klik Save, eta atzera egin dut nire erabiltzaile taula,
hau da, zer looks balitz bezala dut orain egin klik fitxa berrian egitura bat.
Beraz, argi izan, besterik phpMyAdmin-en modu da
Zure datu-basearen esaten ID bat, izen bat eta zenbaki bat dauka
konfigurazioak partikular horiekin eta eremu gainerako ez ikusi beharko dugu
oraingoz ez dago.
>> Beraz, orain zer egin nahi dut?
Beraz, orain banoa hartuz gero nire Iturri-kodeak, dena ondo badago
Honako kontsulta exekutatu nahi dut.
Txertatzeko, eta besterik ezin dut Esan erabiltzaileek egiten dut zorrozki ez
Behar horietan ticks bada Ez erabiltzaile bezalako hitz arriskutsua.
Izen esatera noa, zenbakia, eta, ondoren, hemen nago
ez gogorra kodea joan balioen digitu oraindik.
Bi galdera ikurrak jarri dut.
Eta hitzarmen bat da hizkuntza askotan
Horren bidez, izan nahi baduzu Kate bat leku-marka
Galdera erabili joan zaren markak, arrazoiengatik zaitugu
itzuli berriketan segurtasuna, eta hemen
To horiek gainditu noa bi eremu bidaltzeko izena,
eta, ondoren, post-zenbakia, eta, orain, gorde fitxategia.
>> Eta orain ez dut joan joan behera hemen super bat da
Besterik gabe rendersuccess.php, esan zein txantiloi beste izango.
Oso azkar sortu nahi dut.
Geditsuccess.php eta besterik ez naiz joan H1 fitxategi hori arrakasta esan nahi.
Guztiak eskubidea.
Beraz, orain, goazen atzera nabigatzaileak, non lehenago bisitatu dut.
Dezagun aurrera eta berretsi idatzi nuen David ere, idatzi telefono zenbaki bat eman dut,
erregistratu.
Malditos.
Zer oker egin dut?
Beraz, errore bat ikusten dut hemen, Zure SQL sintaxi errore bat izan.
Salto me gedit itzuli dezagun, utzi atzera me to erregistroa,
eta zer ez ezikusia dudala Azken denbora garrantzitsua izan zen?
Hau behar dut.
Batetik baino beste jakin nahi duzu aurretik nabaritu, baina behar dut hau.
>> Beraz, orain, goazen atzera, eta hau lagungarria nabigatzailean ikusi zen
eta hori config.php zergatik akatsak txu dugu.
Dezagun aurrera, eta berritu, Jarraitu botoia, arrakasta.
Beraz, gaur egun baino gehiago joan me to my datu basea hemen eta sakatu Erabiltzaileak eta,
eta arakatu eta konturatu naiz orain David nire datu-basean aurkitu.
Orain teknikoki webgune honetan dagoen oraindik ez du internet publikoan,
beraz, ezin dut beste eduki Hemen jarriz pertsonak,
baina nik, orain nahi, zeren Esate baterako, bidali neuk testu-mezuetan.
Goazen gorputz bat hemen eta ikusten dugu benetan lan egiten bada.
Aurretik joan noa eta errenkada hau ezabatu
eta lausotzen dugu hau bideoa geroago
beraz, ez dugu egin internet osoan me Texting,
eta orain joango gara up to nabigatzailea eta joan gara hitzaldia
eta desberdina izango dugula idatzi zenbakia Hemen, erregistroa, arrakasta.
>> Beraz, gaur egun, nire zenbakia propioa da zentzuzkoa ere datu-basea, eta orain fun zatia.
Dezagun PHP benetan erabili egin Zerbait programazioaren,
bai komandoa bertatik lerroan edo beste nonbait,
eta orain, besterik ez naiz simple mantentzeko joan
eta sartu noa nire hemen eta honako hau.
Gedit script demagun, zaitugu testua, #! / user / bin / env PHP deitu,
atsegin azken aldiz ikusi genuen.
PHP.
>> Orain ez dut egin behar da joan config.php barne hartzen ditu,
nahiz eta agian hau izan arren error apur bat bultzatu.
Eta orain aurrera noa eta esan ilaratan, kontsulta, hautatu erabiltzaile batzuen izarra,
orain eta hemen ari naiz teknika bat egin da joan ilaratan bakoitzak ilara gisa denbora azken from.
Eta ez dut zerbait simple egin.
Printf demagun izena da hori, eta kopuru hau, backslash n dago.
Eta orain ez dut pasatzen joatea errenkadan unquote izena aipatu,
eta ilara aurrekontua unquote zenbakia, eta, gaur egun dezagun aurrera
eta nire terminal leihoa chmod a esta + x egiteko
testu exekutagarria izeneko script hau.
Eta dezagun exekutatu testua.
>> Ados, beraz, aurrera egiteko.
Beraz, orain idatzi dut bat komando lerroko script,
PHP izeneko, hizkuntza batean, horregatik eskatzen line,
konfigurazio horiek guztiak sartzeko konstanteak dudala zehaztu.
Datu-base eta abarren izena.
Izan ere, argi izan behar hau ez dela kasualitate bat,
utzi aurretik, joan eta izena emateko oso azkar, beste norbaitek Rob bezalako
eta berarekin emango 555-1212 zenbakira.
>> Eta orain, script exekutatu bada berriro, konturatu boterea
zer datu-base batera ari gara egiten.
Orain berehala ikusi nuen zer egin beste bi lerrotan nire datu base batean daude.
Beraz, gaur egun dezagun saiatu zerbait egin behar nahiz dotore barruan,
eta honen zatia dugu da Ez da aldez aurretik probatu,
beraz, azken aldiz Hau nik egin gauzak joan horribly awry,
Bideo dugun efektu hori.
>> Egia esan, bai, dibertigarria alde batera utzita.
A Beraz, azken aldiz, in Duela bi urte bezala hitzaldia,
erabaki genuen, erabaki nuen, nahi izan hori guztia ideia handi bat izango litzateke
emailak dinamikoki sortzen klase, datu-base CS50 osoa erabiliz
ikasleak, zuten eman digu bere zenbakiak eta euren mugikorrean eramaile eta zuk
pset0 tik liteke, , nola arrazoia bihurtzen da
Bug txikiak izan nuen nire programa eta pare akats bat egin zuten 2012an, eta uste dut.
>> Horren bidez, bat begizta niela zehazki gauza mota hau egin,
datu-basea baino gehiago errepikatzean, basetik Izen bat eskuratzerakoan,
basetik izendatzeko, eta ondoren bakoitzari buruzko begizta-iterazio email bat bidali nuen.
Baina horren ordez, email bat bidaliz, I email bat lehen iterazio bidaliko,
eta bi emailak bigarren iterazio bat bidali Hiru emailak bigarren iterazio da, eta horrek
gogoratzen dezakezu gisa gure asintotiko idazkera eztabaida
txarra O big honetan, bezalako n karratu I bidalitako zenbat mezu da
baina ez zen, nahiz eta emailak Testu mezuak izan zen.
>> Eta ezagutzen duzun bezala, asistentzia ez dago super altua amaieran seihileko aldera
eta beraz, cute izango litzateke pentsatu nuen ordua, esan "Zergatik ez zara klasean?"
Testu-mezu I klase osoa bidaliko da,
eta dibertigarria izan zen% 50a gustatzen klase, baina beste% 50, eta horietatik batzuk
freaked, izugarri igorri i ohar gozoa apologetico
langileek barkamena eskatzeko ondoren hitzaldia galduak besterik ez
Hau behin, ezta?
>> Beraz zela horribly awry.
Beraz, espiritu hori, dezagun saiatu hau berriro, baina nire zenbakiarekin besterik ez.
Aldez aurretik, functions.php, Idatzi dut funtzio hau hemen.
Honez testu izenekoa, eta horrekin hiru argumentu hartzen.
Kopuru bat, garraiolari, eta mezua.
>> Switch adierazpen bat erabiltzen dut bertan wonderfully PHP hartu kateak, eta ez bakarrik
osokoak, eta ez nuen ezartzeko oraindik horretarako laguntza guztia,
Besterik ez dut egin & T eta Verizon.
Bihurtzen da delako eramaile hauekin
email dute SMS pasarelak, Horren bidez, benetan ahal duzun
bidali mezu bat helbide bat Telefono vtext.com zenbaki bezala
eta, erabiltzaileak ez du blokeatu mezuak, joan egingo Bidez
Testu-mezu bat da.
>> Orain hori egin ahal izateko, gehitu dute noa eremu bat benetan nire datu basea azkarrean.
Joan sartu noa Nire egitura, eta ez naiz
Aurrera joan eta gehitu bat joan mahaiaren amaieran eremu.
Dezagun egin klik Joan, eta ez naiz garraiolari hau deitu noa
eta oraingoz ez naiz joan utzi bar testu gisa,
baina etorkizunean fancier izan dezakegu.
Azkar joan naiz nire taula sartu, eta ez naiz
Rob kentzeko joan, hori delako zenbaki faltsu bat da,
Hemen, editatu sartu naiz eta ez naiz Nire garraiolari eskuz aldatuko
Verizon, izan behar da eta orain hemen baino gehiago da.
>> Egin dezagun behatu check azkar bat.
Dezagun ireki gure testu gidoia, eta horrek itxura hau, garraiolari% s da.
Error asko gehiago egiten ari gara egin nuen, 2012an baino, garraiolari egiaztapena.
Eta orain, naiz joan nintzen Animatu eta gidoia re-exekutatu.
OK.
Carrier Verizon, eta horrek esan nahi du orain, zorionez, besterik ez dut hau egin dezake.
Aurten bezala, zorionez, hemen dugu.
>> Beraz, hau loop, barruan nago to printf hau ez besterik ez joan,
Ere dut testu deitu eta Funtzio abisuaren honen erabilera
zen kopuru bat hartzen du, bat garraiolari, eta mezua.
Beraz, ikus dezagun, zenbakia da joan izan ilara aurrekontua unquote "kopurua"
Ilara aurrekontua unquote "garraiolari" eta azkena mezua izan zen.
Ez hondatzeko aurten, koma.
>> OK.
Fingers zeharkatu.
Ikus dezagun honetan lan egiten bada.
Ondo da, beraz.
Hemen gara.
Let desblokeatzeko en telefonoa, hatzekin zeharkatu, madarikatua.
Undefined may-- aldagai oh itxaron, itxaron, itxaron, benetako azkar.
Real azkar, azkar benetako.
Hau da, erabat merezi du.
Let me hartzen, utzi grab me, uh-oh.
Eskerrik asko, eduki beste norbaitek hasi zen.
Dezagun aurrera eta ireki errealean azkar, dropbox.php / mail hemen.
Egonean.
Totally merezi.
Deskargak.
OK, iturri src8m.
OK.
>> Lerro bat gehiago hemen behar.
Oh ez da, izan Frosh da Berehal, da erregistroan, hiru at.
Oh kaixo, Margo, eskerrik asko.
Ados, eta lerro hau hemen falta nintzen.
Hargatik azkar hartu me kode-lerro hau,
bertan mail edo liburutegia barne hartzen dut hori benetan erabili nahi,
Azkar noa to Joan atzera funtzio sartu,
To honen hasierara joan noa artxibatzen eta fitxategi hori behar baita,
eta orain ez dut benetan zeharkatu nire behatzak atzera egin dut, komandoaren
lerroko script, zein da barruan Gaur egungo ostalari lokalean direktorioa.
Run testua.
Sartu.
Mail.
Egonean.
Mail.
Oh, OK.
Hemen gara.
>> Mail PHP Mailer berria lortzen.
Ba eskubide hori egin dut?
Malditos.
Zaie oh, itxaron, itxaron, itxaron.
Stand by.
, Agintzen dut, hau da beraz, merezi izango.
Helbidea.
Horregatik ez dut egin Adibide eskubidea klase aurretik.
Ugh.
Ondorengo hartzaileek kale egin.
Dezagun saiatu azken gauza bat utzi.
SMTP, batetik gehitu helbide ezarri, helbidea, hain zuzen ere.
Dezagun saiatu helbidea azken zatia dezagun.
Aw, benetan triste naiz oraintxe.
Eskerrik asko.
Baina benetan eskertzen dut guztiak testuak daramat bidaltzen duzunean.
Lortu duzu David honetan.
Herrigintza ari zara.
Dezagun utzi han eta astelehenean konpondu dugu.
Ikusi duzu ondoren.
>> DAVEN FARNHAM: Eta orain Deep Daven Farnham arabera pentsamenduak.
Zuhaitz bitar bat baso batean erortzen bada, eta inor ez egon C hobeto esanda [chuckling] behar.