[Zenelejátszási] David J. MALAN: Hello. Vessünk egy sétát Probléma Set 8 Mashup, ami lesz, hogy kihívást jelent, hogy merítsen elemeket Google Maps elemeiből Google News és a cefre őket egy web kisalkalmazás, lehetővé teszi a felhasználó számára, hogy keresni egy térképet hírek helyi az adott városok, városok, valamint irányítószámok. Ehhez fogunk integráltan HTML, CSS, PHP, SQL, JavaScript és a technika néven ismert AJAX érdekében hogy létrehozza ezt a magával ragadó felhasználói élményt. Nézzük először a Google Maps magát. Ez, persze, talán a megszokott felületen. De kiderül, hogy a Google Maps továbbá egy API-- alkalmazás programozási interface--, amelyen keresztül akkor veheti elemei Google Maps és integrálják őket saját alkalmazásokat. Valóban, ez alatt folyamat, fogsz találni egy pár URL Különösen hasznos, hogy említi a specifikáció Probléma Set 8, konkrétan ez az első lépések Útmutató vagy a fejlesztői kézikönyv A Google Maps API Version 3, valamint a Google Maps API JavaScript V3 referencia, amely egy kicsit misztikus olvasni de valójában az összes, a alsó szint részletek arról, hogy mit funkciók vagy módszerek és objektumok és tulajdonságok és események valóban jön a API, nagyon hasonló szellemben a [hallhatatlan] oldalakat. Most, ha vetünk egy pillantást A Google News, akkor Talán egy ismerős kezelőfelület itt. De kiderül, akkor kereshet Google News konkrét földrajzi egy HTTP nevű paramétert geo. Sőt, ha Kinagyíthatom itt, látni fogja, hogy Itt vagyok news.google.com/news/section?geo=02138. És valóban, ha zoom ki, látni fogod, hogy én vagyok néztem egy oldalt egy csomó nézetek Cambridge, Massachusetts. Közben, ha én valóban változtatni a URL, hogy nem egy irányítószámot, mint ez, de egy kicsit Messier mint a Cambridge, Massachusetts +, ahol a plusz ahogy kódolni szóköz egy URL, és nyomja meg az Enter, látni fogod, hogy én tulajdonképpen lásd szinte ugyanazokat a híreket. Talán ez egy kicsit más mert Cambridge ténylegesen többszörös irányítószámok. Most hogyan tudom ezt, és, sőt, hogyan tudnám valahogy nyakkendő városok a postai irányítószámok esetén I szeretnénk, hogy a felhasználó felnézni sem? Nos, kiderült, hogy van Egy honlap odakint úgynevezett geonames.org amely kezdeményezés, hogy a szabadon hozzáférhető adatbázis az összes fajta térinformatikai, nem csak az amerikai, hanem a más országok számára is. Sőt, ha elmegyek erre URL itt, ami is említi a problémát beállítva specifikáció, látni fogod, hogy a három felsorolása egy csomó zip fájlok amelyek bármelyike ​​lehet letölteni az Ön számára. Tény, hogy ez a probléma beállítva fogsz letölteni us.zip. Most ebben a fájlban, egy egész csomó szöveg formátumú adatokat. A fájlok nagyon hasonlít egy CSV-- vesszővel elválasztott értékek file-- de valójában használ tabs elhatárolására területeken. Most, eközben ha megnézi itt a mi amit kiemelt, A mező ebben a fájlban mennek hogy a dolgok, mint az ország kódját, irányítószámok, helynevek, és majd, valamilyen formában vagy más, az államok és a megyék, közösségek, és így tovább. Sőt, én már le ezt a fájlt előre. Hadd menjen előre, és nyissa meg here-- us.text--, sőt, azt is megtudhatod hátha lépjünk le a sorban 16.792 látni fogod, néhány rekordot Cambridge, Massachusetts és annak különböző irányítószámok. Amit még látni ott van a megyében, néhány szám, hogy én nem igazán megérteni, hanem minden az út jobb oldalán, Egyes GPS coordinates-- szélességi és hosszúsági. Ez azért jó, mert az egyik a funkciók a Google Maps API az a képesség, hogy érzékelni hol van földrajzilag tekintve GPS koordinátákat. Most kezdenek rájönni, hogyan kell kezdeni árukapcsolás ezeket a dolgokat együtt. Már adott egy egész csomó elosztói szabályzat, valamint a MySQL adatbázis. Sőt, ha kihúzom a phpMyAdmin, amelynek már importálta, ahogy hamarosan lesz, pset8.SQL, akkor megjelenik egy MySQL tábla így néz ki egy ID mező, ország kódot, irányítószám, hely nevét és így tovább. A típusai az összes ilyen oszlopok adtam egyszerűen elolvassa a readme.text fájlt, hogy itt megadott hogy egy mező egy egész szám, vagy VARCHAR vagy a hasonlók. Így hoztuk létre, hogy asztalt Ön és megadtam a SQL parancsok hogy végre létre, hogy a táblázat A saját adatbázis, de van valójában nincsenek adatok, hogy még. Inkább fogsz kell letöltés us.zip vagy bármely ország zip fájlt az adott URL-t is. És akkor fogsz kell írni egy parancssori script PHP ez fog nyitni egy szöveges fájlt, végighaladni a vonalak, majd az egyes Ezen a vonalon csinálni egy betét ebbe helyezi táblázat a MySQL adatbázis. Így a végén ezt a folyamatot, akkor futott, hogy script végső soron csak egyszer elméletben. A valóságban akkor talán, futtatni egy csomó idő miközben megpróbálja kijavítani számos hiba. Végső soron fogsz egy igazán nagy adatbázis több ezer és több ezer földrajzi sorok. Akkor fogsz tenni, hogy a behozatali script félre, ha ez működik és az adatbázis a szép és helyes, majd fogsz lépni a ténylegesen végrehajtása mashup magát. A mashup fog nézni egy kicsit valami ilyesmi. A mashup.cs50.net, mi Van a személyzet megoldás hogy néz ki egy kicsit valami ilyesmi. Valóban, ha rákattintok ezt az újságot ikon Cambridge, Massachusetts, akkor megjelenik egy pörgő icon rövid ideig, majd listajelet, a felsorolás cikkek kapcsolatos Cambridge, Massachusetts. Ha rákattintok Charlestown, Massachusetts, Meglátom azonos annak a városnak. És ha rákattintok Watertown, Massachusetts, lehet, hogy nem lehet bármilyen Hírek a Watertown, így látni fogod, valamit mint a lassú hírek nap. Most, eközben a bal felső sarokban van néhány ismerős Google Maps ellenőrzések hogy hadd kicsinyíteni, pan fel, le, balra és jobbra, hanem a keresőmezőbe, hogy mi tettünk oda. Szóval, ha keresni, őszintén szólva, Az egyetlen másik irányítószámot tudom, 90210, akkor valóban látni Beverly Hills, Kalifornia. Amikor kattintott elvezet California, és egy csomó A hírek Beverly Hills. Most észre is, ami ott történt. Ha én most keresése 02138 vagy akár Cambridge vesszővel Massachusetts, vagy valamilyen variánsát, kapsz egy kis autocomplete legördülő. Most ez egy olyan plugint A könyvtár nevű jQuery, és hogy a plugin hívják előregépelés. Egyszerűen olvassa el A dokumentáció, Letöltöttem a Js fájlt integrált az elosztó kódot úgy, hogy végső soron lehet írni a kódot, hogy kitölti ezt a legördülő menüből a auto kiválasztások, vagy az automatikus javaslatok. Most az elosztó kódot, de, hogy kaptál nem csinál majdnem annyi. Ön kap a Google Map beágyazott, és kapsz az ellenőrzések a bal felső, és megkapod a keresőmezőbe. De ha be valami ilyesmit 02138, nincs helyeken találhatók még. Szóval ez lesz Az egyik célunk itt. Sőt, ha egy lépést vissza, és nézd meg a térképet magát, nincs hír nélkül. Még ha rákattintok és drag, nem markerek ténylegesen jelennek meg a hírek, mert ez kihívás marad az Ön számára is. Vessünk egy pillantást, majd A forgalmazás kódot. Miután letöltötte pset8.zip és kicsomagolva meg be a vhostod könyvtár A CS50 Appliance, látni fogja ezeket a könyvtárak itt benn. Bin-- amely általában jelentése bináris végrehajtható programs-- magában foglalja, mint a pset7, néhány PHP fájlok más fájl, majd az állami, amely Az igénylő fájlokhoz a nyilvánosan hozzáférhető hogy a felhasználó a böngészőben. Vessünk egy pillantást a bin könyvtárba, és mi látni, hogy van egy fájl ott már felhívta Import. Ha kinyitjuk ezt gedit, majd meglátjuk hogy sajnos nem sok ott. Minden, ami ott van, mégis, egy kocsma tetején amely tartalmazza, interpreter-- ebben az esetben PHP-- kell használni, hogy a ténylegesen végre ezt a fájlt. De aztán, amikor azt mondja TODO, ahol te Szükségem lesz írni egy kis kódot hogy valószínűleg igényel a config fájlt, ami tartalmazza a könyvtárban mint amit eddig csináltunk a PHP fájlokat. És akkor fogsz kell valahogy nyitni us.text amit feltehetően még kicsomagolva már. Akkor most kell majd végighaladni a vonalak, a fájlba, esetleg az egyes funkciók javasolta a specifikációban. Ezután helyezzen minden egyes ilyen sorokat MySQL adatbázis használja a lekérdezés funkciót, amely mi már megint feltéve, ha with-- vagy legalábbis egy változata ezek functions.php, amely majd meglátjuk csak egy pillanatra. Most zárja import és menj vissza A könyvtárba és ezúttal bemegy tartalmazza. És ha én ls van, látni fogod Három fájl nagyon tetszett Probléma Set 7. És vessünk egy gyors pillantást, például a config.php. Ott, a kevesebb sor mint korábban, és azt Úgy tűnik, ez a fájl tartalmazza constants.php és functions.php. Mi egy kicsit más technika ezúttal, hogy ténylegesen adja meg azt, hogy ezek a relatív Az aktuális könyvtárban __ DIR__ képviseli a könyvtárban ezen fájlt, config.php, maga az. Tehát ez egy több explicit módon megadja milyen egyéb fájlokat szeretne megkövetelni. Nos, ha én az ügy lezárása és nyit constants.php helyett, akkor megjelenik egy fájl nagyon emlékeztet a Probléma Set 7-ét is, bár egy másik adatbázis nevű pset8. Végül functions.php, majd meglátjuk, egyetlen feladat Ebben az időben az úgynevezett lekérdezés. Ez majdnem ugyanaz, kivéve kezeljük hibák ezúttal egy kicsit másképp, de a használata, ugyanaz, mint az a probléma beállított hét. Most menjünk vissza a mi pset8 könyvtár, menj be a nyilvánosságot, és ott ha megteszem ls, látni fogod this-- articles.php, index.html, search.php, és update.php-- összes fájlt. És akkor a css betűtípusok, img, és js könyvtárban egészen olyan, mint pset7. Vessünk egy pillantást index.html, ami lesz igazán a belépési pont a smashup. Most index.html, akkor megjelenik egy egész csomó linket elemeket a fejét, Pontosabban, a bootstrap a saját CSS majd egy csomó script címkék a dolgok, mint a térképek, API Maga egy speciális marker címkével segédprogram, hogy mi szerepel a specifikáció áll az Ön rendelkezésére, jQuery magát, bootstrap Maga, és egy másik könyvtárba nevű aláhúzás, amely beszélünk a spec. Underscore.js mint jquery.js egy JavaScript könyvtár hogy van egy csomó funkciók hogy egy csomó ember a világon kívánság létezett JavaScript magát. Tehát ezek mindegyike valójában nagyon népszerű. Már azt is említette előregépelés amely a könyvtár, hogy a nem, hogy autocomplete legördülő és Végül egy linket a saját JavaScript. Eközben, és talán Szerencsére ez a mashup hajtja viszonylag kevés HTML le itt alul. Figyeljük meg, hogy megadta a div testünk osztály-tartály folyadékkal. Ez, egy bootstrap által dokumentációt, csak azt jelenti, hogy ez a div fog kitölteni a nézetablakból vagy a böngésző ablakot teljesen. Közben az alábbiakban, hogy van egy div hogy a nyitást, és azonnal becsukta A egyedi azonosítója térképen vásznon. Ez most a Google Térképek dokumentáció az API-jához, ahol azt egyszerűen el kell van egy üres div, amelybe az injekciót, Végső soron a tényleges Google Maps. De erről csak egy kicsit. Végül ott van a formáját belsejében van, amely végrehajtja a szövegmezőbe fel a bal felső sarokban a mi interfész keres. Megjegyezzük, hogy mi is használtam Egy kis bootstrap Itt too-- dolgok, mint form-inline és a forma-csoport. Már adott a volt egyedi azonosítója formában. És akkor, végül, én valójában bemeneti típus, ami elég ismerős, akinek azonosító q. Csak egy egyezmény. Q query-- volna nevezték semmit. Majd a helytartó, Eközben a város, az állam, és irányítószám, amiről talán felidézni látván a mi mashup demo korábban. Zárjuk ezt a fájlt. Most vessünk egy pillantást a PHP fájlok várja majd a JavaScript fájlokat. A mi PHP fájlt, most már már végrehajtott az Ön számára, például, frissítések. Update.php-- nem fogunk költeni egy hatalmas mennyiségű időt here-- dióhéjban az a fájl, a JavaScript kódot fog kapcsolatba keresztül AJAX, hogy aszinkron technikával ez épített JavaScript ezekben a napokban, hogy ez majd lehetővé teszi számunkra, hogy kérje update.php További információkért. Különösen, bármikor A felhasználó elhúzza a térképen vagy keresést hajt végre, hogy ugrik a felhasználó egy másik helyre, A JavaScript kódot, ahogy hamarosan látni, Felhívom update.php és kérjen 10, vagy úgy markerek a nézetablakban alapján A GPS koordinátákat A felső és alsó sarkaiban azt a térképet. Tudjuk majd benépesítik a térképet, most, hogy A felhasználó költözött a képernyőn annak érdekében, hogy 10 Valószínűleg új markerek különböző városokban. Közben ez a fájl végső soron lesz végre egy SQL lekérdezést ellen adatbázisunkban című táblázat helyeken megy visszafordítására 10 vagy kevesebb helyen. Eközben a articles.php, egy másik fájl is írtam teljes egészében. Nagyon hasonló szellemiségben Probléma Set 7-es LOOKUP funkciót, amely kapcsolatot Yahoo Finance az Ön számára. Ez a fájl Kapcsolatok Google News Önnek, végül megragadta a géppel olvasható version-- valamiben RSS-nek nevezett format-- a hírek A Cambridge vagy Beverly Hills vagy bármi város, amit kerestünk az alapján, hogy a geoparameter. Mi feldolgozni, hogy RSS, amely csak egy típusú jelölőnyelv nevű XML, és akkor valóban juttassa vissza a böngészője és a JavaScript kódot, Pontosabban, olyan formában, úgynevezett JSON, JavaScript Object Notation. Most látni fogod a specification-- mi pont akkor meg, hogy valóban látni néhány JSON elkövetkező back-- hogy ezt a funkciót végül Lehetővé teszi feltöltheti azokat a felugró menükben, így hogy ha rákattint egy marker a térképen ténylegesen látod egy csomó a golyó, amelyek mindegyike linkeket egy cikket. Most vessünk egy pillantást az utolsó PHP fájlt, amely szerencsére nem sok lesz on-- Csak egy szép nagy TODO. Most ezt a fájlt kijelenti, nevű tömbben helyeken. És akkor végül nyomatok hogy tömb JSON format-- pretty-nyomtatás csak azért, hogy a dolgok könnyebb nyomon követni. Sajnos, a középen van ez TODO, amely felhívja a keresést a adatbázis helyeken illő a geo HTTP paramétert. És valóban, ez lesz a az egyik a challenges-- hogy ezt a feladatot megvalósítja itt úgy, hogy ha kapcsolatba a fájlt egy URL, mint a keresés. php? geo = valamit, A kód végül visszatérnek a JSON tömb összes hely a adatbázis tábla, hogy megfeleljen, hogy input. Tehát, ha a felhasználó beírja a Cambridge, a fájl itt search.php végső soron vissza a JSON tömb minden a mérkőzések Cambridge, amely esetleg Massachusetts de lehetne még sehol máshol. Végül vessünk egy pillantást a két fájlok statikus ultimately-- a CSS fájlt és a JavaScript fájl. Ha bemegyek a CSS könyvtár, van egy egész csomó kép van, de a legtöbbjük könyvtárak. Megyek, hogy egy pillantást, Pontosabban, a styles.css, ami a mi saját globális CSS ez fog stilizálhatja ez az egész mashup. Majd hagyjuk meg, hogy olvassa el A hozzászólás itt, de dióhéjban, ez az, a CSS, amely biztosítja, hogy a mi mashup, alapértelmezés szerint ki a dobozból, úgy néz ki, ahogy szeretnénk it-- A térkép kitöltésével a nézetet port és a keresési dobozoljak be a bal felső sarokban. Már azt is venni a bátorságot, stilizáló az előregépelés legördülő menüben egy kicsit is. A legfontosabb fájl talán ez a probléma beállítva Ez az utóbbi egy, scripts.js. Belsejében a JS könyvtár Még fájlokat. Mindegyik könyvtár fájljait kivéve ezt, scripts.js. Ha kinyitjuk ezt fel, vessünk mi utolsó túra a funkciókat, épülnek be ezt a fájlt Önnek és hívják fel a figyelmet A Todos az előttünk álló. A tetején ezt a fájlt, Három globális változók. Az egyik egy térképet, ami megy, egy hivatkozás a Google térképen. Akkor gondolj rá a fajta, mint a mutató. Közben van Egy másik globális változó info nevű, ami úgy tűnik, tárolása a visszatérési értéke hívás új google.maps.InfoWindow. JavaScript támogatja tárgyak nagyon hasonló szellemiségben Struts. És mi ebben a sorban céljainknak csinál teremt egy új info ablak memóriába, majd vezetése körül egy hivatkozást ahhoz a változó nevű Info. És azok között, Eközben az, amit úgy tűnik, hogy egy üres JavaScript nevű tömböt markerek. Minden ilyen újságot ikonok, vagy Lehet választani egy másik ikont összesen, lesznek tárolva végül ebben a tömbben így nagyon könnyen hozzá A térkép és távolítsa el őket a térképen. Most lépjünk le egy kicsit, és zseniális a kódot, hogy lesz hajtva, amint az a DOM vagy dokumentum objektum modell vagy a oldalon is készen áll. Emlékezzünk vissza, hogy ez a szintaktikai itt egyszerűen meghatározza hogy a következő kódot kell végrehajtani csak ha a böngésző befejezte betöltés minden mást. Először nyilvánítja csomó stílusok, amelynek a végén stilizáló A térkép, mint egy a spec. Ezután nyilvánítja csomó lehetőség, ami tovább finomítva az Google térképet, hogy mindjárt beágyazni. Ezután használja egy kicsit a jQuery kódot, ami azzal magyarázható, egy kicsit részletesebben a spec, hogy megragad ez az elem, map-vászon hogy így egyedileg azonosítani. És akkor ez a sor itt amit úgy tűnik, hogy varázslatosan nekünk a Google map belsejében saját alkalmazást, tárolására való hivatkozás hogy a változó nevű térképet. Végül itt lent regisztrálunk az úgynevezett a hallgatót. Gondolj back-- módon, így back-- a héten nulla CS50 Mikor megnéztük Scratch és hogy támogatja egy sétára keresztül a dolgokat az úgynevezett eseményeket és a közvetítéseket. Lehet, hogy nem használják magad, de ez olyan mechanizmus, amellyel a Ebben az esetben a böngésző kaphat a figyelmünket, amikor ez készen arra, hogy ténylegesen végre egy kis kódot. Ebben az esetben ez meg fog hallgatni A térkép egy esemény nevű tétlen. Ez azt jelenti, hogy a böngésző betöltése után a Google térképen. Ezen a ponton olyan függvény is A configure végső soron végre kell hajtani. Ezt a funkciót, konfigurálását, majd meglátjuk, írta minket. Most meg itt van egy funkció hogy sajnos, csak egy TODO add marker. Per a spec. fogsz szüksége írni a kódot, hogy ténylegesen hozzáteszi marker-- hogy úgy néz ki, mint egy újság, vagy a hüvelykujj tack, vagy valami else-- a Google térképen. Itt most az, hogy a funkció nevű configure. Majd hagyjuk meg olvasni ezen keresztül részletesebben, de rájönnek, hogy mi adjunk egy csomó több hallgatóhoz hogy el tudjuk végezni kódot, ha a felhasználó rákattint, és magával rántja a térképen. Mi is kódot, hogy itt inicializálja az előregépelés plugint úgy, hogy a legördülő menüben tényleg működik. De nézzük összpontosítani csak egy pár helyen itt. Pontosabban, ez itt csinálni. Majd elhalasztja az online dokumentáció és a specifikáció hogyan kell kitölteni ezt a TODO. De dióhéjban, ez a könyvtár előregépelés lehetővé teszi, hogy adja át A mi általánosan ismert, mint a sablon, amely néhány változó helykitöltők Nagyon hasonló szellemiségben printf által%. * s. De ebben az esetben, a template per a spec Itt adhatja meg milyen változók szeretne beadnia adatokból, hogy jött vissza valamit, mint a PHP fájlokat, amit írt hogy az általuk kibocsátott JSON kimenet. Most itt lent észre, hogy mi vagyunk hallgatta előregépelés választás amikor a felhasználó ténylegesen végez a keresést és kiválasztja érték. Így vagyunk valójában fogja meghallgatni az, hogy és végre valami kód eredményeként. Aztán továbbra is konfigurálható A mashup csak egy kicsit. És, végül, nevezzük Ez a funkció frissítést. Ez frissíti a markerek a képernyőn. Bővebben, hogy csak egy pillanatra. Közben van egy pár Kis funkciók itt. Amelyek közül az egyik hideInfo melyik egyszerűen bezárja a InfoWindow. Egy másik funkció van, amely végül nem lesz túl hosszú, távolítsa markerek. Ez lesz visszavonni, amit hogy a kiegészítő marker függvény. És akkor itt lent van kereső. És ez azért érdekes, mert mi beírtuk a JavaScript-kódot a beszélni fog search.php a szerver és kap vissza némi választ. Te, persze, még mindig meg kell valósítania search.php, de már végrehajtották a JavaScript kód, amely az fog kezelni ténylegesen végző megkeresi az adott mezőbe. Különösen értesítés Ez a funkció itt, keresés, nem hívja search.php egy metódust hogy JSON, amellyel már találkoztunk az előadás. És a szintaxis itt egy kicsit más a előadáson, hogy mi használ jQuery úgynevezett ígéret felület. Bővebben az, hogy a spec. Ez egyszerűen azt jelenti, a mi céljából, hogy már nincs Két különleges függvények kell hívni a dot jelölés Itt után azonnal hívja kap JSON. Az egyik az úgynevezett megtenni. Az egyik az úgynevezett nem. Akkor gondolom, ezeknek hiszen a sikeres handler és a hiba kezelő csak ha valami balul sül el. Most nézzük meg az utolsó Pár működik ez a fájl. Itt lent egy olyan funkció, nevű showInfo, amely azt mutatja, info az egyik érintett kis info ablak bukkan fel, amikor a felhasználó rákattint a marker. Itt lent is van hogy frissítési funkciót hogy mi végre az Ön számára. Ez határozza meg a határokat a térképen. Melyek a GPS koordinátáit északkeleti és délnyugati kanyar. Készítettünk néhány HDP paraméterek Itt aztán telt el végül az update.php, amit már is végre az Ön számára. Hogy végül visszakapja JSON A fájl nevű update.php majd eltávolítja markerek a képernyőn majd lépked át Az adatok visszajött a update.php, amely megint csak egy JSON tömb. És akkor végül hozzáteszi markere Minden ilyen helyeken, kezelési hiba vagy a hibák, amelyek könnyen megtörténhet. Most csak azért ad egy kis ízelítőt, hogyan Lehet menni a hibakeresés ezt a projektet, észre, hogy én már megnyílt előre ezen a lapon van erre URL, pset8 / articles.php? geo = 02138. Most ismét cikkek PHP mi végre az Ön számára így ez nem annyira mit fog használni debug, hanem a technika. Figyeljük meg, hogy én már keresett Cambridge irányítószámot itt, és kaptam vissza, sőt, a JSON tömb JSON tárgyak belsejében, amely Két keys-- linket és címet. Így ez a funkcionalitás működik már az Ön számára. De ez a technika a manuálisan megy egy URL, mint ez a valami, mint search.php? geo = cambridge vagy 02138 vagy amit a felhasználó beírt kell felbecsülhetetlen, mint te magad, próbáld kitalálni, hogy pontosan, hogy miért search.php működik vagy sem. Végső soron tehát, van Néhány Todos előtted. Fogsz első munkagépek hogy a behozatali script, hogy olvas us.text be az adatbázisba. Te aztán lesz szüksége végrehajtására search.php úgy, hogy pontosan úgy viselkedik, mint megadni. Te aztán szeretne majd összpontosítani scripts.js és végül végrehajtja a pár Todos, beleértve a configure és ezt a sablont, add markerek, távolítsa markerek, és Aztán a múlt, de nem utolsó sorban, az egyik személyes kapcsolatot. Miután a mashup munka egészen olyan, mint a miénk, a cél kéznél az Ön számára, hogy adjunk egy személyes érintse meg a mashup, hogy ez az esztétikai vagy funkcionális. Vegyük a mashup még oly enyhén a következő szintre. Amíg tolja magát túl Ön ismeri a spec magát és vedd fel az egyik technika Új, még ha ez csak valami Esztétikus, mint a változó elrendezés a térképet, hogy az Ön által használt, hatálya hogy mi várható elégedett lesz. Hogy aztán a Probléma Set 8 Mashup. Stay tuned több a specifikáció és sok sikert kezelje ennek, az utolsó CS50 probléma beállított valaha. [Zenelejátszási]