[Powered by Google Translate] [PHP Web Ontwikkeling]
[Tommy MacWilliam]
[Hierdie is CS50.] [CS50.TV]
>> In hierdie video, sal ons leer oor die gebruik van PHP vir die web ontwikkeling.
PHP is 'n script taal wat gebruik kan word om te implementeer
webtuistes op 'n webbediener.
'N web bediener is in wese 'n masjien gewy aan die verskaffing van inhoud
wat kan verkry word via die internet.
Wanneer jy na 'n webblad soos Facebook.com / Musikant
die kode in die lêer genaamd Musikant wat die lewe op 'n Facebook web bediener iewers
sal op die bediener uitgevoer word.
Hierdie kode sal waarskynlik 'n paar uitset genereer
wat op sy beurt van die bediener gestuur word
jou webblaaier.
Ons sal gebruik word om die CS50 toestel as 'n web bediener.
Jou masjien sal waarskynlik nie naastenby so sterk soos die masjiene
in 'n Facebook data sentrum, maar jy sal nie 'n probleem het om dit te gebruik vir web-ontwikkeling.
>> Wanneer ons gaan na 'n URL soos http://localhost/hello.php
ons die instel van die toestel via 'n aansoek genoem die Apache HTTP-bediener
om te kyk vir 'n lêer genaamd hello.php binnekant van die huis / jharvard / vhosts / localhosts / html by verstek.
As die lêer bestaan ​​dan sal die Apache PHP tolk gebruik
die PHP kode uit te voer in hello.php.
As die lêer nie bestaan ​​nie Apache sal nie gevind fout gooi
of 'n 404-fout, wat jy het waarskynlik gesien, terwyl op die Web.
>> Kom ons neem 'n blik op hello.php.
Ons kan sien hier dat hello.php genereer 'n sein-lyn van die produksie.
Wanneer ons hardloop hello.php by die command line via PHP hello.php
die uitset is gedruk aan die eindpunt.
Nou, wanneer ons toegang tot hierdie lêer via 'n URL in die web browser
sy produksie sal gestuur word na die web browser,
so op pad na die URL, http://localhost/hello.php,
ons kan die produksie te sien in ons web browser.
>> Kom ons probeer om die toevoeging van 'n ander printf ons Hello World program.
Goed, laat ons kop terug na die webblaaier en sien wat ons het.
Interessant.
Eerder as om die druk van 'n ander lyn op sy eie lyn, as jy sou gesien het
in die einde, dit lyk soos dit het smushed op dieselfde lyn
as die ander printf, nie so miskien die nuwe reëls in PHP werk nie.
Nie heeltemal nie.
Onthou dat HTML is tipies gebruik word om webblaaie te skep
wat vertoon kan word deur die web blaaiers.
Nie net is die string Hello from PHP nie geldig HTML,
maar onthou dat ons nie die \ n karakter in HTML kan gebruik
'n lyn breek te skep.
In plaas van net 'n uitvoer string laat se uitset geldige HTML.
Deur die gebruik van paragraaf tags elkeen van ons printf oproepe
sal op sy eie lyn vertoon word,
So nou wanneer ons gaan na die adres wat verwys na valid.php
http://localhost/valid.php
sien ons die produksie wat ons soek.
>> Nou, as ons kyk na die bron van die bladsy
Ons kan sien dat ons nou op soek na geldige HTML,
wat ons geskep uit PHP.
Om al ons HTML binne printf oproepe
is natuurlik gaan regtig irriterende te kry.
Gelukkig kan ons maklik HTML en PHP meng
in dieselfde. PHP lêer.
Onthou, almal van ons PHP-kode moet binne <PHP? Ingesluit word
en?>.
Enigiets wat nie binne hierdie skeikarakters ingeslote
sal net gestuur word as uitset aan die leser
eerder as om uitgevoer.
Dit beteken dat ons iets kan doen.
Ons kan eenvoudig HTML skryf binnekant van ons. PHP lêer
en dan voeg PHP-blokke waar ons wil graag 'n paar PHP-kode wat uitgevoer moet word.
Hier definieer ons 'n paar veranderlikes aan die bokant van die lêer,
en later het ons druk hulle uit die binnekant van ons HTML.
Nou as ons na hierdie URL, http://localhost/mixed.php
ons kan ons geëvalueer PHP sien binnekant van ons HTML.
>> Nou kom ons neem 'n blik op hoe ons data kan slaag
onder ons verskeie PHP bladsye.
Eerder as om te sê
ons kan net sê <? = die veranderlike wat ons wil om te druk, of 'n,
en?>.
Kom ons neem nou 'n blik op hoe ons data kan slaag
onder ons verskeie PHP bladsye.
Een manier waarop ons dit kan doen is om inligting te enkodeer in die URL van 'n bladsy.
Wanneer op die Web, kan jy opgemerk het dat sekere URL
bevat 'n? gevolg deur 'n string wat amper sand en gelyke tekens.
Hierdie deel van die URL staan ​​bekend as die navraag string,
en dit laat jou toe om effektief argumente jou PHP script slaag.
Die navraag string bestaan ​​van die belangrikste waarde pare, net soos 'n hash tafel.
'N gelyke teken skei 'n sleutel en die ooreenstemmende waarde
terwyl amper sand skei pare.
'N URL wat lyk soos http://localhost/get.php?foo=bar&baz=qux
het 2 sleutel waarde pare in die soektog string.
Die sleutel cat kaarte ter waarde bar,
en die sleutel roof kaarte ter waarde qux.
Ons kan maklik toegang tot hierdie sleutel waarde pare met 'n spesiale veranderlike in PHP,
$ _GET.
$ _GET Is 'n assosiatiewe skikking
wat outomaties gevul is met navraag string data.
Dit beteken dat, gegewe die URL $ _GET ["cat"]
sal gelyk wees aan die string bar wees.
>> Kom ons neem 'n blik op get.php $ _GET in aksie te sien.
Hier is ons met behulp van 'n funksie genoem var_dump,
wat toe gegee 'n skikking of ander veranderlike
sal druk dit uit vir ons.
Nou as ons net toegang http://localhost/get.php
dan sal ons 'n leë skikking te sien, want ons het nie voorsien 'n navraag string.
As ons dit doen 'n soektog string via http://localhost/get.php?foo=bar&baz=qux
dan kan ons sien dat die $ _GET veranderlike sal bevat
die soektog string se sleutel waarde pare.
Maar wat as ons wil nie ons data te sit in die URL van 'n bladsy?
Vir groot hoeveelhede data, kan dit lei tot 'n paar mooi lelike URLs
wat gaan ons blink webwerf lyk lam te maak.
Ons kan in die plek gestel die soektog string in die liggaam
van die HTTP-versoek eerder as URL versoek se.
Dan kan ons PHP se $ _POST veranderlike gebruik
die sleutel waarde pare om toegang te verkry.
Een manier om dit te doen, is deur middel van 'n HTML-vorm.
Hier het ons 'n eenvoudige HTML vorm.
Let hier dat die metode kenmerk van hierdie vorm is post.
Dit vertel die leser die vorm se sleutel waarde pare te sit
in die liggaam van die versoek, eerder as die URL.
>> As ons te gebruik om die waarde vir die eienskap
dan die vorm se sleutel waarde pare sou plaas gaan in die soektog string,
sodat ons hulle kan toegang via weer $ _GET.
Die aksie kenmerk van die vorm vertel die leser waar die data te stuur.
Hier ons 2 insette elemente naam eienskappe.
Die waarde van die naam eienskappe sal dien as sleutels in ons data,
en die waardes van die teks insette sal word waardes van die sleutels.
Nou kom ons neem 'n blik op post.php,
die lêer wat hierdie vorm te stuur na.
Net soos ons gedoen het voor, ons is net die vertoning van die inhoud van die $ _POST veranderlike.
>> Kom ons gaan na die vorm met http://localhost/form.php.
Nou wanneer ons dien die vorm wat ons kan sien dat die data van form.php
oorgedra word na post.php sonder die aanbring van 'n navraag string aan die URL.
Nou het ons gesien 2 verskillende maniere van verbygaande data tussen PHP bladsye,
kry en post.
In voorbeelde vir ons, ons gebruik 2 verskillende tipes HTTP versoeke.
Soos jy kan verwag, is 'n get versoek gebruik wanneer ons bevolk
$ _GET Van die URL, en 'n post versoek is gebruik
wanneer ons bevolk $ _POST.
In die ontwerp van jou web programme dit is 'n goeie reël get versoeke te gebruik
wanneer jou inligting sal slegs data te lees en post versoeke
wanneer jou inligting data sal skryf.
Byvoorbeeld, sal 'n soektog data van jou artikels te lees,
so 'n get versoek sin maak.
Aan die ander kant, sal jou inligting data via iets soos 'n registrasie vorm skryf,
so 'n pos versoek sou meer sin maak nie, en dit is 'n oorsig van sommige van die tegnieke
Ons sal gebruik word in CS50 webtuistes te skep met behulp van PHP.
>> My naam is Tommy, en dit is CS50.
[CS50.TV]