[Powered by Google Translate] [Aste 8, Continúa] [David J. Malan] [Harvardeko Unibertsitateko] [Hau da CS50.] [CS50.TV] Hau CS50 da, eta, beraz, hau Astea 8 Hemen amaiera izango da. Jakina izan dugu urakan bat apur bat lehenago aste honetan, beraz, oraintxe bertan benetan da besterik ez duzu eta ni areto honetan, baina, gaur egun, gure elkarrizketa jarraituko dugu PHP buruz eta web programazio buruzko informazio gehiago, oro har, eta aurkeztu ere ideia datu-base, batez ere deitu MySQL, nahiko popular da egun hauetan, duelako eskalagarritasuna, baita libre eta open source ari delako neurri handi batean. Baina, lehenik eta behin, non utzi ditugu azken aldian begirada bat. Gogoratu ziren hainbat Frosh Berehal adibide begira, eta hau izugarri Inprimaki zen izan zen I 15 + urte. campus erregistro ikasle freshman kirol intramural benetan trek gehiago izatea patioan zehar Wigglesworth gabe PROCTOR batzuk ate azpian paper fisiko irristatu. Guztia online ordez joan zen bizitzera, baina aprobetxatu behar dugu teknologia batzuk, eta, beraz, bat, HTML, hipertestu markup hizkuntza behar dugu, eta berriro markup language hau duten web-orriak egin nahi duzun egituraz da. CSS apur bat erabiliz, egun hauetan, Kaskadako estilo-orriak, Horren bidez, web orrian stylizations erabili dugu hainbat sintaxia apur bat erabiliz, HTML horien egitura buruzko informazio guztia izan zen, berriz. Web programazio hizkuntza bat aurkeztu ere egin beharko dugu. Kasu honetan, PHP erabili dugu, eta PHP gaitu dinamikoki irteera edukia, baita egin programazioko gauzak. emailak bidaltzeko, oharra utzi dugu azken astean kasuan izan zen. Gogoratu kodea 2 zati izan zen. One, froshims3.php izan genuen, eta hori izan zen, neurri handi batean, barruan HTML markup CSS apur txiki hemen estilo-atributuak beraz, forma bera litzateke orrian, baina haratago zentratua inprimaki input ordezkari batzuk, testu-eremu bat, kontrol-laukia bat izan genuen, irrati batzuk botoiak, menu bat hautatu, eta botoi bat submit. Eta formulario honen bidez, aurkeztu duen fitxategi bat izan zen itxuraz izeneko register3.php dugu, berez apur bat begiratu honen antzeko zerbait. , Abisuaren, register3.php kodea gehienak email buruz izan zen. Baliozkotzeko bit inprimakia aurkeztu ziurtatu apur bat egin du eremu benetan ziren espero. PHP funtzioak Gero batzuk deitu genuen pixka bat sintaxia erabiliz, C. from maileguan arren Arrow operadorea honek aukera ematen du zerbait objektuetara bideratutako programazioa izeneko erabilera egiteko. Ez dugu horretan hemen zehatz-mehatz, baina gaur egun ezagutzen objektu lotutako funtzioak izatea modu bat da, egitura mota berezi bat dira, C. dugu ikusi Baina orain, fede on hori sintaxia zuzena erabili liburutegi bat erabiliz PHPMailer liburutegi hau atsegin dute. Eta gero, fitxategi honen amaieran dinamikoki genuen posta elektroniko bat bidali got my jharvard@cs50.net kontu nire jharvard@cs50.net kontutik, eta erabiltzaileak jakinaren arabera kobratu ohi dute izan dira kirol hau. Hau da, nahiko askoz zer egin Frosh Berehal gune Duela urte horietan guztietan noiz jarri du martxan, I, ematen, beste hizkuntza batean, baina agian erakusten du boterea duzula gaur egun zeure burua duzula adierazteko ezin programazioaren C bezalako hizkuntza batean maila baxua, baina maila askoz ere handiagoa da aplikazio horiek email atsegin mundua oso erreala benetan konpontzeko mundu errealeko arazo batzuk. Baina, noski, nahiz eta script hau batzuk sortzeko erabiltzen dut e-posta dinamikoki jharvard@cs50.net, hau da, hain zuzen ere, kontu bat sartzeko, oso kontuz ibili bidali izan ez bidaliko dira benetan zeure kontuak, gauzak lortuko duzu kausituko ur bero pixka bat bizitzan. Horrekin, esan dezagun orain beste arazo bat konpontzeko guztiz trantsizioa, estatu mantenduz. Orain, zer du horrek benetan esan nahi? HTTP, hau hipertestua transferitzeko protokoloa , estaturik gabeko protokolo bat da, benetan, eta zer esan nahi duen sortu tira Google.com moduko zerbait, eta, ondoren, hit sartu normalean zure nabigatzailean ikonoa spinning nolabaiteko du orduan web orri batzuetan emaitzak deskargatzen ari eta, ondoren, apur icono que gelditzen spinning, eta hain zuzen ere, iradokitzen HTTP zerbitzariak konexio mota batzuk amaitu, eta hori da. HTTP zentzurik ez duela mantentzen da estaturik gabeko zerbitzariak konexio iraunkor bat du, modu berean Skype edo Gchat du HTTP delako suposizio da behin eskuratu duzun web orri bat da. Orain, errealitatean, Facebook eta Google Maps bezalako guneak egun hauetan eta Twitter eta antzeko asko gehiago dinamismo horren bidez ondoren ere ikono hori spinning gelditzen da, hain zuzen ere, ahal izango dituzu eguneratzeak gehiago zerbitzariak, tweets gehiago, Facebook-en egoera eta antzekoak. Hala ere, teknika bati buruz hitz egingo dugu aste bat edo bi erabiltzen ari da Ajax JavaScript izeneko hizkuntza bat erabiliz gisa ezaguna, baina egunaren amaieran, HTTP oraindik estaturik gabeko. Eta, hala ere, nolabait, gogoratu nahi duzun erabiltzaile bati buruzko gauzak bada ondoren ere, zure zerbitzaria haiekin deskonektatu PHP ez ordaindu duzu hau egiteko modu bat zeren, azken aldiz ikusi genuen bezala, PHP superglobals zenbaki bat du, eta superglobal bat da, berriro ere, aldagai berezi bat global hori entregatu duzun web zerbitzariak eta PHP berak. Ez duzu ezer egin balioak sartu da, eta ikusi dugu, beraz, orain arte superglobals artean eta lortu dira bidaltzeko, hau da, non inprimaki eremu jarriko dira automatikoki, eta baita beste pare bat ikusi ez dugun oraindik. $ _Zerbitzaria Inside zerbitzaria berari lotutako aldagai batzuk bereziak dira. Zer da IP helbidea, protokoloa, HTTP edo HTTPS ez duzu erabili, eskaera metodoa eta erabili nahi duzun bezala, beraz, ez da interesgarri batzuk urtsua zerbitzariak buruzko xehetasunak, eta, hain zuzen ere, han erabiltzaile baita. $ _cookie, Hau da, non gauza horiek izeneko cookie-ak gordetzen dira. Ez dugu denbora cookie-bere burua gaur egun, baina orain jakin cookie bat informazio-zati txiki bat besterik ez da web zerbitzari bat web nabigatzaile bat landatu eta aldi berean, bere RAM edo bere ordenagailuko disko gogorrean erabiltzaile bati buruzko informazioa gordetzeko, adibidez, bere erabiltzaile izena beraz, ez dute idatzi aldi bakoitzean saioa edo batzuk zenbaki edo erabiltzaile hori identifikatzailea beraz, ez duzu galdera berdina mota horietako pester etorkizuneko lehentasunak, baina interes gehien oraintxe $ _saioa da. Superglobal hau, besteak bezala da entregatu automatikoki PHP PHP-oinarritutako webgune idazten ari zaren ezer nahi duzun, kateak, zenbaki osoak gordetzeko, puntu mugikorreko, balioak, array, objektuak, ezer benetan nahi duzula, eta gordetzeko aukera ematen du horrela nahiz eta erabiltzaileak bisitatzen duzu eta, ondoren, bueltatzen minutu edo 5 minutu delako bere denbora behar dute, beste esteka batzuk egin klik aurretik PHP edozein dela ere jarri saio superglobal hori ziurtatzeko Duela minutu edo 5 minutu bat izango da oraindik ere hor erabiltzaile itzultzen. Eta kanpaia azpian superglobal hori modu ezarri izeneko gauza horiek cookieak, baina oraingoz, abstrakzio bat besterik ez da Horren bidez, erosketa saskia programazioko baliokidea sort da. Whatever, programatzailea, horretan jarri elkartze-array superglobal han minutu beranduago izango da zenbaki batzuk ezabatu arte edo erabiltzaileak bere nabigatzailean irten arte guztira. Dezagun begirada bat nola gauza hau gaur egun erabiltzen adibide bat. , Gaur egungo kodea pieza artean counter.php honako lerroa dugu. Fitxategi honen hasieran iruzkinak urdina, oraingoz uninteresting sorta bat dugu. Baina line 13 linea berri bat dugu, session_start, eta egia esan, ez du zehazki zer dio. Saioak hasiko da. Aukera ematen du, handi superglobal $ _saioa erabili ahal izateko, eta hori bezain erraza da. Orain, aurrera jarraitu dugu line 16 begiratuz gero, web orrialde hau da, zer egingo irudikatu saiatu-en. (Isset ($ _saioa ["counter"]) ondoren, joan aurretik eta counter aldagaia denda, minuskulaz counter $ _saioa ["Counter"]. Badirudi izeneko counter tokiko aldagai bat deklaratzen barruan, edozein dela ere barruan superglobal, kopia bat jarri izeneko saioa kokapena "counter". Bestela, itxuraz, lokal txiki honetan counter aldakorra da, eta 0 hasieratu. Baina gero, lerro batzuk geroago, 26 oharra saio counter kopia, bere gakoa, gaur egungo balioa gehi 1 balio berri bat ezarri du. Azken finean, fitxategi hau dela dirudi, eguneratzeko barruan gordetzen den saio superglobal counter bat incrementing 1, baina lehen aurreko balio kopia bat mantentzen du izeneko tokiko aldagai batean gorde $ counter eta, ondoren, behera hemen zer geratzen da ikus-en. Bihurtzen da, pretty much da HTML. Orri honen behealdean line 37 ikusten dugu gune hau bisitatzen dut counter zenbat aldiz, pare ezaugarri interesgarri bat dago hemen, beraz. Bat, hau da, argi eta garbi aldagai bat da, baina ez da nahikoa jarri $ Zure HTML delako gorputz ikastaro counter da, besterik ez bada zure HTML PHP artean besterik HTML bereganatzeko. Literalki nahi duzu $ counter pantailan inprimatu behar. Baina, horren ordez, PHP moduan jareginez sintaxia zati hori dinamikoki balio bat sartu ahal izango dugu hemen espirituz oso antzekoa da azken aldian egin dugun balioak txertatu kateak sartu. Izan ere, hori besterik ez da honen antzeko zerbait esaten literalki idazkera azkarra, inprimatu ($ counter) edo printf (% s, counter) antzeko zerbait ere, edo, are gehiago, ikusi duzu online edo testu-liburuak, izeneko oihartzuna PHP funtzioaren gauza bera egiten du, eta horiek guztiak ez dira besterik ez longer winded modu esaten