JASON HIRSCHHORN: Tervetuloa jokainen viikko kahdeksan. Meillä on jännittävä viikko edessämme. Olette kyyhky tässä parin viime luentoja PHP, SQL, HTML, CSS, joten neljä upouusi kieliä, jotka ovat menossa ottamaan loput tämän kurssin. Otamme myös oppia pari muuta kielet ennen kurssin loppua. Mutta joka tapauksessa, on sanomattakin selvää, tämä on erittäin jännittävää aikaa CS50, nyt oppinut C, näennäisesti, ja ovat siirrymme ohjelmoinnin sivustoille. Joten tällä viikolla, aiomme mennä tornado kiertueen neljä kielet äsken mainitsin, HTML, CSS, PHP ja SQL. Ja toivottavasti, jätämme runsaasti aikaa jakson loppuun puhua tämän viikon P asettaa ja vastaus kaikkiin kysymyksiin sinulla kaikilla on. Joka viikko saman listan resursseja sinulle, auttaa sinua viikon Harjoitus ja menee yli materiaali - mutta tällä viikolla erityisesti näiden web-pohjainen ongelma asetetaan, on olemassa lukuisia muita resursseja pois siellä, että saat todennäköisesti löytää uskomattoman hyödyllinen. Olen niitä tänne. Minä sinulle sähköpostitse tämän jakson jälkeen, ja tämä myös verkossa. Mutta erityisesti on runsaasti suuria resursseja siellä. On myös joitakin ei niin suuri niitä, joten varoa niitä. Mutta tämän dian, minulla on neljä hyvää resursseja, yksi kutakin kielet, joita voit työskennellä tällä viikolla - yksi viittaus arkki HTML, viittaus arkki CSS. Tämä täällä on PHP käsikirja. Joten kirjoittamisen sijaan miehen ja sitten PHP komento, tämä on, jos olisi Siirry etsiä funktion prototyyppi ja esimerkkejä ja myös joitakin vinkkejä ja temppuja PHP toimintoja. Käytät tätä sivustoa usein, joten kehotan sinua tulemaan perehtynyt siihen. Se voi olla vähän teknistä, mutta se tarjoaa myös ton resursseja ja esimerkkejä kaikki toiminnot ja jopa muita, kuten miten käyttää pakkoja tai erilaisia ​​muuttujia. Tämä sivusto on erittäin hyödyllinen PHP. Ja sitten, SQL, jos sukelsi tämän viikon ongelma setti, tiedät että käytämme tietokantaan. Ja me avata kyseistä tietokantaa kautta melko mukava käyttöliittymä. Tai se on yksi tapa tutustua että tietokanta. Käyttöliittymä on nimeltään phpMyAdmin. Ei SQL-välilehden, jossa näytämme katsokaa myöhemmin tänään. Ja voit kirjoittaa heidän näyte SQL kyselyt, tehdä asioita tietokantaan ja sitten ajaa näitä kyselyitä. Ja jos he ovat oikeassa, niin sitten sanoa, tämä on oikea. Jos he ovat virheellisiä, se tulee sanoa, se on virheellinen. Se on hyvä paikka harjoitella SQL-kyselyjä ennen kirjoittamista ne koodia, varmista, että olet olla muotoa oikein. Lopuksi yksi muu sivusto täällä. Tämä on sivusto, jossa voit mene ja varmista oman HTML-koodi on voimassa. Joten ennen kääntämällä ongelmia asetettu tällä viikolla, varmista, että kaikki HTML on voimassa. Viime viikolla olitte ajaa valgrind, jotta varmista, että sinulla ei ollut muistivuodot. Tällä viikolla, sinun täytyy varmistaa, että kaikki Kirjoittakaa koodi on voimassa HTML5. Jos se ei ole voimassa HTML5, olet menossa pistettä pois. Joten varmista - vain koska se toimii ei Siis se on täysin pätevä. Ajaa koodia tämän sivuston kautta ennen kuin laitat sen sisään Jälleen tässä verkkosivuilla. Jos sinulla on palautetta minulle, meillä on Pari muutakin osia jäljellä, ja haluan aina tehdä mitä voin antaa sinulle kaikki parhaat osiosta mahdollisen kokemuksen. Joten haluaisin tietää, jos on jotain mitä voi tehdä parantaakseen tai jos on mitä näet, että voisin tehdä paremmin. Kiitos, Avi. Laittaa sen verkkosivuilla. Tämä oli pyörä minulla oli, kun minä oli, sanotaanko, neljä kotona. Se on Teenage Mutant Ninja Turtle pyöräily, jos et voi kertoa, koska se on hieman epäselvä. Saat sen nyt ToysRUs puolesta, luulen, noin 100 dollaria. Mutta ominaisuus tämä pyörä, että haluan sinun kiinnittää huomiota ovat nämä täällä. Nämä ovat apupyörät. Tähän asti olet ollut handheld kautta C. Ja olemme ottaneet pitkän aikaa kaksi kuukautta plus, käydä läpi C. Näistä parin kielellä, emme aio viettää paljon aikaa. Apupyörät ovat irtoamassa. Ja aiomme sukeltaa näihin kieliä nopeasti ja siirtyä ne nopeasti, mikä ei tarkoita sitä, että me vain aio jättää sinua uinti siellä mitään keinoa tukea itse tai selvittää, miten nämä kielet ovat käytössä. Minä vain näytin sinulle luettelon resursseja auttaa sinua. Mutta pitää muistaa, että PHP on uskomattoman samanlainen C. Menemme yli se tänään ja joitakin eroja. Mutta suurin osa, on silmukoita. On jos olosuhteet. Kun haluat ratkaista ongelman, aiot käyttää näiden yhdistelmän. Se on hyvin samankaltainen. Logiikka tulisi olla hyvin samankaltainen mitä olet tehnyt aikaisemmin. Mikä on todella uutta tällä viikolla on syntaksin ja miten ilmaiset itseäsi. Ja haluat kirjoittaa varten silmukka, mutta se saattaa näyttää hieman erilainen. Tai haluat luoda taulukon, mutta se saattaa näyttää hieman erilainen. Joten pitää mielessä, että, eteenpäin, logiikka on hyvin samanlainen kuin mitä olet tehnyt aiemmin. Mutta olet nyt menossa kohtaavan paljon uusia syntaksin. Ja emme aio opastaa kaikki elementit syntaksin. Joten se on todella sinun selvittää, verkossa tai päästä ulos Keskustella tai sähköpostitse minulle tai puhu toisiaan, miten kirjoittaa asioita PHP ja miten kirjoittaa SQL-kyselyjä ja miten käyttää HTML ja CSS. Mutta juuri niin tiedät, se ei ole niin yritämme heittää sinut siellä jälleen uimaan haiden. Tämä on mitä todennäköisesti tehdä lopullisessa projektissa, jos valitset eri kieltä, kuten IOS ja Tavoite C, tai jos päätät aloittaa ohjelmointi tulevaisuudessa ja sukeltaa muille kielille, kuten Python tai Ruby. Usein logiikka on hyvin samankaltainen kaikilla näistä kielistä, ja syntaksi on mitä eri. Ja se on sinun, sillä ohjelmoija, mennä käyttää web resursseja käytettävissä ja kuva miten ilmaista mitä osaat ilmaista C: n eri kieltä. Joten tämä on hyvä käytäntö, sekä sinun opinnäytetyö, ja uudestaan, sillä mitä saat todennäköisesti tehdä jälkeen lähdet CS50. Ennen kuin siirrymme, ei kukaan on kysyttävää siitä, mitä Olen tehnyt tähän mennessä? Suuri. Siirrytään. Ensin aiomme puhua lyhyesti noin chmod komentoa. Tämän teemme alussa teidän ongelmia asetettu. Yksi ensimmäisistä ohjeet sinulle, kun lataat jakelu-koodi, on muuttaa luvat tiedostot ja hakemistoja saat. Voiko joku uskaltaa arvata tai tietää miksi se on tärkeää muuttaa luvat tiettyjä tiedostoja ja hakemistoja tietokoneeseen? Avi - Yleisö: Sitten kukaan paitsi näet, mitä olet tekemässä? JASON HIRSCHHORN: OK. Joten jos haluamme laittaa jotain web ja sinulla on oikeus asettaa, että vain sinä näet jotain, niin kukaan muu ei voi nähdä, mitä olet luonut. Mitä muuta? Joo. Yleisö: Estä kukaan muu, että sinun eivät halua nähdä jotain, mistä nähdä jotain. JASON HIRSCHHORN: Tuo on totta myös. Siellä on luultavasti joitakin koodi, joka kirjoitat, että et halua ihmisten näkevän. Olet varmaan ok ihmiset näkemään HTML ja JavaScript. Mutta PHP, loppupäätä koodin, paljon logiikka koodi, ehkä asioita, jotka tallentaa joitakin salasanoja tietokannallesi, et halua ihmisten näkevän, että tyyppistä tietoa. Joten on tärkeää, että jokaisen tiedoston ja hakemiston luomme on oikeudet sovellettavat vai emme halua ihmisten näkevän niitä tiedostotyyppejä ja hakemistot ja voi käyttää niitä ja mahdollisesti jopa muuttaa niitä. On siis olemassa kolmenlaisia käyttöoikeuksia. Siellä on lukuoikeus, mikä tarkoittaa voit lukea tiedoston tai luettelon hakemiston sisältöön. On kirjoitusoikeudet, joka tarkoittaa, että voit muuttaa tiedoston tai muutoksen hakemistoon ja suorita lupaa, eli voit suorittaa tiedoston tai pikemminkin, voit voi siirtyä hakemistoon. Joten CD jotain, jos sinulla on oikeuksia suorittaa se, voit siirtyä tuohon hakemistoon. Tämä on lyhyt esimerkki. Jälleen olet siirtynyt tämän ongelma-set. Mutta luon hakemiston kanssa mkdir komennolla. Muutan käyttöoikeudet. Nämä kaksi riviä itse tehdä täsmälleen sama asia. Se havainnollistaa, että syntaksi muuttuviin käyttöoikeudet, onko sinulla + x ja 711, ne ovat samat. Katsomme alas tässä mukava pöytä. Näemme, että on olemassa käyttäjä käyttöoikeudet ensin. Se olet sinä, yksilö, ja palvelimelle, mahdollisesti. Ja sitten on ryhmä ja muut. Erot näiden kaksi ovat melko merkityksettömiä. Niin yleisesti, me niputtaa näitä pyyntöjä. Mutta pohjimmiltaan, jos meillä on tiedosto nimeltään sisältää sen, että haluamme olla voi muokata itseämme ja että haluamme toiset pystyä suorittamaan, se lupaa 711. Ja me näemme, että alas täällä tässä taulukossa. Meillä on lukea, kirjoittaa ja suorittaa. Meille jokaiselle, haluamme pystyä tekemään niitä. Ryhmä ja muut, me vain haluamme ne voivat toteuttaa. Tapamme kääntämään, että useisiin lupa on kautta binary. Joten jos meillä on kolme niitä, se on 1 vuonna niitä sarakkeessa 1 kaksittain sarakkeessa 1 nelosta sarakkeessa. Tilanne on 7 tuolla. Ja tämä lupa on 1. Tämä lupa on 1. Joten 711, kun on sama kuin antaa itse lukea, kirjoittaa ja suorittaa, ja kaikki muutkin suorittaa etuoikeuksia. Tämä linja täällä, me yleensä on lukenut ja kirjoittaa, kun me luo hakemiston. Joten tämä linja täällä vain lisää suorita oikeudet kaikille. Jotta olisi sukua, vuonna lisäksi, mitä meillä on, lisäämällä 1, 1, 1 kaikille. Tämä, se on tarpeeton lisätä lukea ja kirjoittaa. Mutta jos aiot käyttää numeroita, et voi vain lisätä jotain. Korvaat mitä lupaa olivat siellä ja toteuttaa ne uusilla numeron annat. Se oli aika nopea. Onko kellään mitään kysyttävää muuttuvista oikeudet? OK. Jos minulla on PHP-tiedosto, mitä oikeuksia haluan sen olevan? Tämä on ongelma asetettu spec. Joten voit tarkastella spec ja sitten lukea minulle vastauksen. Yleisö: Haluat käyttäjä on luku-ja kirjoitusoikeudet. Ja haluat, että kaikki muuta ei ole mitään. JASON HIRSCHHORN: Ja mitä numerot on? Yleisö: 600. JASON HIRSCHHORN: 600. Joten chmod 600 - aina tulostaa PHP-tiedosto, chmod sen 600. OK. Minulla on hakemisto. Joku lisäksi Jeff, Minulla on kansiossa. Mitä oikeuksia haluan antaa tähän kansioon - myös ongelma asettaa spec, oikea alla vastaus tai edellinen vastaus? Mahdollisesti myös dian - Marcus. Yleisö: For kansioon, se on 711. JASON HIRSCHHORN: 711 - niin kansio, jonka haluat antaa 711. Haluat pystyä lukemaan kansion, vaihtaa hakemistoja, siirtyä kansioon. Ja haluat kaikki muutkin pystyä Voit siirtyä kansion, mutta ei välttämättä muuta sen sisältöä. Entä ei-PHP-tiedosto, sanoa, JavaScript-tiedoston? Mitä oikeuksia haluamme antaa, että tiedoston tyyppi? Yleisö: 644. JASON HIRSCHHORN: 644 - Miksi haluamme antaa sille 644? Yleisö: antaa muiden ihmisten lukea sitä. Ja voit lukea tai kirjoittaa sitä. JASON HIRSCHHORN: Niin niin, kaikki muu ei voi lukea, että JavaScript-tiedoston. Ja voit muuttaa, että lisäksi että voimme lukea sitä. Joten yksi yleisimmistä bugeja ihmiset on tätä ongelmaa sekä niitä Opinnäytetyö, jos se on web-pohjainen lopullinen Hanke, he eivät asettaneet oikeat käyttöoikeudet. Ja he eivät voi nähdä niiden verkkosivuilla. Tai tietty osa niiden verkkosivuilla. Joten varmista, että asetat käyttöoikeudet oikein. Älä vain olettaa, että se tehdä sen automaattisesti puolestasi. OK. Se oli pieni asia, että vietimme hyvä määrä aikaa, joten voisimme naulata se. Siirrytään HTML. Ja vielä, nämä seuraavat neljä aihetta, aiomme käydä läpi niitä suhteellisen nopeasti. Joten ota rohkeasti pysäyttää minua milloin tahansa aikaa, jos sinulla on kysyttävää, olivatpa he liittyvät siihen, mitä peitän tai jotain luennon tai jopa ongelma asetettu. Estää minua kun haluat. Kun me päästä loppuun, me vain alkaa menee yli ongelman asetettu. Joten HTML on lyhenne sanoista Hypertext Markup Language. Se ei ole ohjelmointikieli. Se vain rakenne sisältöä ja myös joitakin metatiedot. Niinpä esimerkiksi, oletettavasti monet olet käyttänyt Facebook ennen. Ja voit lisätä linkkejä, tai et voi laittaa linkin tilaasi. Ja sitten, huomaat, että linkki on aina kiva kuva sen ja tekstiä. Yleensä se on noin metatiedot www-sivulla. Ja se on Facebook-metatiedot. Ja sitten, kun Facebook on käsittelyssä, että sivu ja lisäämällä kyseistä linkkiä, se etsii metatiedot, joten se tietää, mitä kuva näyttää, mitä otsikko näyttää, ja mitä abstrakti teksti näyttää. Voimme siis ovat metatiedot kanssa kotisivultamme HTML. Ja se myös auttaa meitä rakenne sisältöä, yleensä, mitä haluamme mennä minne. Kaikki HTML on elementti. Ja elementtejä täällä - Tämän CS50, teksti on elementti. Ja sillä on noin tageja. Se on tämä tagi. Ja huomaamme on osoitteessa alussa ja sitten slash, joten sulkeminen tag lopussa. Joskus siellä ei ole avoin tag ja läheinen tag. On vain yksi asia. Näemme esimerkki tästä seuraavan dian. Joten sinun ei tarvitse avoin ja läheinen tag. Mutta tähän olemme encasing tätä CS50 elementti ankkuri tag. Ja pääasiallisesti näitä tageja kerro selain mitä tehdä erityinen tekijä. Joten jälleen, CS50 on teksti aiomme nähdä. Ja se tulee olemaan tyyppi ankkuri. Ankkuri käytetään lähinnä linkkejä jotain. Erityisesti kuin voit jo kertoa, tämä on linkki CS50 etusivulle. Seuraava osa tag - tai yleisemmin osa-tunnisteet ovat attribuutteja. Ja näemme täällä, että tag on yksi Yhdistän tämän href. Ja ne muuttavat tietyn tunnisteen. Itse asiassa, jos menet johonkin verkkosivustoja tai viittaukset Annoin teille ennen tai etsiä tag verkossa, huomaat olemassa ton potentiaali ominaisuuksia. Tämä on luultavasti yksi yleisimpiä. Tämä kertoo minulle luoda linkki erityinen verkkosivusto. Ja attribuutteja yleensä annetaan, jos ei yksinomaan annettu, in avainarvoparisi. Joten tässä on avain, href. Ja arvo on tällä täällä. Ja se on kätevä myöhemmin, kun alamme käyttää joitakin kirjastojen auttaa meitä koodi JavaScript tai kirjoittaa HTML-sisältöä. Olemme usein olemaan - aivan kuten me tekisi array kiinnike 0 ja että antaisi meille jotain arvoa. Tulevaisuudessa me voidaan tehdä paljon asioita, kuten jotain kiinnike href. Ja että annan meille arvon href, tai jos haluamme päivittää href näppäintä ja sitten antaa sen erityisen arvokkaita. Joten aivan kuten paneelit, jossa meillä oli näppäintä 0 tai avain 1 tai näppäintä 2 tai jopa hash table, hyvin, teidän hash taulukoita samoin, luultavasti ollut - se oli array, niin avain 0, näppäin 1, näppäin 2. Että indeksi on, voimme ajatella, että avain. Ja arvo on mitä on tallennettu sinne. Kaikki nämä ominaisuudet ovat avainarvoparisi. Ja se tulee olemaan tärkeää muuttuvassa niitä tai niiden tarkistamista tai asetat ne myöhemmin. Lopuksi, olet nähnyt tämän rakenteen ennen, mutta tämä on yksinkertaisin rakenne HTML-sivun. Yläreunassa, kerromme teille, että Tämä on itse asiassa HTML. Ja sitten meillä on avoin HTML tag ja lähellä HTML-koodi. Joten kaikki sisällä Tämä on HTML. Näemme pään ja kehon. Pään teidän asiakirjan yleensä sisältää mitä? Arvauksia siitä, mitä laittaa pään? Yleisö: Laitat otsikko ja tyyliä. JASON HIRSCHHORN: otsikko. Se oli hieno arvaus. Olen ehkä vihjeen sen. Mitä muita asioita? Kerroimme yksi niistä, jotka voisi mennä päähän. Yleisö: Hän sanoi, tyylejä. JASON HIRSCHHORN: Styles - joten jos haluat linkittää vuonna JavaScript tai jopa CSS, joka puhut siitä, milloin puhut noin tyylejä. Toinen tiedosto, jonka haluat linkkiä ulkopuolella tiedosto, joka todennäköisesti menossa päähän. Mitä muuta? Kerroimme pari dioja sitten yksi niistä asioista, jotka HTML voi tehdä sinulle. Se voi tarjota - alkaa M - Yleisö: Metadata. JASON HIRSCHHORN: Metadata - niin paljon metatietojen menee päähän, koska se ei välttämättä tarvitse olla osa kehon oman koodin. Se on yleensä - elin on sisältö, mitä joku näkee. Ja niin minä annoin juuri vastaus minun seuraava kysymys. Mutta kehossa on yleensä sisältöä että menee näytetään www-sivulla. Kuten näemme, monimutkainen sivustot taipumus sekoittua tai muuttaa ylös mitä ne laittaa pään ja kehon. Mutta yleisesti, pää sisältää asioita että käyttäjä ei tule nähdä ruudulla. Se yhdistää toisiin tiedostoihin ja antaa metatietoja. Sekä katsoo, runko sisältää kaiken käyttäjä on menossa nähdä. Mitään käsitystä, mitä tämä p tag tarkoittaa? Yleisö: kohta? Yleisö: Print. Yleisö: Ei tarkoita tulosta. Yleisö: Tarkoittaako se kohta? JASON HIRSCHHORN: kohta - joten tämä on kohta. Ja tämä p tag, olisin voinut juuri kirjoittanut Tämän näytöllä ja sitten sisältyi rivinvaihdon lopussa se. Kukaan tiedä, miten sisällyttää rivinvaihdon? Yleisö: pr - JASON HIRSCHHORN: pr - Yleisö: Slash pr? JASON HIRSCHHORN: pr slash tarkoittaa rivinvaihtoa. Mutta kappaleissa on erityisiä muotoilua. Ja me saamme muotoilun Toinen, kun puhumme CSS. Mutta kaikki sisällä näitä p tageja on joitakin oletusalustuskoon liittyy se, todennäköisesti joitakin väli eri kohdat. Ja se tulee olemaan yksi keino eriyttää koodilohkoja. Kaikki muut tunnisteet - mitä muita tunnisteita, jotka olet nähnyt? JASON HIRSCHHORN: h1 kautta h6. H1 kautta h6, ja mitä se on? Yleisö: Se kuvaamaan kuinka suuri ja rohkea kirjaimet ovat. JASON HIRSCHHORN: Aivan, se edustaa otsikkoa. Ja niin header1 on iso otsikko. Se luultavasti oletuksena olla rohkea, isolla kirjasinkoolla, luultavasti keskittyy näyttö, kaikki alas h6, joka on pienemmällä fontilla, vähemmän korostuu. Tietenkin voit, ja olet CSS-tiedosto tai jonnekin koodi - joka, uudelleen, me saamme, että toinen - muuttaa mitä oletustoimintaa ja H1 tag on. Mutta pitää muistaa, että Chrome, Safari, Firefox, Internet Explorer kaikilla on oletus etsii paljon Näiden standardien mukaisten tageja. Voit jälleen, aina muuttaa miltä ne näyttävät. Muita tunnisteita, jotka kaikki on nähnyt? Joo - Yleisö: div sivusto. JASON HIRSCHHORN: div tag - div tag ei ole sisäänrakennettua muodossa, kohti se, että käytetään tukkia eri koodi. Kaikki muut tunnisteet? Kyllä. Yleisö: li - JASON HIRSCHHORN: li - mikä li varten? Yleisö: List. Yleisö: List JASON HIRSCHHORN: li on annetaan listaelementeille. On olemassa kahdenlaisia ​​luetteloita. Mitkä ovat kahdenlaisia? Yleisö: Tilattu ja järjestämättömiä. JASON HIRSCHHORN: Tilattu ja järjestämättömiä - niin ul seisoo varten Järjestämätön lista. Se jos haluat bullet kohta, luettelo luoteja. Järjestetty lista on numeroitu lista. Ja niin voit tehdä avoimen ul tag ja sitten tonnia Listaelementtien ja sitten Sulje ul tag. ja että tahto Järjestämätön lista luodaan. Aiomme nähdä esimerkkejä HTML on vähän. Mutta sitä ennen, haluan saada CSS. Ja CSS tulee sanoista Cascading Style Sheets. Ja tämä on hyvin läheistä sukua HTML mutta hieman erilainen. Tämä auttaa sinua muotoilla kaikki sisältö että HTML rakenteita. Niin CSS, me yleensä halua tyyli joka ikinen ylä-tai joka yksittäinen kuva tai joka yhdeksi kohdaksi. Haluamme tyyliin joitakin elementtejä tai ehkä erityinen osa. Ja miten me tyyli erityistä elementti on antaa sille tunnus. Joten tämä on määrite. Se on avain ja arvo. Tunnus on avain. Logo on arvo. Otin logo satunnaisesti. Ja jos annat jotain ID, yleisesti, että olisi annettava ainoastaan on yksi elementti. Ja sitten, tyylisivuusi, voit tyyli erityinen tekijä kuitenkin haluat sen katsoa. Jos haluat muotoilla useita elementtejä, ehkä se tietyn luokan otsikot, vain joitakin otsikoita. Ehkä se on otsikon ja kuvan ja kohta te kaikki haluavat olla keskellä. Sitten voit antaa näiden ryhmien Elementtien kaikki luokassa. Ja voit antaa luokan erityisiä tyylejä. Joten tunnus ja luokan kaksi tapaa hajottaa koodin, joten voit auttaa olla täsmällisemmin mitä tyyliä. On olemassa kolme tapaa tyyliin. Ensimmäinen on, ja Tämän tyyliattribuutti. Niin näet, tyyli avain on tyyli. Tyyli-arvo on todella toinen keskeinen arvo luettelosta. Tässä tapauksessa Otin yksi avain, text-align. Ja sanoin, keskus. Saatat kysyä itseltäsi tässä kohta, miten minä tiedä text-align. Mitä tuo edes tehdä? Se on hyvä kysyä, ja aiomme päästä sinne toiseen. Niin se on yksi tapa muotoilla jotain, vain antaa sille tyyliattribuutti. Toinen tapa muotoilla jotain on - tämä on Akshar aiemmin mainittiin. Voit käyttää tyyliä tageja ja esittää, että pään HTML asiakirjan. Joten olet periaatteessa sanovat, sisällön sisällä täällä on tyyliä sisältöä. Ja muoto, joka on asia, haluavat tyyliä ja sitten sisällä aaltosulkeita, keskeinen arvo pari määritteet, jotka haluat antaa että tietyn tyyppinen elementti. Lopuksi, ja tämä on Yleisin tapa. Ja tämä on tapamme tee se s. asetettu 7. Se on ulkoinen tyylisivu. Joten sinulla on. CSS-tiedosto. Ja sen sisällä, näet paljon asioita, jotka näyttävät tältä, nimi tietyntyyppinen elementti tai tunnus tai luokka ja sitten sisällä kihara henkselit, listan keskeisiä arvo-pareja. Tietenkin, jos luot ulkoisen tiedosto, olet menossa tarvitse sisällyttää - terävä kuuluu, että olisi olla C analogisesti - HTML-tiedoston. Joten sinun täytyy sisällyttää tähän koodi HTML-tiedoston. Tämä on tiedoston nimi ja jos se on samassa hakemistossa. OK. Se oli paljon. Ja olemme nyt menossa hengittää ja katsoa jossain todellista, elävää verkkosivuilla ja tutustua enemmän. Mutta ennen kuin teemme sen, ei kukaan kysyttävää? Joten jos haluat tehdä tätä yhdessä minulle, voimme mennä laitteen. Ja päätin CS50 etusivulle. Voit tehdä tämän kanssa tahansa verkkosivuilla. Mutta miksi emme aloita CS50 etusivulle? Katsotaanpa virkistää. Olen itse erittäin suositeltavaa tehdä Tässä minun kanssani, koska mitä me aiomme tehdä nyt tulee olemaan uskomattoman kätevä sinulle, ei vain P-Set 7, mutta P-Set 8 samoin. Joo. Yleisö: Onko tapa tehdä huomautuksia HTML, ilman PHP? JASON HIRSCHHORN: Kyllä, voit tehdä havaintoja HTML. Yleisö: Mikä syntaksin? Yleisö: Huutomerkki viiva viiva. Yleisö: OK. JASON HIRSCHHORN: Kyllä. Se on syntaksin. Voit tehdä havaintoja HTML. Voit tehdä havaintoja PHP. Kuten näet, kommentoida HTML tulee näkyy edelleen, kun katsomme HTML lähdekoodin tietyssä sivustossa. Joten tämä cs50.net. Jos valitset modernein selaimet eniten tahansa sivulla, voit tarkastella sivun lähdekoodia. Tehdäänpä että CS50. Ja kas katso, me katso jättiläinen juttu. CS50 todella näyttää ihan kivoja. Monet sivustot eivät katso tämä mukava. Jos menet Googlen etusivulle ja avaa se. Se ei näytä tätä mukavaa. Mutta huomaat, että huipulla - tämä on sellainen pieni. Tehdään tästä suurempi. OK. Huipulla DOCTYPE HTML, se on tuttu. Sitten näemme avoimen HTML-tunniste ja pää, täällä, kaikki Näiden meta tageja. Ja näet tämän og, ei mene tuohon nyt. Mutta olen melkein positiivinen että nämä olisivat Facebook. Että on oikeastaan ​​Facebook. Uskon, että sanoista Open Graph. Joten muistakaa, olin viittaavat on Facebook metatiedot voit antaa sivulle. Sitähän on täällä. Joten kun Linkitä tämä sivu Facebookissa, kuva se tulee näyttämään tämä kuva täällä. Ja voit itse nähdä, että se on Facebook, koska se on Facebook kuva. Mutta joka tapauksessa, olemme pääsemässä syrjään. Joten meillä on joitakin metatiedot tunnisteita täällä. Näemme CS50 otsikko. Ja vielä, otsikko on mitä menee täällä ylhäällä selaimen välilehti. Näemme tämän on linkitys, täällä, ulkoinen JavaScript-tiedoston. Emme ole puhuneet JavaScript paljon, mutta ensi viikolla - ja varsinkin jos teet web-pohjainen ongelma asetettu, käytät JavaScript. Näin liität ulkoisen JavaScript-tiedostot. Näemme täällä, lopulta, CSS tyylisivu, joka dokumentoi nämä tyylejä tämän koodin. Katsotaanpa todella avata, että ylös ja katsomaan todella nopeasti. Tämä näyttää hullu. Ei ole mitään keinoa olisin osaa lukea läpi. Joten voit itse kuitenkin, jos otat ulkoasua, voit tavallaan nähdä, että on olemassa - siellä mennään. Joka näyttää jotain olemme nähneet ennen, taustaväri, jossa se vastaa noin punainen-vihreä-sininen arvo. Tämä tavaraa tavallaan pitäisi tunnu, että Ulkomaisten, vaikka silloin, kun esitetään tällä tavoin, se voi olla hieman ylivoimainen. Emme aio katsoa tätä CSS-tiedosto tai viettää paljon aikaa siihen, koska se on jälleen aika vaikea lukea. Mennään takaisin tähän HTML sivustolle CS50. Ja antaa selaa kehon. Ja sisällä me näemme tämän div tag. Näemme otsikon täällä. Näemme ankkuri tag. Ja tämä lista elementti on annetaan tiettyyn luokkaan. Ja me näemme, että luokassa toistuva uudestaan ​​ja uudestaan. Siellä olet Curtis. On kommenttia HTML5. Ja kuten huomaat, voimme silti nähdä sitä, mutta se ei näy. Se on oikeastaan ​​todella mielenkiintoinen. Se näyttää tältä tulokset lista elementti on kommentoitu pois. Jos menemme tällä sivulla uudestaan, se silti näkyy siellä, niin mielenkiintoinen. Ai, siksi, koska Tämän seuraavalle riville. Mitä muuta me näemme kiinnostavia? Loput tämä on enemmän sekava, vuonna käsittelevät tätä oikeutta puolet sivusto, joka on hieman hieman monimutkaisempi. Joten tämä on mitä jotkut HTML on menossa näyttämään. Minulle vaikka tämä on pieni ylivoimainen, ja tämä ei auttaa minua niin paljon. Kuitenkin on olemassa jotain, ei itse asiassa auttaa minua paljon. Ja sitähän käytän aina kun olen yrittää selvittää, miten jokin näyttää miten se tekee tai miten Teen muutoksia minun verkkosivuilla. Ja se on kehittäjä joka on rakennettu Chrome. Joten jos menet tämän kolmen baareja aivan täällä ja mene alas työkalut klikkaa Developer Tools, pieni ikkuna tulee pop up alareunassa sivun. Ja erityisesti, Chrome, koska se on ihana, alustaa tämä ikkuna ja ottaa HTML ja tehdä se näyttää paljon mukavampaa sinulle. Joten nyt se on todella joitakin kokoontaitettava HTML voit tutustua tarkastaa sivun elementtejä. Jos haluamme tarkastella kehon, se todella korostaa. Kun selaat yli osa HTML, alas tässä ikkunassa, se Korosta osaksi se puhuu noin isossa ikkunassa. Joten saanen yrittää pilaa tätä hieman. OK. Joten avaa kehon. Ja olen vieritys tänä vasemmalle div. Ja huomaat, että se korostaa Tämän vasemmalla puolella näytön. Joten klikkaa kyseistä ja laajentaa sitä. Sen sisälle, se näyttää on olemassa kaksi divs. Ei tämä ensimmäinen div. En näe, että korostettu. En tiedä, mutta se näyttää tältä toinen, vasen sisempi, on sisältö vasemmassa reunassa. Sitten on tämä asia sanottu otsikossa. Näyttää siltä, ​​että on korostus CS50 osa. Jos avaamme että ylös, näemme, että se on mitään muuta kuin header 1. Se annetaan tunnus, ja se on koska tekstin CS50. Joten jälleen, katsomalla sitä kautta konsolin tai käyttämällä kehitystyökalut ruudun alareunassa näytön ansiosta tutkia tällä sivustolla, toivottavasti, paljon vähemmän uhkaava ja paljon helpommin. Se myös antaa meille mahdollisuuden ymmärtää, että tällä sivustolla, vaikka se näyttää hyvin kaunis ja mukava, ei ole kovin paljon enemmän kuin mitä aiot olla tekemässä Harjoitus 7. Ja tämä on täysin sisällä kykyäsi luoda. Jos haluamme - muita hienoja asia käyttävät näitä työkalut on, jos klikkaa hiiren oikealla otsikko, voit muokata HTML. Joten kutsukaamme sitä Jason. Ja nyt huomaat olen muuttanut HTML tällä sivulla. En tietenkään ole muuttunut sen pysyvästi. Jos minä päivittää selain, niin se olisi palata alkuperäiseen HTML. Mutta joskus haluan debug minun koodi, enkä halua katsoa vain minun gedit ikkunan ja yrittää ymmärtää mitä on tekeillä. Haluan nähdä, mitä tapahtuu elää. Niin minä muokata koodia näin ja saada se miten haluan sen näyttää. Ja sitten teen muutoksia minun koodi. Ja huomaan, että se on paljon helpompaa kun voit tehdä asioita välittömästi, sellaista. Sano, jälleen, haluamme tehdä toinen mahdollisuus, koska olemme matkaan HTML ja CSS juuri nyt. Voin muokata HTML juuri nyt. Ja aion sisällyttää linkin. Joten aion muuttaa CS50 kotiin sivulla, joten se on linkki - sanokaamme - kotisivuni. Mikä on nimi, jos joku muistuttaa, tai mitä määritteen haluan antaa ankkuriin välilehti kun haluan se yhdistää jonnekin muualle? Yleisö: href? JASON HIRSCHHORN: href - Joten nyt näet, että siellä on alleviivaus alle Jason. Tämä johtuu siitä, Chrome, oletuksena, antaa ankkurit alleviivausta. Olet varmasti nähnyt, että ennen kun olet mennyt Web-sivulle. Asioita, jotka ovat linkit ovat alleviivattu ja sininen. Oletustyylin linkki on yleensä korostaa ja laita se sininen. Jos en pidä siitä, En voi muuttaa sitä. Ja me vaihdamme sen toiseen. Mutta nyt myös huomata, että jos minä leijua tänä vuonna vasemmassa alakulmassa näyttö, oikealla yläpuolella sanaosat on linkki, joka annoin sen. Joten jos en klikkaa tätä - ja voimme aivan click, avaa uusi välilehti. Tämä ei ole oikeastaan ​​minun kotisivu. Se on vain minun nimeni. Siellä mennään. Olemme nyt muuttaa sen linkkiä. Tutkitaan joitakin CSS samoin. Kaunis asia - ja aion tehdä tästä hieman pienempi - noin Tämä konsoli on, että hullu CSS arkki näimme ennen, se oli todella vaikea jäsentää, on nyt kauniisti säädetyn meille vasemmalla puolella Tämän ruudun. Joten voimme katsoa. Ja jos me laajentaa tätä tyylejä välilehden me nähdä kaikki eri tyylejä jotka liittyvät, tässä tapauksessa tämä erityinen tekijä, tämä länkelement. Jos teemme yhdiste tyylejä välilehti, että vain osoittaa meille, ei silloin, kun kaikki tulee, mutta pohjimmiltaan kaikki nämä tyylejä, jotka toimivat tämä erityinen tekijä juuri nyt. Ja sanotaanko, haluamme muuttaa sitä hieman. Tämä kaikki on siis tyylejä, jotka ovat toimivat tässä elementti. Sano haluamme muuttaa sitä, koska me haluat nähdä, miten jokin näyttää. Ja me vain leikkivät ympäri juuri nyt. Tai haluamme testata jotain, ennen kirjoittaa sen koodin ja työntämällä sen ja tekee se elää. Voimme mennä tyylejä välilehti. Ja ensimmäisessä ruudussa se sanoo, element.style. Ja täällä, voit lisätä, voit lisätä jotain. Joten haluan - mennään minun linkkiä ja asettaa taustavärin. Ja se todella autofills sen sinulle, kaikki mahdolliset ominaisuudet. Taustaväri, ja haluan tehdä tuo sininen. Blus ei ole sana. Sininen on sana. Teinkö nähdä sen keksiä? Voi, on se, että koska se on href? OK. Joten en näe mitään muutosta täällä. Ja se johtuu siitä, jos me korosta linkin, huomaat, että linkki ei tosiasiassa hallitsevat ominaisuuksia tämän tietyn elementin. Se on oikeastaan, jos avaamme linkin, Tämän otsikon täällä se on valvoa, miltä se näyttää. Joten jos haluan tehdä tausta sininen, en oikeastaan ​​tarvitse muuttaa taustaväri on otsikkoelimestä. Ja nyt näemme, että tausta on sininen. Joten jälleen, näin nopeasti saattaa olla menossa tämän materiaalin läpi melko nopeasti. Mutta tämä on lähinnä mitä aiot olla tekemässä. Se ei ole Harjoitus 7, mutta varmasti kun olet koodaus Webissä. OK. Haluan tehdä tausta sininen. Vaikka tässä tapauksessa sininen näyttää melko ruma. Voin mennä tänne, leikkiä. Näen, että sen muuttaminen siniseksi ei toimi. Minun täytyy todella muuttaa header elementti sisällyttää sininen tausta. Ja sitten, jos sitten menen takaisin minun CSS tiedoston, miten voin itse asettaa tämän tausta on sininen ja tehdä tämän muutoksen keppiä? Koska jos huomaamme, jos en päivitä sivu, kaikki tekemäni muutokset ovat menneet. Niin tajusin, OK, minun tausta on sininen. Minun täytyy mennä, että header1 elementti ja vaihtaa taustavärin siniseksi. Miten voin itse tehdä, että muutos? No, muistuttaa, että jos menemme sisälle täältä, tämän otsikon, otsikko on tunnus. Ja se on otsikko. Ja niin meidän CSS-tiedoston, voimme sanoa, OK, ota mitään ID: n otsikko ja antaa sille tätä ylimääräistä omaisuutta. Kuinka me viite jotain ID otsikon, mitään ideoita tai joku miten voimme viite Tunnukset meidän CSS-tiedosto? Hash, se on juuri oikea. Ja sait aavistuksen joka täällä. Joten jossain tässä CSS-tiedosto, on tämä rivi koodia - # Vasen # vasemman sisemmän # header # otsikko. Ja se antaa sille alamarginaali, määritellään alamarginaali tämän erityinen tekijä. No, jos halusin muuttaa sitä, Haluaisin mennä tähän CSS-tiedostoa. Ja voisin joko löytää tämän osa CSS-tiedostoa. Tai voisin kirjoittaa oman. Voisin tehdä hash otsikko kihara ahdin ja Sitten taustaväri paksusuolen sininen pilkulla ja lähellä, että kihara ahdin. Ja jotka muuttaisivat tausta väri tämä elementti siniseksi. Syystä he antavat sinulle niin paljon tässä että se on tässä tapauksessa välttämätön, koska otsikko on yksilöllinen tunnus. Mutta mitä voit tehdä, on pesä asioita. Joten tämä sanoo, OK, menen vasemmalle. Se on hyvin pieni. Pyydän anteeksi, että. Mutta mene juttu tunnus vasemmalla. Sisällä että, etsi juttu ID vasemmalle sisempi. Sisällä että näyttää, etsiä juttu tunnus header. Sisällä että etsiä asia ID otsikko ja muuta id titteli. Joten tämä on vain tapa Pesivien asioita. Jotkut pitävät pesä sitä, koska se tekee siitä hieman selkeämpi. Näet tänne myös, eikö täällä, ei ole hash. Se on vain H1. Tämä johtuu siitä, h1 on annettu name of geneeristen tag. Ja joitakin CSS-ominaisuuksia liittyy joka ikinen H1. Joten jos löysin toisen H1 tällä sivulla, Haluaisin myös nähdä, että tämä tyyli oli soveltaa sitä. Jos haluaisin käyttää tyyliä luokka, miten voin viite luokkaan tai puhua luokan CSS-tiedosto? Yleisö: Dot. JASON HIRSCHHORN: Se pisteellä. Joten mennään takaisin tälle sivulle ennen. Jos en tee hash tunnus. Se on muuttumassa tyyli ja juttu tunnus. Tai anteeksi, jos en tee hash-logo, joka on löytää juttu ID logo ja antaa sille erityisen CSS tyyli. Jos teen jotain. Alkuun, että toteamus kaiken luokan alkuun ja muuttamatta sen tyylejä. Jos en yksinkertaisesti H1, joka löytää jokainen yhden H1 ja antaa sille mitä tahansa tyyli Haluan antaa sen. Jos teen H1 tilaa ja sitten. Alkuun. Joka menee löytää kaikki H1S ja sitten kaikki ne joilla luokan alkuun ja sitten vain muuttaa näitä tyylejä mitä haluan antaa sille. Ja vielä, meillä olisi voinut kirjoittaa jotkut sitä yksin. Mutta emme olisi mennyt niin pitkälle. Paljon parempi, se näyttää itse mennä on todellinen elävä verkkosivuilla ja nähdä, miten he tekevät sen ja tarkastella kaikkia fantastinen asioita saat tehdä. Katsotaanpa yksi sivusto Ennen kuin siirrymme. Ja tämä on yksi, joka luultavasti perehtyy. Tämä on CS50 Finance. Joten jälleen, voit itse mennä ja noudattaa tätä CSS-tiedoston tietokone, koska olet ladannut tämän CSS-tiedosto, jos olet ladannut Harjoitus. Voimme mennä Työkalut ja Developer Tools. Ja näemme paljon yksinkertaisempi HTML layout. Meillä on ylä-, keski-ja alaosassa. Ja vielä, jotain pitäisi olla tuttu, koska olet etsinyt jakamalla koodi tämän viikon ongelma asetettu. Ylimpänä on, per koodi, yhden kuvan kutsutaan. Ja se on lähde kuvan. Sanottava, että olen lopettanut kaikki mitä Halusin varten Harjoitus 7. Ja se toimii oikein, mutta Haluan muuttaa miltä se näyttää. Ja haluan muuttaa taustan yläosan sivun, Esimerkiksi sininen. Jos se olisi minulle, en olisi tullut täällä ja selvittää, OK, mitä haluan muuttaa. Katsotaanpa, div ID alkuun, että ulkonäkö kuten sivun yläreunassa. Joten mennään sinne. Kokeillaan muuttumassa taustaväri. Mennään tekemään Alice sininen, koska se on mukavampi yksi. Ja huomaat, että - luultavasti ei voi nähdä, että. Mutta on vaaleansininen, rinnalla CS50 logo. Katsotaanpa muuttaa sen sijaan punaista. Ja huomaat nyt Muutin juuri taustavärin punaiseksi. Joten nyt kun menin minun CSS-tiedosto ja kirjoita # top kihara kantatuote täällä. Näet koodi oikea täällä, kihara ahdin. Ja sitten, lisäisin tausta väri, punainen. Ja sitten, ei olisi olla kihara ahdin. Tämä on siis miten olisin tutkia ja kokeilla alustuksen jälkeen CS50 Finance sivusto. Voisin tehdä sen täällä ja testi sitä minun selaimessa. Ja sitten, voisin mennä minun todellinen koodi ja tehdä muutoksia, jotka itse mennä elää ja että ihmiset itse nähdä, jos ne tulevat minun tietyn sivuston. OK. Se oli paljon. Pahoittelen läpi niin nopeasti. Onko kellään mitään kysyttävää lainkaan siitä HTML-tai CSS? Yleisö: Voitko vain mennä yli siitä, miten voit liittyy mitä tuli Jason, taas? JASON HIRSCHHORN: Mitä Do you mean liittyy? Yleisö: Annoit linkin toiseen verkkosivusto, käyttäen ankkuri. JASON HIRSCHHORN: Joten kysyt, vain yleisesti, miten teet linkin? Yleisö: Joo. JASON HIRSCHHORN: OK. Koodi tehdä linkin - Yleisö: Ei, kuten HTML. JASON HIRSCHHORN: Down täällä, sinä tarkoitat? Joten jos haluan lisätä linkin jonnekin, vaikkapa tämä on HTML minun sivu täällä. Tämä on HTML. Ehkä se on auki tiedoston, index.html. Menen sisään Katsotaan tämä tekijänoikeus John Harvardin linkki jotain. Niin me muokata kaikkia tämän HTML-muodossa. Kaikki sinun on sisällyttää, niin teline loppusulkumerkki at alussa, ja sitten kannatin slash loppusulkumerkki lopussa. Joten nyt olen mukana ankkuri tag. Ja todella, jos valitset pois tästä, se sulkeutuu nyt muotoile se muokkaa HTML. Ja sanoa, haluamme linkittää sen. Olimme sinulle href. Ja me sanomme - Ja nyt, kun huomaat, tekijänoikeus John Harvard on sininen. Ja kun selaa yli , se on nyt linkki. Joten voit kirjoittaa, että koodia. Voit ympäröidä melko paljon mitään haluamasi ankkuri tag ja käännä se linkiksi. Yleisö: OK. Sain sen. JASON HIRSCHHORN: Ja jos en halua se - tietenkin, joskus ihmiset yleensä ajatella näitä asioita, että katsokaa sininen yleisesti ja alleviivattu ovat ei kaunein tapa tehdä linkin. Joten jos tulen tänne, näet, että jossain CSS-tiedosto on kirjoittanut tämän ja sitten kaksi aaltosulkeita. Sanotaan siis, että linkit, en halua niitä tulla sininen, melko I haluavat väriä linkki olla tämä mukava magenta. Annetaan sen väri. Palataan magenta. Nyt kaikki linkit sivuni on tullut tämä mukava väri magenta. Jotkut ihmiset eivät pidä väriä lainkaan. Jotkut ihmiset eivät pidä alleviivauksineen. Saat valita. Linkkejä, voit muotoilla miten ne katso kun olet käynyt niitä. Kuten huomaat on paljon sivuja, linkkejä punastua sinua käymään. Voit muuttaa että väri samoin. Joo. Yleisö: Eli muutat sen jokaisesta linkkiä. Mutta jos vain halusi tehdä, että yhteys itse, voisitteko tehdä ID pohjaan tai jotain? JASON HIRSCHHORN: Niin suuri kysymys. Kuten olet huomannut täällä, olen muuttanut joitakin osa CSS, joka koskee kaiken, mitä A. Jos haluaisin vain tehdä linkki alareunassa, I menisi minun CSS-tiedosto ja luultavasti tehdä juuri kuten sanoit, hash pohjatilasta. Ja joka antaisi minulle kaikki Kuten pohjaan. Tai voisin vaihtoehtoisesti antaa sille yksilöllinen tunnus ja sitten vain tehdä hash-linkkiä. Ja joka sallisi minun muuttaa tätä ulos. Kuitenkin vain doling tunnukset piittaamattoman on yleensä huono käytäntöä, koska nämä olisi ainutlaatuinen. Ja mitä enemmän on niitä, se voi saada hieman sekava. Joo. Yleisö: Voitko antaa saman ID on useita omistajia? JASON HIRSCHHORN: Teknisesti kyllä. Mikään ei tule pysäyttämään sinua, mutta et Eikö sinun pitäisi antaa sille luokassa. OK, muita kysymyksiä HTML-tai CSS? OK. Olkaamme siirtyä PHP. Voi, kyllä. Yleisö: Mikä se on näistä sivustoja, se tarkoittaa, että voimme muokata ne ennen kuin me virkistää. Mutta kun me päivittää se palaa takaisin alkuperäiseen HTML? JASON HIRSCHHORN: Suuri kysymys - joten kun olemme ladattu tähän Web-sivun, se on HTML. Ja se on JavaScript. Sen PHP suoritetaan antaa meille mitä tyyppisiä sivustoja näemme. Ja se on luotu joitakin HTML: ään, JavaScript, ja jotkut CSS. Ja se on nyt saatavilla meidän tietokone. Ja kopio tiedostot tallennetaan paikallisesti meidän tietokone, toistaiseksi. Joten voimme muokata että paikallinen kopio. Mutta tietenkin, emme muokkaat palvelimelle kopio. Ja kun me päivittää sivua, saamme toiselle palvelimelle kopio. Ja niin me näemme asiat takaisin kuin ne olivat. Jos pystyisimme, täältä, muokata virallisilla verkkosivuilla, meillä olisi paljon ongelmia. Yleisö: Joo, niin voimme lukea ja kirjoittaa, että kopio. JASON HIRSCHHORN: Oikea. Olemme vain tehdä paikallisia muutoksia täällä, mutta jälleen erittäin hyödyllistä tutkia, Usein. Kun Kirjoitan Opinnäytetyöni varten Esimerkiksi Haluan nähdä, miten jotkut verkkosivuilla tehty jotain look miten he tekivät. Aion mennä ja käyttää tätä ruudussa alas täällä, katsomaan mitä CSS he antoivat sitä tai mitä väriä ne poimitaan tai miten ne sain sen niin, että kun leijui yli jotain, lista tuli alas mukava CSS muoti. Se on loistava tapa tarkastaa, mitä muut sivustot tehdä ja lainata niitä. Siirrytään PHP. PHP on lyhenne sanoista, rekursiivisella mielessä, PHP Hypertext prosessori. Ja PHP, mitä se aikoo tehdä on suorittaa koodia palvelimen puolella. Joten emme koskaan tule näkemään PHP. Se ei kuitenkaan pelaa hienosti HTML ja tuottaa usein paljon HTML-koodia. Mutta voit olla perehtynyt Ongelma Aseta 7, PHP-koodi tulee suorittaa, tuottaa joitakin HTML, ja sitähän käyttäjä päätyvät näkemään. PHP on uskomattoman samanlainen C. On kuitenkin olemassa pari eroja, ja nämä erot ovat tärkeää huomata. Yksi ero on, että muuttujat PHP on väljästi kirjoitettu. Onko kellään mielessä mitä se tarkoittaa? Yleisö: Ei tarvitse heittää itse. Kuten ei tarvitse kirjoittaa tekstiä. JASON HIRSCHHORN: en käyttäisi sana valettu, mutta kyllä, ei tarvitse ilmoittaa tyyppi tiettyyn muuttujaan. Miten sijaan me julistaa muuttuja? Yleisö: Käytä dollarin merkki. JASON HIRSCHHORN: Käytä dollarin merkki. Niin $ x on muuttuja. 1 dollari on vaihteleva. $ String on vaihteleva. Nämä muuttujat, $ x voisi olla kokonaisluku. Sitten se voisi olla merkkijono. Sitten, se voi olla merkki. Se ei ole oikeastaan ​​väliä. Myös cool juttu PHP on, vaikkapa $ x on merkkijonon yksi. Ja $ y on merkki yksi. Voit lisätä $ x ja $ y, ja se tulee antaa sinulle 2, mitä voit odottaa. Joten on toimintaa PHP. Koska se on väljästi kirjoitettu muuttujia, Joissakin implisiittinen valu on sinulle tehnyt ja jotkin toiminnot. Voit tehdä toimintansa asioita erilaisia. Kun taas ennen, saat usein virhe C sanonta, tämä ei ole tyyppiä joka on tarkoitus mennä tänne. Ainoat asiat, tämäntyyppinen mennä täällä. Et tule saamaan tämäntyyppistä virhe, yleensä, PHP. Niin, että yksi suuri ero - miten suhtaudumme muuttujia. Toinen suuri ero on se, että PHP koodia tulkitsee. Wheres, C-koodi on käännetty. Mitä tuo tarkoittaa? No, C-koodia ajoit sitä kautta kääntäjä. Luonnin binääritiedosto. Ja kun juoksi että binääritiedosto. Hoidit kaikki virheet ennen luonnin binääritiedosto. Tietenkin on saattanut olla segmentointi viat, kun juoksin binaaritiedosto. Mutta se ei ole kuin unohdit sisällyttää määritelmän printf, tai et käytä muuttujaa ja vain luotu tuhlaileva muuttuja. Tai sitten ei määritellyt toiminto prototyyppi. Kaikki tämä tapahtui ennen kuin koottu. Se antoi sinulle kaikki virheet tai huono asioita, joiden se arveli tapahtua. Ja sitten, sinulla oli 0 ja 1 tiedosto juoksi. PHP-koodi ei toimi niin. Aiot kirjoittaa PHP-koodin. Sitten olet menossa tallenna se, oletettavasti. Ja ainakin P-Set 7, olet menossa päivittää selaimen, ja olet menossa katsomaan, mitä tapahtui. Olet menossa nähdä tuotoksen tuon PHP-koodin. Saatat myös nähdä, huipulla sivusi, virhe. Koska sinulla oli joitakin virhe PHP. Saatat silti nähdä loput Web-sivu etsii hieno. Mutta yksi osa on väärä, ja siellä on virhe tuossa paikassa. Ja se johtuu siitä, että osa PHP-koodi ei toimi. Todellakin, kun suorittaa, kun Siirry jotain by.php. Se tulee käydä läpi PHP tiedostoon rivi riviltä ja suorittaa sen silloin ja vain silloin. Se ei tule kokoamaan sitä ennen aikaa tai koota yhden kopion ja sitten antaa että koottu kopio kaikille. Joka kerta, se tulee käydä läpi rivi riviltä ja suorittaa sen. Joten jotkut linjat voisi toimia ja lähtö jotain oikein. Ja muut rivit saattavat olla rikki ja lähtö virheen sijaan. Joten kun virheenkorjaus PHP, olemme antaneet sinulle pari hyödyllistä asiaa auttaa sinua debug, kuten dump-toiminto. Mutta yleisesti, olet menossa nähdä nämä virheet. Ja se miten aiot tietää teit jotain väärin. Mutta olet vain menossa katsomaan virhe kun olet todella ajaa koodia. Toinen tärkeä näkökohta PHP ja Web-kehitys on ajatus get vs. post. Voiko joku selittää, mitä eroa välillä saada ja viesti ovat? Kukaan - Kyllä. Yleisö: Ei yksi heistä antaa käyttäjän nähdä tiedot, ja yksi heistä ei? JASON HIRSCHHORN: Great. Joo, sinulla on jotain lisättävää? Yleisö: I ohut viesti on super-globaali muuttuja. JASON HIRSCHHORN: Eli nämä molemmat muuttujat annetaan sinulle. Nämä ovat vain muuttujia. Ja tiedät, että hän muuttujia, koska täällä I käyttää dollarin merkki. Nämä ovat muuttujia tietyn sinulle PHP. Ja kun siirtyä sivulta toiselle, haluat tallentaa joitakin tietoja. Todennäköisesti haluat säästää, jos käyttäjä on kirjautunut sisään Se ei ole tallennettu GET ja POST. Joka on tallennettu jotain muuta, eri muuttujaa. Kukaan tiedä, mitä muuttuja, joka on tallennettu in, tai mitä muuttujaa käytät P-Set 7, varmista, että käyttäjä on kirjautunut sisään? $ _SESSION, Että on aivan oikein, luultavasti tärkeää tuntea nimet näistä asioista käytät usein. Joten käytät istunnon muuttuja säästää tietoa sivulta toiselle. Se on erittäin vaihteleva. Se on olemassa jokaisella sivulla, ehkä kuten globaali muuttuja, jos haluat ajatella siitä niin. On olemassa pari muuta muuttujien , joiden avulla voit siirtää tietoa sivulta toiselle. Erityisesti ne, me keskitymme ovat GET ja POST muuttujat. PHP ne näyttävät $ _GET Ja $ _POST. Ja ero, kuten Marcus huomautti ulos, välillä kaksi niistä on se, että tiedot $ _GET on näkyvät URL. Joten jos katsomme tänne, näemme YouTube-linkki. Näemme tämän kysymysmerkki. Näemme v = ja sitten jotain arvoa. Takaisin tämän ajatuksen keskeinen arvo pari, v on avain. Ja täällä on arvo. Joten jos me mennä tämän sivun tai koodaus tällä sivulla, meillä olisi muuttuja nimeltä $ _GET. Jos menimme $ _GET alkusulkumerkki "v" loppusulkumerkki, hyvin samanlainen kuin array merkintätapa, tämä on osakkuusyritys array koska emme käytä indeksejä. Käyttivät jouset avaimina. Mutta hyvin samankaltainen idea. Jos menisimme me, saisi tämän arvon. Tällä sivulla olisimme pystyä käyttää tätä arvoa. Jos me todella näyttävät, katsotaanpa Siirry YouTube-sivulle. Mitä video meidän pitäisi katsoa? Tämä yksi, ovat ihmiset hobitti faneja? Yleisö: Kyllä. JASON HIRSCHHORN: Joten olen kopioinut niiden osuus URL-osoite ja liittämällä sen uuteen ikkunaan. Ja nyt, jos tarkastellaan tänne, sinun huomaa, että jälleen kerran - Aion kopioida ja liittää osaksi gedit, jotta voimme nähdä sen suurempana. Huomaat, että se on Tämän kysymysmerkki. Kysymysmerkki tarkoittaa, että kaiken tämän jälkeen tulee olemaan tallennetaan get muuttuja. Se on sitten v, joka on ensimmäinen näppäintä ja tämä ensimmäinen arvo. Et-merkki on erityinen. Ampersand sanoo, OK, me päättynyt ensimmäinen arvo. Olemme nyt siirtymässä toiseen keskeinen arvo pari. Täällä, avain on nimeltään ominaisuus, ja arvo on youtu.be. Joten jos olisin koodaus tämän sivun ja joku meni tätä URL-osoite ja minulla oli Ehkä watch.php. Ja olin koodauksen. Ja voisin käyttää $ _GET muuttujan. Ja olisin v, ja Olisin ominaisuus. Ja jos käytän v-painiketta, I saisi tämän arvon. Ja jos en $ _GET kiinnike "ominaisuus" loppusulkumerkki, saisin tämän arvon. Jälleen kerran, tämä ei välttämättä tarkoita sovelleta - tietenkin, YouTube avaimet ja arvot ja saada tietoa ei sovelleta meidän Harjoitus 7. Mutta on olemassa tiettyjä asioita, joita me kautta kulkevaksi GET meidän Harjoitus 7. Ja varmasti, kun menet web-sivun tai koodaus oman sivun, $ _GET Tulee kätevä kun koodausta. Mikä on yksi syy käyttää $ _GET sitten, jos se takaa mitään yksityisyyttä? Näet kaikki tämä tieto joka siirretään. Se kaikki näytetään käyttäjälle. Mutta mitä yksi syy, että saatat haluat tallentaa jotain $ _GET, koska vastakohtana $ _POST? Miksi ehkä haluat tehdä? Selvä. Pyysin sinua Quiz 1. Mikä on pro dollaria _GET? Mikä on yksi pro? Joo - Yleisö: On helpompi jakaa tietoa. JASON HIRSCHHORN: Luulen se on hienoa. On helpompi jakaa tietoa. On helpompi kirjanmerkin. Voit kirjanmerkki nyt YouTube.com / watch? V = jotain ja mennä tähän erityiseen video. Jos YouTube teki aina POST pyynnöt eri sivuja, jokainen YouTube URL olisi YouTube.com. Et voinut kirjanmerkki yhden videon. Koska jos sanot jaetun että linkki jonkun muun kanssa, he eivät automaattisesti saada viestisi muuttuja. He vain saada linkki, ja linkki on sama kaikille. Tämä on siis pro. Sen avulla voit kirjanmerkki tämä tietoja tai jakaa tätä tietoa tai tehdä siitä hieman käyttäjäystävällisempi. Tietenkin, ei ole yksityisyyttä, joten meillä on tämä viesti muuttuja. Ja post tietoja ei ole näkyvät URL. Se ei ole täysin yksityinen. Mutta se on hieman enemmän yksityisiä. Ja niin näet tämän URL tänne, cs50.net. Onko olet kirjautunut verkkosivuilla, se tulee olemaan sama URL, cs50.net. On selvää, että jotain on erilainen, jos olet kirjautunut verkkosivuilla. Sinulla on yksi, luultavasti PIN-numerosi. Ja se on vahvistanut, että palvelimen kanssa. Ja se on luultavasti säästää joitakin muita tietoja. Mutta URL-osoite ei muutu lainkaan. Ja niin se on asia, kun jotain lähetetään postitse. URL-osoite ei muutu. Tämä POST tietoa ei ole näkyvät URL. Mutta jotkut valtion on muuttunut, ja ehkä joitain tietoja tallennetaan POST muuttuja. Anteeksi. Ennen kuin menen SQL kaikki kysymyksiä PHP, erityisesti kysymyksiin asioita emme mene yli että olet löytänyt tai syntaksivirheitä tai logiikka kysymyksiä PHP? OK. Lopullisen kieli on vuorovaikutuksessa tällä viikolla on Structured Query Language, SQL, lausutaan jatko usein. Jonka avulla voit vuorovaikutuksessa tietokanta muodollista. Ja se pelaa oikein hyvin PHP. Kuten näet vuonna Harjoitus 7, olemme antanut sinulle toiminto nimeltään kyselyn. Ja se vie SQL merkkijono ja suorittaa että kyselyn tietokantaan. Menneinä vuosina, et ollut antanut tätä toimintoa. Sinun piti käyttää PHP toimintoja, jotta kyselyn tietokantaan ja tarkistaa virheistä ja sitten saada tuloksia. Ja itse asiassa, se ei ole niin kova, koska uudelleen, se pelaa oikein hyvin PHP. Ja PHP antaa sinulle paljon toimintoja vuorovaikutuksessa SQL-tietokanta. Niin usein, kaksi nämä yhteen. Tietenkin voit vuorovaikutuksessa SQL-tietokannan kanssa tahansa useita muita kieliä. Mutta PHP on suuri yksi valita. Tietokanta - me mennä yli tämän nopeasti, koska tämä on muotisana aiomme alkaa käyttää usein - on kokoelma taulukoita. Voimme siis ajatella sitä Excel-tiedostona. Excel-tiedosto on useita välilehtiä on näytön alareunassa. Jokainen välilehti me nyt kutsumme pöytä, jossa taulukko on kokoelma rivejä. Ja mikä on rivi? No, rivi on, että sama asia Excel-tiedoston. Se vain on tiettyjä arvoja kullekin tietyllä alalla tai kukin antaneet sarakkeessa. Se on kuin taulukon merkintä. Se on opiskelija, joka on tunnus, erityisiä tunnus ja erityinen nimi ja erityisiä talo. Joten Tietokanta on kokoelma taulukoita. Ja taulukot ovat itse rivien tai kirjaa. On myös kussakin pöytä, tietyillä aloilla. Ja joka määrittää, mitä kukin ennätys on menossa on, kenttiä kutsutaan joskus sarakkeita mutta yleensä kutsutaan kentät. Tässä hyvin yksinkertainen pöytä, minulla on kolme kenttiä, ID-kenttä, käyttäjätunnus kenttään ja hash kenttään. Ja minulla on kolme riviä. Juuri nyt he ovat tyhjät. He luultavasti ei olisi tyhjä jos tämä oli minun todellinen tietokanta. Joten jos olet käyttänyt Excel, samanlainen idea mitä teet Excelissä, vaikka, tietenkin, nyt aiomme pystyä tehdä paljon tehokkaampi asioita tiedot, jotka on tallennettu meidän tietokantaan. Sinun tulee luoda itsellesi yhden tietokanta Harjoitus 7. Mutta tulet tekemään useita pöydät sisällä tietokantaan. Luot tietokannan tai pöydän käyttäjille. Sinulta myös luoda taulukko luultavasti osakekaupoilla, pitää seurata niitä, koska sinun täytyy toteuttaa historia ominaisuus. Molemmat taulukot on eri aloilla. Esimerkiksi käyttäjä kentän, sinun luultavasti haluavat käyttäjätunnus ja ID ja hash niiden salasana. Vuonna Osakkeet pöytä, joka pitää kirjaa historiaa tai historia-taulukon luultavasti ei tarvitse käyttäjätunnus ja hash ja tunnus. Olet luultavasti tarvitsee vain yksi niistä arvot, jotka ovat ainutlaatuisia, liittää sen tietylle käyttäjälle. Mutta sitten, haluatko tallentaa muita asioita, kuten mihin aikaan oli osakekaupan johdosta. Mitä varastossa on ostaa tai myydä? Kuinka monta osaketta varastossa on ostaa tai myydä? Mikä oli hinta, jolla Varastossa on ostaa tai myydä? Joten jälleen, aiot olla vuorovaikutuksessa kanssa tietokantoihin, joka on menossa on useita taulukoita. Jokainen taulukko tulee olemaan omat kentät. Kuitenkin on todennäköisesti samanlainen kentän jokaisessa pöydässä, että koskee niitä toisiinsa. Yleensä tämä on ID-kenttä. Koska jos jokainen käyttäjä on yksilöllinen tunnus ja liität että ID jokaisen Kaupan että käyttäjä tekee tai kaikki kyseisen käyttäjän historiasta. Ja sinulla on käyttäjän tunnus. Voit saada tietoa joko pöytä. Voit saada käyttäjätunnuksen ja sinut voivat saada kaikki niiden toimista. Kysyttävää tietokantoja, tai erityisiä kysymyksiä? Tai oikeastaan ​​pidä siitä. Olemme siellä on kaksi puolta. Joten on neljä toimintansa tietokantoihin, jotka käytät vuonna Harjoitus 7 ja todennäköisesti koskaan käyttää. Ensimmäinen asia, jonka haluat tehdä, on insertin uusi ennätys taulukkoon tai uusi rivi taulukkoon. Tämä on yleinen funktio, geneerinen muodossa, että SQL-kyselyn. INSERT INTO taulukko riippumatta sarakkeet haluat lisätä ja sitten arvot, että olet menossa haluavat laitat tähän sarakkeita tai kenttiä. Jos sinulla on useita taulukoita tietokannan tai useita tietokantoja, sinun saattaa myös olla tarpeen määrittää tietokantaan ja taulukko, jonka haluat laittaa asiat oikeisiin. Mutta hyvin yksinkertainen, jos haluat lisätä jotain, te sanotte, tässä on kentät Haluan lisättävän. Ja tässä ovat arvoja. Joissakin taulukoissa, myös, ja tämä käyttäjän pöytä on hyvä esimerkki. Luultavasti tämän käyttäjän pöytä ja luultavasti oman käyttäjän taulukon P-sarja 7, siellä ei ole vain käyttäjätunnus arvo. Ei ole vain rahallista arvoa, tai alalla ennemmin. On myös ID-kenttä. En aio lisätä, että ID-kenttä. Että menee annettava minulle automaattisesti, kun uusi ennätys lisätään. Joten on joitakin kenttä, jonka voi asettaa oltava automaattista. Ehkä haluat antaa jokaiselle käyttäjälle 10000 dollaria käteistä pois bat. Joten minun ei tarvitse lisätä määrä käteistä täällä. Kaikki mitä tarvitsee lisätä on käyttäjätunnus. Ja sitten, käteistä alalla on esitäytettyä, ja ID-kenttä täytetään valmiiksi. Joten Usein, emme asetat jotain jokaiseen kenttään, koska nämä muut kentät ovat Esitäytetyn veroilmoituksen. Koska näin me perustaa pöydän. Toinen asia aiot haluat tehdä, on poistaa ennätys. Poistaminen jotain on hyvin yksinkertainen. Annat taulukko, johon haluat poistaa jotain. Ja te sanotte, OK, haluan poistaa ennätys, joka on käyttäjätunnus Milo. Tai haluan poistaa kaikki tiedot, jotka on käyttäjätunnus, Milo tai jotka olivat liiketoimet käyttäjätunnus numero 2. Kysyttävää näistä kahdenlaisia ​​kyselyitä? Yleisö: [kuultavissa]. JASON HIRSCHHORN: Kyllä. Joten aion käyttää rivin ja tallentaa synonyymeinä ja jotkut sarake ja kenttä. Mutta yksi rivi on yksi tietue. Yksi sarake on yksi kenttä, menee takaisin tähän taulukkoon. OK. Seuraava asia olet luultavasti aikoo tehdä, on saada joitakin tiedot taulukosta. Se on Valitse kysely. Ja vielä, mitä taulukossa minä valitsemalla? Ja mitä sarake haluan valita, tai Mikä arvo Haluan valita ja josta rivi? Joten Select on hieman erityinen. Sanon, OK, haluan tässä taulukossa. Ja sitten haluan sarakkeen käyttäjätunnuksen ja Haluan sen rivi ID 2. Se on yksi tapa tehdä valinta. Tai voin sanoa, anna minulle joka yhdellä käyttäjätunnuksella. Tai voin sanoa, anna minulle koko rivi tästä taulukosta, jossa käyttäjätunnus on 1. Niin on olemassa pari eri tapoja Tehtävät Valitse kyselyitä, riippuen siitä, miten paljon tietoa haluat, Voit aina valita vain kaiken kyseiseltä pöytään ja sitten silmukka sen kautta, poiminta asioita haluat. Mutta pitää muistaa, jos olet valinnut paljon asioita pöytä ja sinua on todella iso pöytä, joka vie jonkin aikaa, joten kannattaa valita vain asioita, joita olet menossa päätyä käyttäen. Myös, Select ja kaikki nämä muut SQL-komentojen samoin, olen antaa sinulle riisuttu versio. Mutta sanoa, olen valinnut käyttäjät ja haluan tulostaa ne aakkosjärjestyksessä, Voisin valita kaikki käyttäjät ja sitten lajitella aakkosjärjestykseen minun koodi. Tai on tapa kirjoittaa valitse kysely, joka valitsee asiat aakkosellinen muoti, perustuu pois oma sarake, nousevaan tai laskeva. Joten pitää mielessä, että paljon siitä, mitä haluavat tehdä voitaneen tehdä kyselyn kautta lisää määrite. Joten älä etsiä nämä kyselyt verkossa tai muita asioita voit tehdä näitä kyselyt laajentaa niitä. Lopuksi, viimeinen asia mitä haluat tehdä ei aseta jotain tai poistaa jotain, vaan pikemminkin päivittää jotain. Ja se tehdään päivitys kysely, ja taas, mitä taulukossa. Ja mitä muutoksia haluan tehdä? Ja johon rivin tai tallentaa tehdä Haluan tehdä tämän muutoksen? Kysyttävää SQL? OK. Joten meillä on noin 15 minuuttia. Ja tämä on viimeinen dia minulla on. Ja toivottavasti tämä viimeinen dia hyvä Segue osaksi ongelmaa asetettu, koska ymmärtää missä haluamme lisätä tietueita, poista ne valitsemalla heille, ja päivittää niitä auttaa meitä ymmärtämään suurempia logiikkaa ja virtaus Tehtävän Set 7. Joten tiedän kaikki vastaukset näihin kysymyksiin. En aio kertoa teille kaikki vastaukset. Mutta jos joku muu haluaa esittää kysymyksen ryhmän tai vastaus johonkin näihin kysymyksiin, voimme käyttää sitä hyppäämällä pisteen puhua ongelmasta asetettu. Tai jos joku on yleisempi kysymys pois ongelma asettaa, tuntuu vapaasti kysyä, että samoin. Ja voimme aloittaa siellä. Muista, että olet hiljaa olemisen vahingoittaa kaikkia. Joo. Yleisö: Niin on ainoa tapa siirtää muuttujia ja eri web sivua, tai mukavin tavalla, käyttäen POST tai GET? JASON HIRSCHHORN: Joten kyllä, että on Kätevin tapa sanoa - kun joku täyttää lomakkeen - saada tietoa toisessa WWW sivu, GET ja POST. Koska puitteiden käytämme Tämän ongelman asetettu, huomaat , että paljon kertaa, me johtaa toisen sivun. me tai meidän johtaa toisen tiedoston, ei välttämättä toiselle sivulle. Joten ohitamme muuttujaan. Ja sitten, se tekee HTML-sivun avulla tietoa muuttuja. Että ei ole teknisesti kulkee tietojen välillä eri web-sivuja. Joka kulkee tietoa eri tiedostoja. Ja jotta voimme käyttää mitä tahansa muuttuja tehdä. Mutta kyllä, jos halusimme välittää tietoa tietyn sivun toiselle sivulle, GET ja POST olisi olla tapa tehdä se. Muita kysymyksiä Harjoitus? OK. Mennään läpi, sitten erityinen osa ongelmaa asetettu. Olet menossa tarvitse, jossain vaiheessa, näyttää jonkun salkun näytön. Mitä tarkoitan kun sanon portfolio, yhteydessä tämän ongelman asettaa? Yleisö: Se on kuin varastot, että ne on miten paljon osakkeita ne omistavat, hinta, ja kuinka paljon rahaa he ovat lähteneet. JASON HIRSCHHORN: Kuulostaa hienolta. Joten haluan näyttää kaikki varastot he omistavat kunkin kannan yhtiön Osakkeiden ja luultavasti kuinka paljon se arvoinen, ja sitten erillisenä muuttujana, kuinka paljon rahaa he omistavat. Joten sanoa haluan kuvata sitä. Aloitetaan puhuvat siitä, miten voisin edetä näin, mitä taulukot olen menossa on joutua voitava tehdä niin. Joo - Yleisö: No käyttäjiä, ja sitten, kai voit tehdä taulukkoon nimeltä Osakkeita tai jotain sellaista, joka olisi kuinka monta he ostivat. JASON HIRSCHHORN: OK. Joten aion tarvitsevat taulukkoon nimeltä Käyttäjää, joka pitää kirjaa käyttäjätunnuksen, oletettavasti, todennäköisesti joitakin tunnus, luultavasti yksilön salasanan. Mikä on jotain muuta, että olet sanoi juuri, joka liittyy? Joku lisäksi Michael, mikä on jotain muuta, joka liittyy kukin käyttäjä, ainutlaatuinen heille? Yleisö: tunnus. JASON HIRSCHHORN: ID - mikä on eräs asia, että olemme luultavasti menossa haluavat näyttää tällä sivulla? Yleisö: Heidän nimensä. JASON HIRSCHHORN: Heidän nimensä - mitä toinen asia liittyy tähän Erityinen ongelma asettaa? Yleisö: Mitä varastot he omistavat - JASON HIRSCHHORN: On tulossa olla paljon mitä varastoja he omistavat. Mikä yksi tietty arvo kuitenkin, että he ovat menossa niihin liittyviä? Miten he aikovat ostaa ja myydä varastoja? Yleisö: Cash. JASON HIRSCHHORN: He menossa on käteistä. Joten jokainen käyttäjä joutuu yksi arvo käteisellä. Ja se tulee olemaan ainutlaatuinen jokaiselle käyttäjälle. Joten käyttäjän taulukko, se tekee syytä laittaa käteisellä. Voisit tietysti luoda toisen taulukon, jossa on käyttäjätunnukset ja niiden arvo rahana. Mutta se ei ole mitään järkeä. On järkevää vain laittaa kaikki tämä yhdessä taulukossa. Joten aiomme olla taulukon tämän tiedon. Ja sitten, mitä muut taulukon aiomme olla? Sanoit, Varastot pöytä. Mitä me ottamassa Varastot pöytä? Kuka tahansa, ideoita - Yleisö: yritys. JASON HIRSCHHORN: Menemme laittaa nimissä yritys, joten HEX Apple. Joo. Yleisö: Kuinka monta osaketta ja kuinka paljon he arvoinen. JASON HIRSCHHORN: Kuinka monta osaketta, kuinka paljon he arvoinen - mikä on jotain muuta me tarvitsevat kyseisessä taulukossa? Yleisö: käyttäjätunnus indeksoida sen. JASON HIRSCHHORN: Käyttäjätunnus. Joten siinä taulukossa, näytämme todennäköisesti - sanotaanko, jos se on joku joka omistaa kolme varastot, kolme riviä, joista jokaisella on että käyttäjätunnus tai että yksilön käyttäjä ID, mutta eri yrityksen nimi, eri osakkeiden lukumäärä oletettavasti ja eri hinta-arvo kullekin näiden varantojen. Jälleen mitä sanon nyt ei ole välttämättä täytäntöönpanoa, koska tajuat olemassa joitakin enemmän tehokkaita tapoja toteuttaa se. Mutta tämä on hyvä paikka aloittaa. OK. Joten ne ovat kaksi taulukkoa meillä on. Nyt haluamme näyttää tältä sivulta. Mikä on ensimmäinen tyyppi kysely meidän täytyy tehdä. Jokaisella sivulla, oletetaan, että on käyttäjä on kirjautunut sisään, meillä on heidän käyttäjätunnus. Joten mikä on ensimmäinen tyyppi kyselyn meidän täytyy tehdä? Joo. Yleisö: Heidän käyttäjätunnus. JASON HIRSCHHORN: Meillä on heidän käyttäjätunnus, kun olemme alkaneet koodin alussa sivuillemme. Joten mikä on ensimmäinen tyyppi kyselyn me täytyy tehdä, koska käyttäjän tunnus? Menimme yli neljä. On vain neljä vastausvaihtoehtoa. Yleisö: Se on valita ennätys. JASON HIRSCHHORN: Select - haluamme valita käyttäjän pöydän päästä, sanotaanko, niiden määrä rahaa. Ja voimme tulostaa määrän käteistä on näytön yläreunassa. OK. Mikä on seuraava tyyppi kysely haluamme tehdä? Meillä on joitakin muita asioita Meidän täytyy näyttää. Ne, tallennetaan toisessa taulukossa. Joten miten aiomme saada sen? Yleisö: Voit valita heille. JASON HIRSCHHORN: Select - jälleen on vain neljä vaihtoehtoa. Valitse luultavasti kuulostaa kuten oikea. Joten meidän täytyy tehdä uuden hakukysely, käyttäen jälleen, että käyttäjän tunnus. Ja nyt haluamme palauttaa ei vain yhtä rivi, bu kaikki rivit, jotka vastaavat meidän kriteerit, jossa käyttäjätunnus on 1. Ja sitten voimme mennä ja anna silmukka vain tulostaa kaikki ruudulla, ehkä tulostaa yrityksen kukin näistä ruudulla. Hienoa, että kuulostaa se näyttämällä portfolio, ei paljon muuta monimutkaisempaa. OK, käyttäjä niin päättää, että ne on paljon rahaa jäljellä. Ja he haluavat ostaa lisää osakkeita varastossa. Sanotaan, he jo omistavat Tämän yhtiön osakekannasta liikaa. Joten he menevät Osta Sivu. He tulo yhtiön nimi. Mikä on kyselyn jälkeen tulo Yhtiön nimi, että sinun täytyy suorittaa seuraavaksi? Joo. Yleisö: Update. JASON HIRSCHHORN: Update - ja mitä Taulukossa ei haluat päivittää? Yleisö: Heidän perustuva pöytä niiden ID-numero? JASON HIRSCHHORN: So päivittää ei käyttäjän pöytä - joten päivittää Osakkeet pöytä, jossa käyttäjätunnus ei vain vastaa, vaan Varastossa nimi vastaa myös. Saat jotain arvoa. Ja sitten, sinun kannattaa ottaa sen arvo ja lisää kuitenkin monia kantoja he haluavat ostaa sitä. Joten et halua sokeasti korvaa tämän arvon. Mutta voit itse asiassa ottaa sen alkuperäisen Arvostamme ja vain päivittää sitä. Voit tehdä kuten plus vastaa, eikä vain tasavertaisina. Mikä on jotain, vaikka - jos olemme ajatellut tätä ja haluamme olla mahdollisimman hyvässä kunnossa - meidän pitäisi tehdä ennen kuin ajelu että päivityskysely? He haluavat ostaa viiden vuoden Apple. Kukin osake Apple on 200 dollaria. Yleisö: Meidän pitäisi tarkistaa rahat ensin. JASON HIRSCHHORN: Meidän pitäisi tarkista rahat ensin. Meidän pitäisi varmistaa, että ne on tarpeeksi rahaa. Millaisia ​​kyselyn voimme toteuttaa sen varmista, että heillä on tarpeeksi rahaa? Yleisö: Toinen Select. JASON HIRSCHHORN: Select - valitsemme perustuu niiden käyttäjätunnus, saada niiden arvo rahaa. Tehdä nopeita matematiikka. Ja jos se kestää sen kokeen, heillä on tarpeeksi rahaa. Sitten voimme ajaa meidän päivityksen. Tai ehkä, jos ei, ohitamme sitten. Annamme heille varoituksen. OK. Sanovat heillä ei ole yritys. He ostavat uuden yhtiön. He ostavat Microsoft. Millaisia ​​kyselyt haluamme tehdä, jos he haluavat ostaa Microsoft? Ja he eivät omista Microsoft. Ei Manu, joku muu, kuka tahansa lisäksi Marcus? Carlos - Yleisö: Valitse, varmista heillä on tarpeeksi rahaa. JASON HIRSCHHORN: Kuulostaa hyvältä. Yleisö: Ja sitten lisäät on [kuultavissa]. JASON HIRSCHHORN: Aivan, olemme menossa haluavat lisätä osaksi Varastot pöytä. Ja aiomme haluat lisätä. Voimme lisätä heidän käyttäjätunnus, nimi yrityksen, ja kuinka paljon osakkeita he haluavat ostaa. Mitä muita toimintoja, jotka ovat sivuja tai toimintoja olet täytyy toteuttaa P-sarja 7, että meidän pitäisi mennä yli? Yleisö: Oikeastaan ​​olen sellainen on kysymys tästä yksi. Ennen näytät salkun, olisi voit tarkistaa Yahoon verkkosivuilla Varmista osakekurssit eivät ole muuttuneet? JASON HIRSCHHORN: Tuo kuulostaa hyvältä idealta. Joten mitä Marcus sanoo on, OK, varastossa hinnat muuttuvat jatkuvasti. Jalkapuuhun, että ne omistavat pöytä, meidän taulukkoon nimeltä Varastot, voisimme säästää hinta osakekannan he ostanut sitä. Mutta se ei tunnu, että vankka, koska hinta varastossa on jatkuvasti tulee muuttumaan. Joten itse asiassa, et todennäköisesti tarvitse säästää hinta varastossa. Mutta joka kerta kun näyttö niiden portfolio, päivität tai päivittää hinta varastossa. Ja jos sinulla on - ja sinulla on jo. Tiedän, että olet kaikki katsoin ongelma asettaa takaisin jo. Olette ymmärtäneet, että olemme kirjoitettu koodia sinulle, jonka avulla voit saada hinta varastossa, annetaan yhtiön nimi. Joten kyllä, että luultavasti kuulostaa hieman vankempi. Mutta pöytä ei välttämättä tarvitse säästää hinta varastossa. OK. Mitä muita toimintoja sinua täytyy toteuttaa tällä viikolla, että voimme puhua? En halua puhua niistä. Mitä haluat puhua? Se on luultavasti tässä spec. Haluaisin vain selaa pohjaan spec ja kysy ensimmäinen sana näet, että ei ole järkeä. Yksi muita toimintoja - Puhutaanpa yksi. Aloitamme siellä. Yleisö: Tallennus historiat. JASON HIRSCHHORN: Recording historia, suuri. Joten olet menossa tarvitse seurata of transaktiohistoriaa. Joten haluat seurata jokaisen kun he ostavat tai myyvät varastossa. Ostin varastossa. Olemme juuri sanoi, se luultavasti järkevää sisällyttää Valitse, saada määrä rahaa ja tarkista takaisin. Se todennäköisesti on fiksu sitten sisällyttää lisätä tai päivittää, riippuen ovatko he omistavat että varastossa. Jos haluamme myös seurata historia, miten voimme tehdä sen? Tarkoittaako tämä mennä Varastot pöytä? Yleisö: Ei. JASON HIRSCHHORN: Ei se luultavasti menee eri taulukossa. Koska sanoa ostat 10 osaketta Apple. Sitten voit ostaa toisen 10 osaketta. Haluat hinaamaan erillinen kirjanpito. Nuo ovat kaksi erillistä liiketointa. Joten meillä on toinen pöytä, Historia pöytä. Joten jälleen, me ostamme. Toteutamme Valitse sitten Lisää tai Update. Mitä teemme seuraavaksi? Mikä on seuraava kysely Toteutamme kun ostamme jotain? Haluamme seurata historiaa. Joo. Yleisö: Haluat seurata Epäonnistuneet liikaa. JASON HIRSCHHORN: No, ennen kuin kertomaan, millaista liiketoimen mitä haluamme - Minkälaista kyselyn, Carlos, olisi avulla voimme seurata asioita yleensä? Sinulla on neljä arvauksia. Kumpi luulet? Yleisö: päivittäminen. JASON HIRSCHHORN: Ei päivitykset. Mikä on toinen arvaus? Yleisö: valitseminen. JASON HIRSCHHORN: Jos haluat säilyttää kirjaa jotain, haluat todennäköisesti kirjoittaa ne muistiin tai tallentaa sen myöhempää. Joten jos ei päivitä, niin - Yleisö: Aseta se. JASON HIRSCHHORN: Insert, sinne siis. Kyllä, joten voit valita, kuinka paljon käteistä niillä on, kuulostaa hyvältä. Heillä ei ole tarpeeksi rahaa. Tätä toimea ei tule toimimaan. Ei, sinun ei tarvitse seurata toimenpiteeseen, jos se ei toimi. Tai voit, jos haluat antaa heille vaikea. Mutta sinun ei tarvitse. Sitten lisäät tai päivittää Niiden varastojen taulukossa. Ja nyt sinulla on muita pöytä. Sinulla on historiaa pöydän tai mitä haluat soittaa sitä. Ja tässä taulukossa, olet menossa lisätä uuden rivin. Se on luultavasti menossa on käyttäjän tunnus. Se on luultavasti täytyy nimen varastossa. Se on luultavasti täytyy aika, että he tekivät sen. Ja tässä tapauksessa, et ll luultavasti haluat lisätä hintaa. Koska sillä historiaa, et välitä, mitä nykyinen hinta on. Välität mikä hinta on, kun he ostaa tai myydä jotain. Joten se kuulostaa, toteuttaa osto täysimääräisesti mukana useita eri SQL-kyselyjä, mutta rehellisesti, ei että paljon koodia yleistä. OK. Ja joka huolehtii historiaa. Sanotaan, haluamme näyttää historiamme. Puhuimme näyttämällä tuotevalikoimamme. Kuinka voisimme näyttää historiamme? Yleisö: Oletettavasti kronologisesti. JASON HIRSCHHORN: Oletettavasti kronologisesti - mitä kyselyn luulet olisimme käyttää? Yleisö: valitse. JASON HIRSCHHORN: select - valitse ehkä kaikki rivit että pöytä jotka vastaavat käyttäjätunnus ja sitten näyttää ne kronologisesti, kuulostaa hyvältä. Tarvitsemmeko kirjoittaa koodia lajitella tähän luetteloon? Yleisö: Ei, koska olet kertonut meille on nouseva ja laskeva asia. JASON HIRSCHHORN: Thing? Yleisö: Joo. JASON HIRSCHHORN: Joo. OK, älä käänny koodin minulle, että manuaalisesti lajittelee kautta kyselyjä lajitella ne. Että koodi on jo antanut. Voit kirjoittaa Valitse kysely joka lajittelee asioita. Lajitella ne etukäteen ja sitten tulostaa ne. Se tekee niin paljon järkevämpää tehdä sen niin, kuin toisinpäin. Kyllä. Yleisö: Tarvitsemmeko lajitella ne etukäteen? Tarkoittaako se, että olet tavallaan ne tietokantaan? JASON HIRSCHHORN: Select kysely palauttaa ne sinulle lajiteltua. Niin että, eikä vain ne palata teille satunnaisessa järjestyksessä ja sitten lajitella ne itse. Joo. Yleisö: Onko tapa pitää se lajitellaan tietokantaa, jotta sinun ei tarvitse lajitella sen joka kerta kun - Yleisö: Voitteko aseta se lajiteltua? JASON HIRSCHHORN: Kysymys - se asia, että asiat ovat lajiteltu tietokantaan? Yleisö: Ei. JASON HIRSCHHORN: No, ne lajitellaan. He aikajärjestyksessä. Mutta oletetaan, että asiat on lajiteltu kronologisesti, ylhäältä alas. Meillä on Google muodossa. Kun joku vastaa meidän Google muodostaa, se vain saa laittaa alaosassa pöydän. Onko sillä merkitystä, että asiat ovat lajiteltu ei kronologisesti? Yleisö: Jos se ei ole kronologinen, et tarvitse lajitella sitä joka kerta otat info ulos. Mutta jos se on jo järjestetty, voi sinua ei tarvitse tehdä, että ylimääräisiä funktiokutsua? JASON HIRSCHHORN: Niin, että todella hyvä pointti. Meille ohjelmoijat, se voi väliä. Ja saatamme haluta löytää tietokantaan joka ei lajitella asioita kronologisesti. Tai perustaa meidän tietokantaan, joten se pitää asiat järjestetty käyttäjätunnuksella. Joten tällä tavalla, meillä on myös 1000 käyttäjätunnuksia. Tai Facebook, meillä on miljoonia käyttäjätunnuksia. Emme halua meidän pöytä vain olla satunnaisia ​​tai tietokantaan olevan satunnaisia. Olisi mukavaa, jos kaikki käyttäjätunnukset lajiteltiin. Niin sitten voisimme ajaa binary hakuja meidän pöytään ja sitten vain löytää erityisiä murikka. Joten kyllä, riippuen - jos me skaalata ylöspäin, saatamme haluta löytää tietokantaan joka piti asiat lajitellaan eri tavalla, niin että nämä kyselyt veisi vähemmän aikaa. Ja meillä ei ollut käydä läpi koko tietokanta jokaisessa rivillä annettu taulukossa. Mutta taso olemme töissä, me ei tarvitse murehtia pitää asioita lajiteltu. Voimme olettaa, että aika kuluu että kysely juosta tulee olemaan vähäinen, kun otetaan huomioon, mitä olemme tekemisissä. Mutta kyllä, hyvä idea - kuten me skaalata, se saattaisi olla järkevää suunnitella meidän tietokantaan hieman eri tavalla. Viimeinen tietokannan suunnittelu asia, jonka haluan mainita myös, koska tulet on luokiteltava, tai teki pikemminkin puolesta suunnittelu tietokantaan. Olemme puhuneet tästä. Cash on ainutlaatuinen jokaiselle käyttäjälle. Joten sinulla taulukkoon nimeltä rahaa, että on niiden käyttäjätunnusta ja niiden määrä käteistä ja sitten taulukkoon nimeltä käyttäjille, joilla on niiden käyttäjä ID ja käyttäjätunnuksensa. Näistä taulukoista kartta päällekkäin muut one-to-one. Se luultavasti järkevää heitä olemaan yksi pöytä. Joten Olettakaamme käyttäjä taulukko, joka pitää kirjaa käyttäjätunnuksia ja käteistä. Sinulla on nyt taulukko, joka on varastot yksilö omistaa. Ja henkilö voisi omistaa useammasta kuin yhdestä kannasta. Joten nämä eivät kuvautuvat toisiaan one-to-one. Se ei ole järkevää olla yksi jättiläinen taulukon, jossa on 30 kirjaa, jotka kaikki toista käyttäjätunnuksen, että kaikki Toistan salasanan, että kaikki Toistan määrä käteistä. Mutta kummallakin on ehkä erilainen varastossa nimi tai eri osakekurssi. Se ei ole järkevää olla että monet suuret kirjaa. Ole fiksu, kun luot näitä tietokantoihin, niin että et tee jotain typerä sellaista, toistaen paljon tarpeettomia tietoja. OK. Meillä on kaksi minuuttia jäljellä. Ulkopuoliset henkilöt ovat innoissaan liittyä meille tai luultavasti, oletettavasti, aloittaa oman luokan. Onko kellään mitään kysyttävää ennen kuin loppuun asti? OK, tämä oli todellakin tornado läpi kaiken. Pyydän anteeksi, että sen täytyi olla niin nopea ja että voisimme olla niin käytännön tällä viikolla olisin halunnut olleen. Mutta jos sinulla on kysyttävää mitään menimme yli tai mitään Tämän ongelman set - Olettaen olet lukenut sen ja laittaa in vilpittömässä mielessä vaivaa - rohkeasti sähköpostia minulle tai minuun yhteyttä. Olen enemmän kuin mielellään työn kautta koodi mukaasi tai vastata kaikkiin kysymyksiin sinulla on. Pidä mielessä, että tällä viikolla, paljon ajasta on opetteluun uusia rakenteita ja yrittää ymmärtää miten kirjoittaa SQL-kyselyjä tai PHP toimintoja tai käsitellä MVC puitteissa. Paljon aikaa tällä viikolla luultavasti ei yrittää selvittää hullu logiikka, että olemme pyytää sinua tekemään. Paljon se me vain meni yli on suhteellisen yksinkertaista. Niin se ei tarkoita, odota kunnes viime hetkellä. Mutta se ei tarkoita säätää miten teet työn vuoksi, varmista, olet ymmärrystä ja oppimisen syntaksin. Joten et ole, yhtäkkiä, tietäen mitä haluat tehdä, mutta ei ole aavistustakaan, miten täsmälleen kirjoittaa sitä. OK, Nähdään ensi viikolla.