[Powered by Google Translate] [PHP Web Development]
[Tommy MacWilliam]
[Tämä on CS50.] [CS50.TV]
>> Tässä videossa me oppia PHP Web-kehitykseen.
PHP on skriptikieli, joka voidaan toteuttaa
sivustot web-palvelimelle.
Web-palvelin on lähinnä kone sitoutunut tarjoamaan sisältöä
jota voi käyttää internetin kautta.
Kun siirryt web-sivulle, kuten Facebook.com / home.php
koodin tiedosto nimeltä home.php joka elää Facebook web-palvelin jonnekin
toteutetaan kyseisessä palvelimessa.
Tämä koodi tulee todennäköisesti tuottavat jonkin verran lähtö
mikä puolestaan ​​lähetetään palvelimelle
selaimeen.
Käytämme CS50 laite kuin web-palvelin.
Koneesi luultavasti ei ole läheskään yhtä tehokas kuin koneita
in Facebook datakeskuksen, mutta sinun ei ole ongelma käyttää sitä web-kehitystä.
>> Kun me navigoida URL kuten http://localhost/hello.php
me määrittää laitteen kautta sovellus nimeltä Apache HTTP-palvelimen
etsiä tiedosto nimeltä hello.php sisälle kotiin / jharvard / vhosts / localhosts / html oletuksena.
Jos tämä tiedosto on olemassa niin Apache käyttää PHP tulkki
suorittaa PHP-koodin hello.php.
Jos tiedosto ei ole olemassa niin Apache heittää ei löytynyt virhe
tai 404-virheen, joka olet luultavasti nähnyt selaamisen verkossa.
>> Katsotaanpa katsomaan hello.php.
Voimme nähdä tässä, että hello.php synnyttää signaalin linjan tuotannon.
Kun me juoksimme hello.php komentoriviltä kautta php hello.php
että tuotanto oli painettu terminaaliin.
Nyt, kun me pääsy tämän tiedoston URL-osoitteen kautta web-selaimessa
sen tuotos lähetetään web-selain,
niin otsikko URL, http://localhost/hello.php,
Voimme nähdä tuotoksen meidän web-selain.
>> Kokeillaan lisätään toinen printf meidän hello world ohjelman.
Okei, mene takaisin selain ja katso, mitä meillä on.
Mielenkiintoinen.
Sijaan tulostaa toinen linja omalla rivillään, kuin olisit nähnyt
terminaalissa, se näyttää todella smushed päälle samalla linjalla
kuin muut printf, joten ehkä uudet linjat eivät toimi PHP.
Ei aivan.
Muista, että HTML on tyypillisesti käytetään luomaan web-sivuja
joka voidaan näyttää Web-selaimet.
Ei vain merkkijono hello php ei kelpaa HTML,
mutta muistuttaa, että emme voi käyttää \ n merkki HTML
luoda rivinvaihdon.
Sen sijaan, että syöttöä merkkijonon let tuotannosta voimassa HTML.
Käyttämällä kohta merkitsee jokaisen meidän printf puhelut
näkyy omalla rivillään,
joten nyt kun vierailemme URL osoittaa valid.php
http://localhost/valid.php
näemme tuotos että etsimme.
>> Nyt, jos näemme tämän sivun lähdekoodia
voimme nähdä, että olemme nyt katsot voimassa HTML,
jota luotu PHP.
Laittaisit kaikki meidän HTML sisällä printf puhelut
on tietenkin menossa todella ärsyttävää.
Onneksi voimme helposti sekoittaa HTML ja PHP
samassa. php-tiedosto.
Muista, kaikki meidän PHP on suljettu <? Php
ja?>.
Kaikki mikä ei ole suljettu näiden rajoittimien
yksinkertaisesti lähetetään lähtö selaimen
sijaan teloitettiin.
Tämä tarkoittaa, että voimme tehdä jotain tällaista.
Voimme yksinkertaisesti kirjoittaa HTML sisälle meidän. Php tiedosto
ja aseta PHP lohkot missä haluaisimme joitakin PHP suoritetaan.
Tässä määritellään muutamia muuttujia yläreunassa tiedoston,
ja myöhemmin me tulostaa ne sisällä meidän HTML.
Nyt jos käymme tätä URL, http://localhost/mixed.php
voimme nähdä meidän arvioida PHP sisällä meidän HTML.
>> Nyt katsomaan miten voimme välittää tietoja
keskuudessa eri PHP-sivuja.
Mieluummin kuin sanomalla <? Php print ($);?>
voimme yksinkertaisesti sanoa <? = muuttuja haluaisimme tulostaa, tai,
ja?>.
Katsotaanpa nyt katsomaan, miten voimme välittää tietoja
keskuudessa eri PHP-sivuja.
Yksi tapa tehdä se on koodata informaatiota sivun URL-osoite.
Kun selaat Web, olet ehkä huomannut, että osa URL
sisältävät? seuraa sisältävä merkkijono et-ja yhtäsuuruusmerkit.
Tämä osa URL tunnetaan hakumerkkijono
ja tämän avulla voit tehokkaasti välittää argumentteja PHP script.
Kyselymerkkijonon koostuu keskeisten arvo-pareja, kuten hash table.
Yhtäläisyysmerkki erottaa avain ja sen vastaava arvo
kun et-erottaa paria.
URL, joka näyttää http://localhost/get.php?foo=bar&baz=qux
on 2 keskeinen arvo pareja kyselymerkkijonoon.
Avain foo kartat arvoon baari,
ja avain baz kartat arvoon QUX.
Voimme helposti käyttää näitä keskeisiä arvo-pareja käyttämällä erityistä muuttujan PHP,
$ _GET.
$ _GET On assosiatiivinen array
että automaattisesti asuttuja kyselymerkkijonotietoja.
Tämä tarkoittaa, että koska tämä URL $ _GET ["foo"]
on yhtä suuri kuin merkkijono bar.
>> Katsotaanpa katsomaan get.php nähdä $ _GET toiminnassa.
Täällä käytämme toiminto nimeltään var_dump,
jonka kun annetaan array tai muun muuttujan
tulostaa sitä meille.
Nyt jos me yksinkertaisesti hae http://localhost/get.php
Sitten näemme tyhjä joukko, koska emme ole antaneet kyselymerkkijono.
Jos emme tarjota Kyselymerkkijonon kautta http://localhost/get.php?foo=bar&baz=qux
voimme nähdä, että $ _GET muuttuja sisältää
hakumerkkijono keskeinen arvo-pareja.
Mutta mitä jos emme halua laittaa meidän datasolujen sivun URL-osoite?
Suurten tietomäärien, tämä voi aiheuttaa joitakin melko ruma URL-osoitteita
että aiomme tehdä meidän kiiltävä sivua Katso ontuva.
Voimme sen sijaan laittaa kyselymerkkijono kehoon
HTTP-pyyntöjen sijaan pyynnön URL-osoite.
Sitten voimme käyttää PHP: n $ _POST muuttuja
käyttää keskeisiä arvo-pareja.
Yksi tapa tehdä tämä on kautta HTML-muodossa.
Täällä meillä on yksinkertainen HTML-muodossa.
Huomata tässä, että menetelmä ominaisuus tämän lomakkeen postitse.
Tämä kertoo selaimen laittaa lomakkeen keskeinen arvo pareja
kehoon pyynnön sijaan, URL-osoitteen.
>> Jos olisimme käyttää arvoa saada tämän määritteen
sitten lomakkeen keskeinen arvo pareja sen sijaan mennä hakumerkkijono
jotta voisimme käyttää niitä kautta $ _GET uudelleen.
Toiminnan ominaisuus lomakkeen kertoo selaimelle mihin lähettää tietoja.
Täällä meidän 2 Tuloyksiköiden on nimi määritteitä.
Arvo nimi määritteitä toimii avaimet meidän tietoja,
ja arvot tekstin panosten tulee arvoja ne avaimet.
Nyt katsomaan post.php,
tiedoston että tätä lomaketta toimittamalla.
Aivan kuten me teimme ennen, me yksinkertaisesti näyttämällä sisällön $ _POST muuttuja.
>> Katsotaanpa navigoida muodossa http://localhost/form.php.
Nyt kun me lähetä lomake voimme nähdä, että tiedot form.php
johdetaan post.php ilman liittämällä kyselymerkkijonon URL.
Nyt olemme nähneet 2 eri tapoja kulkee dataa PHP-sivuja,
saada ja lähettää.
Esimerkeissämme käytimme 2 eri HTTP-pyyntöjä.
Kuten arvata saattaa, GET-pyynnön käytettiin, kun me asutuilla
$ _GET Päässä URL, ja post käytettiin pyynnössä
kun me asuttu $ _POST.
Suunniteltaessa verkkosovelluksia se on hyvä nyrkkisääntö käyttää GET
kun sovellus vain lukea tietoja, ja post pyynnöt
kun sovellus kirjoittaa tietoa.
Esimerkiksi haku kyselyn lukee tietoja vain app,
joten GET-pyynnön järkevää.
Toisaalta, sinun app kirjoittaa dataa jotain ilmoittautumislomakkeella,
niin post pyyntö olisi järkevämpää, ja se on yleiskatsaus joistakin tekniikoista
Käytämme sisään CS50 luoda verkkosivustoja käyttäen PHP.
>> Nimeni on Tommy, ja tämä on CS50.
[CS50.TV]