[సంగీతాన్ని] డేవిడ్ J. మలన్: హలో. యొక్క ద్వారా ఒక నడక పడుతుంది లెట్ సమస్య సెట్ 8 మాషప్ ఇది మీరు సవాలు అన్నారు Google Maps కోసం అంశాలు తీసుకోబడినది Google వార్తలు మరియు మాష్ నుండి అంశాలతో కలిసి ఒక వెబ్ ఆప్లెట్ వాటిని ఆ ఒక వినియోగదారు శోధించడానికి మిమ్మల్ని అనుమతిస్తుంది స్థానిక వార్తలు ఒక పటం నిర్దిష్ట పట్టణాలకు, నగరాలు మరియు జిప్ సంకేతాలు. ఇది చేయుటకు, మేము వెళుతున్నాం కొన్ని HTML ఇంటిగ్రేట్, CSS, PHP, SQL, JavaScript, మరియు ఒక టెక్నిక్ సాధారణంగా క్రమంలో AJAX వంటి తెలిసిన ఈ లీనమయ్యే సృష్టించడానికి వినియోగదారు అనుభవం. మొదటి Google Maps కూడా చెయ్యనివ్వండి. ఈ, కోర్సు యొక్క, బహుశా ఉంది ఒక తెలిసిన ఇంటర్ఫేస్. కానీ ఆ బయటకు వస్తాడు Google Maps కూడా ఒక API-- అప్లికేషన్ అందిస్తుంది ఇంటర్ఫేస్ ప్రోగ్రామింగ్ ఇది ద్వారా మీరు Google Maps అంశాలు పట్టవచ్చు మరియు వాటిని ఇంటిగ్రేట్ మీ స్వంత అప్లికేషన్లను. నిజానికి, అంతటా ఈ ప్రక్రియ, మీరు వెళుతున్న URL ల జంట కనుగొనేందుకు ముఖ్యంగా ఉపయోగపడిందా పేర్కొన్నారు సమస్య సెట్ 8 కోసం వివరణ, ప్రత్యేకంగా ఈ ప్రారంభ విధానం గైడ్ లేదా డెవలపర్ గైడ్ Google Maps API వెర్షన్ 3 అలాగే కోసం Google Maps జావాస్క్రిప్ట్ API వంటి ఒక ఇది v3 సూచన, చదవడానికి బిట్ మరింత మర్మమైన కానీ వాస్తవానికి తక్కువ స్థాయి అన్ని ఉంది ఏ విధులు లేదా పద్ధతులు గురించి వివరాలు మరియు వస్తువులు మరియు లక్షణాలు మరియు సంఘటనలు నిజానికి API తో వస్తాయి, ఆత్మ లో సమానమైన [వినబడని] పేజీలకు. ఇప్పుడు మేము పరిశీలించి ఉంటే Google వార్తలు వద్ద, మీరు చేస్తాము బహుశా ఇక్కడ తెలిసిన ఇంటర్ఫేస్ చూడండి. కానీ మీరు కూడా శోధించవచ్చు అవుతుంది నిర్దిష్ట భౌగోళిక కోసం Google వార్తలు జియో అని ఒక HTTP పారామితి ద్వారా. నిజానికి, నేను జూమ్ ఉంటే ఇక్కడ, మీరు చూస్తారు నేను ఉన్నాను news.google.com/news/section?geo=02138. మరియు, నిజానికి, నేను జూమ్ ఉంటే బయటకు, మీరు నేను ఉన్నాను అని చూస్తారు మొత్తం బంచ్ తో ఒక పేజీ చూడటం కేంబ్రిడ్జ్, మసాచుసెట్స్ గురించి అభిప్రాయాలు. ఇంతలో, నేను నిజానికి మార్చడానికి ఉంటే URL, ఈ వంటి ఒక జిప్ కోడ్ కాదని కానీ ఒక చిన్న messier ఏదో కేంబ్రిడ్జ్, + మసాచుసెట్స్ వంటి, ప్లస్ మార్గం ఇక్కడ మీరు ఒక ఎన్కోడ్ ఒక URL లో ఖాళీ పాత్ర ఎంటర్ నొక్కండి, మీరు నిజంగా ఆ నేను చూస్తారు దాదాపు అదే వార్తల చూడండి. బహుశా అది కొద్దిగా భిన్నమైనది కేంబ్రిడ్జ్ నిజంగా ఎందుకంటే బహుళ జిప్ సంకేతాలు ఉంది. ఇప్పుడు నేను తెలుసు మరియు ఉంటుంది, నిజానికి, ఎలా ఏదో నేను అనుకొనుట నగరాలు మరియు పట్టణాలు కట్టాలి కేసు నేను జిప్ సంకేతాలు యూజర్ మీకిష్టం గాని చూసేందుకు? సరే, అక్కడ అని అవుతుంది ఒక వెబ్సైట్ ముగిసింది అని geonames.org ఇది ఒక చొరవ కలిగి అన్ని స్వేచ్చగా అందుబాటులో డేటాబేస్ భౌగోళిక సమాచార రకాల మాత్రమే సంయుక్త, కానీ కూడా ఇతర దేశాల కోసం అలాగే ఉంది. నిజానికి, నేను ఇక్కడ ఈ URL కు వెళ్ళండి ఉంటే ఇది కూడా సెట్ సమస్య ప్రస్తావించబడింది స్పష్టీకరణ, మీరు మూడు చూస్తారు జిప్ ఫైళ్ళను మొత్తం బంచ్ ధన్యవాదాలు ఇది ఏ మీరు ద్వారా డౌన్లోడ్ చేయవచ్చు. నిజానికి, ఈ సమస్య సెట్ మీరు us.zip డౌన్లోడ్ చూడాలని. ఇప్పుడు ఈ ఫైలు లోపల, మొత్తం ఉంది టెక్స్ట్ ఫార్మాట్ డేటా యొక్క బంచ్. ఫైళ్ళతో చాలా పోలి ఉంటుంది CSV-- కామా విలువలు వేరు ఫైల్ కానీ అది నిజానికి ఉపయోగిస్తుంది టాబ్లు ఖాళీలను విభజన. ఇప్పుడు, మరోవైపు, మీరు చూడండి ఉంటే ఇక్కడ నేను హైలైట్ చేసిన ఏమి వద్ద, ఈ ఫైలులో ఖాళీలను వెళ్తున్నారు దేశం సంకేతాలు వంటి విషయాలు, తపాలా సంకేతాలు స్థలం పేర్లు, ఆపై, కొన్ని రూపంలో లేదా ఇతర రాష్ట్రాలు మరియు కౌంటీలు, కమ్యూనిటీలు మరియు మరిన్ని. నిజానికి, నేను ఇప్పటికే చేసిన ముందుగానే ఈ ఫైల్ డౌన్లోడ్. నాకు ముందుకు వెళ్లి ఇక్కడ అది తెరిచి నిజానికి, మీరు చేస్తాము, us.text-- మరియు నేను 16.792 రేఖకు క్రిందికి స్క్రోల్ ఉంటే చూడండి మీరు కేంబ్రిడ్జ్ కోసం కొన్ని రికార్డులు చూస్తారు మసాచుసెట్స్ మరియు దాని వివిధ జిప్ సంకేతాలు. మీరు కూడా అక్కడ చూడండి, కౌంటీ ఉంది నేను నిజంగా లేదు కొన్ని సంఖ్యలు కూడా అర్థం కాని కుడివైపు మార్గం, కొన్ని GPS కోఆర్డినేట్స్ అక్షాంశం మరియు రేఖాంశం. ఈ గొప్ప ఉంది ఒకటి ఎందుకంటే Google Maps API యొక్క లక్షణాలు గుర్తించే సామర్ధ్యాన్ని ఉంది మీరు భౌగోళికంగా ఎక్కడ GPS అక్షాంశాలు పరంగా. ఇప్పుడు ఎలా దొరుకుతుందని ప్రారంభం తెలపండి కలిసి ఈ విషయాలు వేయడం మొదలు. మేము మీరు మొత్తం ఇచ్చాను పంపిణీ కోడ్ బంచ్ అలాగే MySQL డేటాబేస్ వంటి. నేను లాగండి ఉంటే నిజానికి, ఒక phpMyAdmin కలిగి ఇప్పటికే దిగుమతి, మీరు వెంటనే రెడీ గా, pset8.SQL, మీరు ఒక MySQL పట్టిక చూస్తారు ఈ కనిపిస్తోంది, ఒక ID రంగంలో దేశం కోడ్, పోస్టల్ కోడ్, స్థలం పేరు మరియు మరిన్ని. ఆ అన్ని రకాల నిలువు నేను కేవలం ఉద్భవించింది readme.text చదవడం ద్వారా పేర్కొన్న ఇక్కడ దాఖలు ఒక రంగంలో పూర్ణాంకం అనే, లేదా varchar లేదా ఇష్టపడుతున్నారు. కాబట్టి మేము ఆ పట్టిక కోసం సృష్టించిన మీరు మరియు మీరు SQL ఆదేశాలను ఇచ్చిన ఆ సృష్టించడానికి నిర్వర్తించుటకు మీ స్వంత డేటాబేస్లో పట్టిక, కానీ ఇంకా నిజానికి అది ఏ డేటా ఉంది. అయితే, మీరు చూడాలని us.zip డౌన్లోడ్ లేదా ఏ దేశం యొక్క జిప్ అక్కడ URL నుండి ఫైల్. ఆపై మీరు వ్రాయడానికి చూడాలని ఆ PHP లో ఒక కమాండ్ లైన్ స్క్రిప్ట్ ఆ టెక్స్ట్ తెరవటానికి వెళ్తున్నారు , ఈ ఫైలుని పంక్తులు మీద iterate, మరియు అప్పుడు ప్రతి ఆ పంక్తులు ఒక చొప్పించు పట్టిక ఉంచాడు లోకి మీ MySQL డేటాబేస్ లో. ఈ విధానం యొక్క ముగింపు వద్ద, మీరు చేస్తాము కాబట్టి చివరికి ఆ స్క్రిప్ట్ అమలు కేవలం ఒకసారి థియరీ. వాస్తవానికి మీరు బహుశా చేస్తాము అది కొంత అమలు అయితే వివిధ దోషాలు పరిష్కరించడానికి ప్రయత్నిస్తున్నాము. చివరకు, మీరు చూడాలని వేలాది నిజంగా పెద్ద డేటాబేస్ భౌగోళిక వరుసల వేల. అప్పుడు మీరు ఆ దిగుమతుల ఉంచాలి చేయబోతున్నామని స్క్రిప్ట్ పక్కన అది పనిచేస్తోందని ఒకసారి మరియు మీ డేటాబేస్ nice ఉంది మరియు సరైన, మరియు అప్పుడు మీరు నిజంగా వెళ్ళటానికి చూడాలని మాషప్ కూడా అమలు. మాషప్ చూడండి అన్నారు ఈ వంటి కొంత. Mashup.cs50.net వద్ద, మేము ఒక సిబ్బంది పరిష్కారం కలిగి ఈ వంటి కొంత కనిపిస్తోంది. నిజానికి, నేను ఈ వార్తాపత్రిక క్లిక్ చేస్తే కేంబ్రిడ్జ్, మసాచుసెట్స్ ఐకాన్, మీరు ఒక స్పిన్నింగ్ చూస్తారు క్లుప్తంగా ఆపై చిహ్నం ఒక క్రమ జాబితా, వ్యాసాలు తూటాల జాబితా కేంబ్రిడ్జ్, మసాచుసెట్స్ సంబంధించిన. నేను చార్లెస్ మీద క్లిక్ చేస్తే, మసాచుసెట్స్, నేను ఆ పట్టణం ఒకే చూస్తారు. నేను క్లిక్ చేస్తే వాటర్టౌన్, మసాచుసెట్స్లో, ఏ అక్కడ కాదు వాటర్టౌన్ నుండి వార్తలు కాబట్టి మీరు ఏదో చూస్తారు నెమ్మదిగా వార్తలు రోజు. ఇప్పుడు, మరోవైపు, ఎడమ ఎగువన ఉంటాయి కొన్ని తెలిసిన Google Maps నియంత్రణలు పాన్ మీరు జూమ్ అవుట్ వీలు అప్, డౌన్ ఎడమ మరియు కుడి, కానీ మేము అక్కడ ఉంచిన ఒక శోధన బాక్స్. కాబట్టి నేను స్పష్టముగా, కొరకు శోధన ఉంటే, నేను తెలుసు మాత్రమే ఇతర జిప్ కోడ్, 90210, మేము నిజంగా చూస్తారు బెవర్లీ హిల్స్, కాలిఫోర్నియా. ఇక్కడ క్లిక్ చేసినప్పుడు అది నాకు దారితీస్తుంది కాలిఫోర్నియా మరియు మొత్తం బంచ్ బెవర్లీ హిల్స్ గురించి వార్తలు. ఇప్పుడు అక్కడ ఏం జరిగిందో కూడా గమనించవచ్చు. కూడా 02138 లేదా నేను ఉంటే ఈ సమయంలో శోధన కేంబ్రిడ్జ్ కామా మసాచుసెట్స్ లేదా కొన్ని వేరియంట్ వాటి, మీరు ఒక పొందవచ్చు చిన్న స్వయం డౌన్. ఇప్పుడు ఈ ఒక ప్లగ్ఇన్ ఉపయోగించి క్వెరీ అని ఒక లైబ్రరీ, మరియు ఆ ప్లగిన్ typeahead అంటారు. మేము కేవలం ద్వారా చదవడానికి డాక్యుమెంటేషన్, JS, ఇంటిగ్రేటెడ్ ఫైల్ డౌన్లోడ్ పంపిణీ కోడ్ కాబట్టి మీరు చివరికి కోడ్ వ్రాయగలరు ఆటో ఆ డ్రాప్డౌన్ మెనూ నింపుతుంది ఎంపికలు లేదా ఆటో సలహాలను. ఇప్పుడు పంపిణీ కోడ్, అయితే, ఆ మీరు దాదాపు గా ఎక్కువ లేదు పొందింది. మీరు Google Map పొందుపరిచిన పొందుటకు, మరియు మీరు ఎడమ నియంత్రణలు పొందండి మరియు మీరు శోధన బాక్స్ పొందండి. కానీ నేను లాగ టైప్ ఉంటే 02138, సంఖ్య స్థలాలు ఇంకా కనిపిస్తాయి. కాబట్టి ఆ చేస్తాడు ఇక్కడ మా లక్ష్యాలలో ఒకటి. అంతేకాకుండా, మీరు ఒక దశకు ఉంటే తిరిగి మరియు మాప్ స్వయంగా చూడండి, ఎలాంటి వార్తలను ఉంది. నేను క్లిక్ పోయినా మరియు డ్రాగ్, నిజానికి ఏ గుర్తులను ఆ ఎందుకంటే వార్తలు కనిపిస్తుంది సవాలు అలాగే మీరు వదిలేస్తారు. అప్పుడు పరిశీలించి లెట్ పంపిణీ కోడ్ వద్ద. మీరు డౌన్లోడ్ చేసిన pset8.zip మరియు అది అన్జిప్ చేయబడ్డాయి మీ vhost డైరెక్టరీ లోకి CS50 పరికరంలోని, మీరు ఈ చూస్తారు ఇక్కడ లోపల డైరెక్టరీలు. సాధారణంగా ఇందులో Bin-- ఎక్జిక్యూటబుల్ కార్యక్రమాలుగా బైనరీ pset7 వలె, కొన్ని PHP ఇతర ఫైల్స్ ఫైళ్లు అప్పుడే ప్రజా, అవసరమైన ఫైళ్లు బహిరంగంగా అందుబాటులో ఉండాలి ఒక బ్రౌజర్తో ఒక వినియోగదారుకు. యొక్క పరిశీలించి లెట్ బిన్ డైరెక్టరీ మరియు మేము చేస్తాము ఫైల్ ఉంది ఆ చూడండి ఇప్పటికే దిగుమతి అక్కడ అని. మేము gedit ఈ తెరిస్తే, మేము చూస్తారు , దురదృష్టవశాత్తు, చాలా అక్కడ కాదు అక్కడ. అయితే, అక్కడ అని అన్ని, ఎగువన ఒక shebang ఉంది ఇది నిర్దేశించే ఈ సందర్భంలో వ్యాఖ్యాత PHP-- నిజానికి వాడాలి ఈ ఫైల్ అమలు. కానీ అది చెప్పినట్లు మీరు ఎక్కడ TODO ఉంది కొన్ని కోడ్ వ్రాయడానికి అవసరం వెళుతున్న ఆ బహుశా config అవసరం డైరెక్టరీ ఇచ్చింది ఉందని ఫైలు మేము PHP ఫైళ్లను తో ముందు చేసినట్లుగానే. ఆపై మీరు చూడాలని ఏదో అప్ తెరిచి ఉంటుంది us.text ఇది మీరు బహుశా ఇప్పటికే unzipped చేశారు. అప్పుడు మీరు చూడాలని ఆ ఫైల్లోని లైన్లు పైగా iterate, బహుశా విధులు వాడి వివరణలో సూచించారు. అప్పుడు ఆ ప్రతి ఇన్సర్ట్ MySQL డేటాబేస్ లోకి పంక్తులు ప్రశ్న ఫంక్షన్ ఉపయోగించి ఇది మేము మళ్ళీ with-- మీరు అందించిన లేదా కనీసం ఒక వేరియంట్ వాటి functions.php లో ఇది మేము ఒక క్షణంలో చూస్తారు. ఇప్పుడు దిగుమతి మూసివేసి, తిరిగి వెళ్ళి తెలపండి మా డైరెక్టరీ మరియు ఈ సమయంలో లోకి వెళ్ళి ఇచ్చింది. నేను అక్కడ ls లేకపోతే, మీరు చూస్తారు చాలా సమస్య సెట్ 7 వంటి మూడు ఫైళ్లు. మరియు శీఘ్ర పరిశీలించి తెలియజేయండి ఉదాహరణకు, config.php వద్ద. అక్కడ లో, తక్కువ పంక్తులు కంటే ముందు, మరియు అది ఈ ఫైల్ తెలుస్తోంది constants.php మరియు functions.php. మేము కొద్దిగా భిన్నంగా ఉపయోగించి చేస్తున్నారు టెక్నిక్ నిజానికి ఈ సమయంలో ఈ ఫైళ్లు సాపేక్షంగా పేర్కొనవచ్చు ప్రస్తుత డైరెక్టరీ __ DIR__ సూచిస్తుంది సంసార డైరెక్టరీ ఈ ఫైలు, config.php లోనే ఉంది. కాబట్టి ఈ మరింత ఉంది తెలుపుటలో స్పష్టమైన మార్గం మీరు అవసరం కావలసిన ఇతర ఫైళ్లు. ఇప్పుడు నేను ఈ ఫైలు మూసివేసి ఉంటే బదులుగా constants.php అప్ తెరిచి, మీరు చాలా గుర్తుచేస్తుంది ఒక ఫైల్ చూస్తారు సమస్య సెట్ 7 యొక్క అలాగే, అయితే pset8 అనే మరొక డేటాబేస్ తో. చివరగా, functions.php లో మేము కేవలం ఒక ఫంక్షన్ చూస్తారు ప్రశ్న అని ఈ సమయం. ఈ మేము నిర్వహించడానికి తప్ప దాదాపు అదే ఉంది కొద్దిగా చుట్టూ లోపాలు ఈ సమయంలో విభిన్నంగా, కానీ వాడుక వార్తలు సమస్య లో అదే ఏడు సెట్. ఇప్పుడు మా pset8 తిరిగి వీడలేదు డైరెక్టరీ ప్రజా లోకి వెళ్లి, అక్కడ నేను ls లేకపోతే, మీరు ఉంటే ఈ చూస్తారు articles.php, index.html, search.php, మరియు అన్ని ఫైళ్ళు update.php--. మరియు అప్పుడు CSS ఫాంట్లు, img, మరియు చాలా pset7 వంటి JS డైరెక్టరీ. యొక్క పరిశీలించి లెట్ ఇది index.html, నిజంగా అవతరిస్తుంది smashup ప్రవేశానికి పాయింట్. ఇప్పుడు index.html లో, మీరు ఒక మొత్తం చూస్తారు తల లో లింక్ అంశాల బంచ్, ప్రత్యేకంగా మా సొంత బూట్స్ట్రాప్ కోసం స్క్రిప్ట్ యొక్క మొత్తం బంచ్ తరువాత CSS పటాలు, API వంటి విషయాలు టాగ్లు కూడా, లేబుల్ తో ఒక ప్రత్యేక మార్కర్ మేము పేర్కొన్న ఆ యుటిలిటీ స్పష్టీకరణ, మీకు అందుబాటులో ఉంది j క్వెరీ కూడా, బూట్స్ట్రాప్ కూడా, మరియు మరొక లైబ్రరీ అని అండర్ ఇది మేము స్పెక్ గురించి మాట్లాడటానికి. Jquery.js వంటి Underscore.js ఒక JavaScript లైబ్రరీ కార్యాచరణను యొక్క మొత్తం బంచ్ ఉంది ఆ ప్రపంచంలో అనుకుంటున్నారా మంది జావాస్క్రిప్ట్ లోనే ఉనికిలో. కాబట్టి ఈ అన్ని నిజానికి చాలా ప్రసిద్ధం. మేము కూడా typeahead చెప్పిన చేసిన లైబ్రరీ ఇది ఆ చేసే స్వయం డౌన్ మరియు చివరకు మా సొంత JavaScript ఒక లింక్. ఇంతలో, మరియు బహుశా కృతజ్ఞతగా, ఈ మాషప్ సాపేక్షంగా తక్కువ నడుపబడుతోంది డౌన్ ఇక్కడ దిగువన HTML. మేము ఒక div పేర్కొన్న ఆ నోటీసు తరగతి కంటైనర్ ద్రవం మా శరీరం. ఈ ప్రకారం బూట్స్ట్రాప్ యొక్క డాక్యుమెంటేషన్, కేవలం ఈ DIV పూరించడానికి అన్నారు అర్థం viewport లేదా పూర్తిగా బ్రౌజర్ యొక్క విండో. ఇంతలో, ఆ క్రింద మేము ఒక div కలిగి ఆ తెరిచిన వెంటనే మూసివేయబడింది మాప్ కాన్వాస్ ఏకైక ID తో. ఈ ఇప్పుడు Google నుండి మ్యాప్స్ డాక్యుమెంటేషన్ దాని API కోసం అనగా నేను కేవలం అవసరం , ఇంజెక్ట్ ఇది ఒక ఖాళీ div కలిగి చివరికి, ఒక వాస్తవ Google Maps. కానీ కేవలం ఒక బిట్ లో ఆ మరింత. చివరగా, ఒక రూపం ఉంది ఇక్కడ యొక్క లోపల టెక్స్ట్ బాక్స్ టాప్ ఎడమ పనిముట్లు శోధనకు మా ఇంటర్ఫేస్ లో. మేము ఉపయోగించే చేసిన నోటీసు బూట్స్ట్రాప్ యొక్క ఒక బిట్ ఇక్కడ వంటి విషయాలు too-- రూపం ఇన్లైన్ మరియు రూపం సమూహం. మేము మాజీ ఇచ్చాను రూపం యొక్క ఏకైక ID. ఆపై, చివరకు, నేను నిజానికి అందంగా తెలిసిన ఇది ఒక ఇన్పుట్ రకం, q దీని ID ఉంది. కేవలం ఒక ఆచారం. ప్రశ్న కలిగి కాలేదు Q ఏదైనా అని పిలుస్తారు. ఆపై హోల్డర్, మరోవైపు, నగరం, రాష్ట్రం, మరియు పోస్టల్ కోడ్ మీరు గుర్తుకు కావచ్చు ఇది డెమో ముందు మా మాషప్ లో చూసిన. ఈ ఫైలు మూసేస్తున్నాను. ఇప్పుడు PHP ఫైళ్లను పరిశీలించి ఆ ఎదురుచూచు మరియు అప్పుడు జావాస్క్రిప్ట్ ఫైళ్లు. మా PHP ఫైళ్లను లో, మేము చేసిన ఇప్పటికే మీరు కోసం అమలు, ఉదాహరణకు, నవీకరణలు. మేము ఒక భారీ ఖర్చు లేదు Update.php-- క్లుప్తంగా ఇక్కడ సమయం మొత్తం ఫైలు అని మా జావాస్క్రిప్ట్ కోడ్ అన్నారు AJAX ద్వారా సంప్రదించడానికి ఆ ఆ అసమకాలిక టెక్నిక్ అని ఈ రోజుల్లో జావాస్క్రిప్ట్ నిర్మించారు మాకు update.php అడగండి అనుమతిస్తాయి అన్నారు మరింత సమాచారం కోసం. ముఖ్యంగా, ఎప్పుడైనా వాడుకరి మాప్ లాక్కువెళుతుంది లేదా జంప్స్ ఒక సెర్చ్ చేసిన మరొక స్థానానికి యూజర్, మా జావాస్క్రిప్ట్ కోడ్, మేము వెంటనే చూస్తారు వంటి, ఉంది update.php కాల్ వెళుతున్న మరియు 10 లేదా గుర్తులను గోవా వీక్షణపోర్ట్ లోపల ఆధారంగా GPS అక్షాంశాలు న ఎగువ మరియు దిగువ ఆ పటం యొక్క మూలలు. మేము అప్పుడు ఇప్పుడు ఆ పటం సంతానోత్పత్తి జరిపించేందుకు చేయవచ్చు యూజర్ క్రమంలో స్క్రీన్ తరలించబడింది 10 బహుశా కొత్త చూడటానికి వివిధ పట్టణాలు గుర్తులను. ఇంతలో, ఈ ఫైలు అంతిమంగా ఒక SQL ప్రశ్న అమలు వెళుతున్న మా డేటాబేస్ వ్యతిరేకంగా పట్టిక అని ప్రదేశాల్లో ఇది ఆ తిరిగి అన్నారు 10 లేదా తక్కువ స్థానాలను. ఇంతలో, articles.php లో మరొక ఉంది మేము సంపూర్ణంగా వ్రాయలేదు దాఖలు. ఇది ఆత్మ చాలా పోలి ఉంటుంది సమస్య సెట్ 7 యొక్క శోధన ఫంక్షన్ ఇది మీరు యాహూ ఫైనాన్స్ సంప్రదించారు. ఈ ఫైలు పరిచయాలు Google వార్తలు మీరు కోసం, చివరికి ఈడ్చడం ఒక యంత్రం చదవగలిగే version-- ఏదో వార్తలు RSS format-- అని కేంబ్రిడ్జ్ లేదా బెవర్లీ హిల్స్ లేదా సంసార పట్టణం మీరు శోధించిన ఆ geoparameter ఆధారంగా. మేము కేవలం ఒక యములో RSS పదనిరూపణ XML పేరుతో మార్కప్ భాష యొక్క రకం, ఆపై మేము నిజానికి మీ బ్రౌజర్ దానిని తిరిగి మరియు మీ జావాస్క్రిప్ట్ కోడ్, ప్రత్యేకంగా, ఒక ఫార్మాట్ లో అని JSON, జావాస్క్రిప్ట్ ఆబ్జెక్ట్ నొటేషన్. ఇప్పుడు మీరు చూస్తారు specification-- మేము మీరు సూచించండి మీరు నిజంగా చూసే ఎలా JSON రాబోయే back-- కొన్ని ఈ కార్యాచరణను చివరికి మీరు కనుక ఆ పాపప్ మెనుల్లో జనసాంద్రత అనుమతిస్తుంది మీరు క్లిక్ చేసినప్పుడు ఆ మాప్ లో ఒక మార్కర్ న మీరు నిజంగా ఒక మొత్తం బంచ్ చూడండి బుల్లెట్ల, వీటిలో ప్రతి ఒక వ్యాసం లింకులు. ఇప్పుడు చివరి పరిశీలించి తెలియజేయండి అదృష్టవశాత్తూ, లేదు PHP ఫైలు చాలా కలిగి జరగబోతోంది కేవలం ఒక అందమైన పెద్ద TODO. ప్రస్తుతం ఈ ఫైలు ప్రకటించాడు వ్యూహం ప్రదేశాలు. మరియు తర్వాత చివరికి ప్రింట్లు JSON format-- ఆ శ్రేణి కేవలం కాబట్టి ఇది అందంగా ముద్రణ విషయాలు డీబగ్ తేలిక. దురదృష్టవశాత్తు, లో మధ్యలో ఈ TODO ఉంది, మీరు అన్వేషణ కోసం ఇది కాల్స్ పదబంధం స్థలాలు కోసం డేటాబేస్ భూతలంపై HTTP పరామితి. మరియు, నిజానికి, ఈ అన్నారు మీ challenges-- ఒకటి ఉంటుంది ఇక్కడ ఈ కార్యాచరణను అమలు కాబట్టి మీరు ఈ ఫైల్ సంప్రదించండి శోధన వంటి URL. php? జియో = ఏదో మీ కోడ్ చివరికి ఒక JSON చేరుకుంటాయి స్థలాల అన్ని శ్రేణి మీ ఆ ఇన్పుట్ మ్యాచ్ డేటాబేస్ టేబుల్. కేంబ్రిడ్జ్ లో యూజర్ రకాల చేస్తే ఇక్కడ మీ ఫైల్ search.php చివరికి ఒక JSON అర్రే తిరిగి ఉండాలి కేంబ్రిడ్జ్ మ్యాచ్లు అందరికీ, మసాచుసెట్స్ కావచ్చు ఇది కానీ కూడా ఎక్కడైనా కావచ్చు. చివరగా, రెండు వద్ద ఒక లుక్ తీసుకుందాం స్టాటిక్ ultimately-- ఫైళ్ళను మీ CSS ఫైల్ మరియు మీ జావాస్క్రిప్ట్ ఫైలు. నేను మా CSS డైరెక్టరీ లోకి వెళ్ళి ఉంటే, ఫైళ్ళ మొత్తం బంచ్ అక్కడ ఉంది కానీ వాటిలో చాలా లైబ్రరీలు ఉంటాయి. నేను పరిశీలించి వెళుతున్న, ప్రత్యేకంగా, styles.css వద్ద, ఇది ఆ మా స్వంత ప్రపంచ CSS ఉంది ఈ మొత్తం మాషప్ stylize అన్నారు. మీరు ద్వారా చదవడానికి నేను చెప్పను వ్యాఖ్యలు ఇక్కడ, కానీ, క్లుప్తంగా, ఈ నిర్ధారిస్తుంది CSS మా మాషప్ బాక్స్ బయటకు అప్రమేయంగా, మేము దీన్ని ఖచ్చితంగా మార్గాన్ని కనిపిస్తుంది వీక్షణ నింపి పోర్ట్ మాప్ తో మరియు శోధన ఎడమ ఎగువన అప్ బాక్స్. మేము కూడా LIBERTY తీసుకున్నారు ఆ Typeahead డౌన్ stylizing మెను కొద్దిగా అలాగే. అత్యంత ముఖ్యమైన ఫైల్ బహుశా ఈ సమస్య సెట్ కోసం ఈ చివరి, scripts.js ఉంది. మీ JS డైరెక్టరీ ఇన్సైడ్ మరింత దస్త్రాలు. వాటిని అన్ని లైబ్రరీ ఫైళ్లు ఈ ఒక తప్ప, scripts.js. మేము ఈ అప్ తెరిస్తే, యొక్క తీసుకుందాం మా విధులు ద్వారా తుది పర్యటన ఆ ఈ ఫైలు లోకి నిర్మించబడ్డాయి మీరు మరియు కాల్ శ్రద్ధ ముందుకు ఉంటాయి టొడోస్ కు. ఈ ఫైలు యొక్క పైభాగంలో, మూడు ప్రపంచ వేరియబుల్స్ ఉన్నాయి. అన్నారు ఇది ఒక చిహ్నం, వన్ మా Google Map ఒక సూచన. మీరు దానిని ఆలోచించవచ్చు విధమైన ఒక పాయింటర్ గా. ఇంతలో, మేము కలిగి మరొక ప్రపంచ వేరియబుల్ కనిపిస్తుంది ఇది అని సమాచారం, కాల్ తిరిగి విలువ నిల్వ కొత్త google.maps.InfoWindow కు. జావాస్క్రిప్ట్ వస్తువులు మద్దతు ఇస్తుంది మద్దతు పొంది ఆత్మ లో పోలి ఉంటాయి. మరియు ఈ లైన్ కోసం మా ప్రయోజనాల చేస్తోంది ఒక కొత్త సమాచారం సృష్టిస్తుంది అప్పుడు మెమరీ మరియు విండో ఒక ప్రస్తావన చుట్టూ ఉంచడం సమాచారం అనే వేరియబుల్ అందుకు. మరియు ఆ మధ్య లో, మరోవైపు, కనిపిస్తుంది ఏమిటి ఒక ఖాళీ జావాస్క్రిప్ట్ ఉండాలి శ్రేణి గుర్తులను అని. ఆ వార్తాపత్రిక ప్రతిమలు అన్ని, లేదా మీరు మొత్తంగా మరొక చిహ్నం ఎంచుకోవచ్చు ఉండవచ్చు, నిల్వ వెళ్తున్నారు చివరికి ఈ శ్రేణి లో మేము చాలా సులభంగా జోడించవచ్చు తద్వారా Map మరియు Map నుండి వారిని తొలగించే. ఇప్పుడు స్క్రోల్ డౌన్ లెట్ ఒక చిన్న బిట్ మరియు whiz అని జరగబోతోంది కోడ్ ద్వారా DOM లేదా డాక్యుమెంట్ వెంటనే అమలు ఆబ్జెక్ట్ మోడల్ లేదా పేజీకి సిద్ధంగా ఉంది. ఈ వాక్యనిర్మాణం గుర్తుచేసుకున్నారు ఇక్కడ కేవలం నిర్దేశిస్తుంది క్రింది కోడ్ మాత్రమే అమలు చేయాలి బ్రౌజర్ పూర్తి అయినప్పుడు అన్నిటికీ లోడ్. మేము మొదటి డిక్లేర్ శైలులు యొక్క మొత్తం బంచ్, stylizing ముగుస్తుంది ఇది స్పెక్ ప్రకారం పటం. మేము అప్పుడు ఒక ప్రకటించాలని ఎంపికలు మొత్తం బంచ్, మరింత Google అనుకూలీకరించడానికి ఇది మేము పొందుపరచడానికి చేయబోతున్నారు పటం. మేము అప్పుడు, j క్వెరీ కోడ్ ఒక బిట్ ఉపయోగించడానికి ఇది ఒక బిట్ మరింత వివరంగా వివరించారు స్పెక్ లో, పట్టుకోడానికి ఆ మూలకం, చిహ్నం కాన్వాస్ మేము అంత ప్రత్యేకంగా గుర్తించిన. ఆపై ఈ లైన్ ఇక్కడ ఉంది ఏ తెలుస్తోంది అద్భుతంగా మాకు ఇవ్వాలని లోపల ఒక Google Map మా స్వంత అనువర్తనం, ఒక సూచన అందుకు నిల్వ ఆ వేరియబుల్ అని పటంలో. చివరగా, డౌన్ ఇక్కడ మేము నమోదు ఏమి ఒక వినేవారు అని. Back-- మార్గం, మార్గం ఆలోచించండి CS50 లో వారం సున్నా back-- మేము మొదటి వద్ద చూచినప్పుడు మరియు ఒక నడక ద్వారా దాని మద్దతు అనే విషయాలు ద్వారా ఈవెంట్స్ మరియు ప్రసారం. మీరు ఉపయోగించే ఉండకపోవచ్చు అది మీరే, అయితే అది వార్తలు ఒక యంత్రాంగాన్ని చేయటం ఈ సందర్భంలో బ్రౌజర్ అది ఉన్నప్పుడు మా దృష్టికి పొందవచ్చు నిజానికి కొన్ని కోడ్ అమలు సిద్ధంగా. ఈ సందర్భంలో, అది వినడానికి జరగబోతోంది పనిలేకుండా అనే కార్యక్రమాన్ని మాప్ కు. ఈ బ్రౌజర్ ఉంది అంటే Google చిహ్నం లోడ్ ముగిసింది. ఈ సమయంలో ఒక ఫంక్షన్ అని configure తప్పక చివరికి అమలుపరచటం. ఆ ఫంక్షన్, కాన్ఫిగర్ మేము మాకు రాసిన చూస్తారు. డౌన్ ఇప్పుడు ఇక్కడ ఒక ఫంక్షన్ ఉంది , దురదృష్టవశాత్తు, కేవలం ఒక todo జోడించడానికి మార్కర్ ఉంది. స్పెక్ ప్రకారం. మీరు అవసరం చూడాలని వాస్తవానికి కోడ్ రాయడం కనిపిస్తోంది లేదో ఒక marker-- జతచేస్తుంది ఒక వార్తాపత్రిక, లేదా ఒక thumb టాక్ వంటి, లేదా ఏదో Google మ్యాప్కు మిగతా. ఇక్కడ ఇప్పుడు ఆ ఫంక్షన్ ఉంది configure అని. మీరు చదవడానికి నేను చెప్పను మరింత వివరంగా ఈ ద్వారా, కానీ మేము జోడించవచ్చు అని తెలుసుకోవటం కొంత మరింత శ్రోతలు మేము కోడ్ అమలు చేయవచ్చు తద్వారా యూజర్ క్లిక్ మరియు మాప్ లాక్కువెళుతుంది. మేము కూడా ఇక్కడ ఆ కోడ్ కలిగి ఆ Typeahead ప్లగ్ఇన్ ప్రారంభించటానికి తద్వారా డౌన్ మెనూ నిజానికి పనిచేస్తుంది. కానీ కేవలం ఒక దృష్టి లెట్స్ ఇక్కడ స్థలాలు జంట. ముఖ్యంగా, ఈ ఇక్కడ ఏమి. నేను ఆన్లైన్ వాయిదా చేస్తాము డాక్యుమెంటేషన్ మరియు వివరణ కోసం ఎలా ఈ TODO పూరించడానికి. కానీ సూక్ష్మంగా, ఈ లైబ్రరీ typeahead మీరు పాస్ అనుమతిస్తుంది సాధారణంగా ఒక టెంప్లేట్ గా పిలిచే దానిలో, కొన్ని వేరియబుల్ placeholders కలిగి printf యొక్క% కు ఆత్మ లో సమానమైన. * s. కానీ ఈ సందర్భంలో, స్పెక్ ప్రకారం టెంప్లేట్ మీరు తెలుపుటకు అనుమతించును ఏ వేరియబుల్స్ మీకు కావలసిన వచ్చి ఆ డేటా నుండి ఇంజెక్ట్ తిరిగి PHP వంటి ఏదో నుండి మీరు రాసిన చేసిన ఫైల్లను ఆ JSON అవుట్పుట్ వెలువరించే ఉంటాయి. డౌన్ ఇప్పుడు ఇక్కడ మేము అని తెలుసుకోవటం typeahead ఎంపికలు వినడం యూజర్ వాస్తవానికి నిర్వహిస్తుంది ఒక అన్వేషణ మరియు ఒక విలువ ఎంపిక. ఈ మేము నిజంగా ఉన్నారు ఎలా ఉంది ఆ కోసం వినండి అన్నారు మరియు ఫలితంగా కొన్ని కోడ్ అమలు. అప్పుడు మేము ఆకృతీకరించుటకు కొనసాగుతుంది మాషప్ కేవలం కొద్దిగా. మరియు, చివరికి, మేము కాల్ ఈ ఫంక్షన్ నవీకరణ. ఇది తెరపై గుర్తులను అప్డేట్ అవుతుంది. కేవలం ఒక క్షణం లో ఆ మరింత. ఇంతలో, కొన్ని ఉంది ఇక్కడ చిన్న విధులు. వీటిలో ఒకటి hideInfo ఇది కేవలం InfoWindow ముగుస్తాయి. ఇక్కడ మరో ఫంక్షన్, చివరికి చాలా కాలం వుండదు, గుర్తులను తొలగించండి. ఆ దిద్దుబాటు రద్దుచెయ్యి వెళుతున్న సంసార మీ add మార్కర్ పనిచేస్తుంటాయి. మరియు దిగువకు ఇక్కడ శోధన ఉంది. మరియు ఈ ఒక ఆసక్తికరమైన ఉంది మేము ఎందుకంటే వార్తలు జావాస్క్రిప్ట్ కోడ్ వ్రాశారు న search.php మాట్లాడటానికి వెళ్ళడం సర్వర్ మరియు కొన్ని ప్రతిస్పందన తిరిగి పొందండి. మీరు, కోర్సు యొక్క, ఇప్పటికీ రెడీ search.php అమలు చేయాలి, కానీ మేము అమలు చేసిన వార్తలు జావాస్క్రిప్ట్ కోడ్ ప్రదర్శన నిజానికి నిర్వహించడానికి వెళ్తున్నాను ఆ టెక్స్ట్ బాక్స్ నుండి శోధిస్తుంది. ముఖ్యంగా, నోటీసులో ఇక్కడ ఈ ఫంక్షన్, శోధన, search.php కాల్ లేదు అనే పద్ధతి ద్వారా మేము ఉపన్యాసంలో చూసింది ఇది JSON, పొందండి. మరియు ఇక్కడ వాక్యనిర్మాణం కొద్దిగా భిన్నంగా ఉంటుంది ఆ ఉపన్యాసం నుండి మేము ఉపయోగిస్తున్న j క్వెరీ వాగ్దానం ఇంటర్ఫేస్ అని పిలవబడే. స్పెక్ లో ఆ మరింత. ఈ కేవలం మా కోసం అర్థం ఇప్పుడు అక్కడ ప్రయోజనాల రెండు ప్రత్యేక విధులు మేము డాట్ సంజ్ఞామానం కాల్ అవసరం ఇక్కడ వెంటనే JSON ను కాల్ తర్వాత. ఒక చేయబడుతుంది అంటారు. అంటారు విఫలం. మీరు ఈ ఆలోచించవచ్చు విజయం హ్యాండ్లర్ వలె మరియు వైఫల్యం హ్యాండ్లర్ కేవలం కేసు ఏదో తప్పు జరిగితే. ఇప్పుడు గత చూద్దాం ఈ ఫైలులో విధులు జంట. డౌన్ ఇక్కడ ఒక ఫంక్షన్ ఉంది అని ShowInfo, ఇది వారిలో సమాచారం చూపిస్తుంది చిన్న సమాచారం విండోస్ ఆ వినియోగదారు ఒక మార్కర్ క్లిక్ చేసినప్పుడు బయటకు. డౌన్ ఇక్కడ మరింత ఉంది ఆ నవీకరణ ఫంక్షన్ మేము మీరు కోసం అమలు చేశారు. ఇది మ్యాప్ హద్దులు నిర్ణయిస్తుంది. యొక్క GPS అక్షాంశాలు ఏమిటి దాని ఈశాన్య మరియు ఇక్కడ నైరుతి మూలలో. మేము కొన్ని HDP పారామితులు తయారు చేసిన ఇక్కడ మరియు తర్వాత చివరికి వాటిని ఆమోదించింది మేము చేసిన, update.php కు కూడా మీ కోసం అమలు. చివరికి కొన్ని JSON వచ్చేస్తుంది ఫైలు update.php పేరొందిన మరియు అప్పుడు ఏ తొలగిస్తుంది తెరపై గుర్తులను ఆపై పైగా iterates తిరిగి వచ్చి ఆ డేటా update.php, నుండి మళ్లీ ఒక JSON శ్రేణి. అది చివరికి ఒక మార్కర్ జతచేస్తుంది ఆ స్థలాలు ప్రతి, నిర్వహణ వైఫల్యం లేదా వాటిని తప్పులు చాలా బాగా జరుగుతుంది. ఇప్పుడు కేవలం మీరు ఎలా ఒక రుచి ఇవ్వాలని ఈ ప్రాజెక్టు డీబగ్గింగ్ గురించి వెళ్ళవచ్చు, నేను తెరిచిన అని తెలుసుకోవటం ఈ URL ఇక్కడ ఈ టాబ్ ముందుకు, pset8 / articles.php? జియో = 02138. గురించి ఇప్పుడు, మళ్ళీ, వ్యాసాలు PHP మేము మీ కోసం అమలు కాబట్టి ఈ చాలా కాదు మీరు ఉపయోగించి ఉంటాం ఏమి డీబగ్, కానీ టెక్నిక్. నేను శోధించిన చేసిన నోటీసు ఇక్కడ కేంబ్రిడ్జ్ యొక్క జిప్ కోడ్ స్థానం, మరియు నేను ఒక JSON, నిజానికి చెవిలో చేసిన JSON శ్రేణి లోపల ఇది వస్తువులు రెండు keys-- లింక్ మరియు శీర్షిక ఉన్నాయి. కాబట్టి ఈ కార్యాచరణను మీరు ఇప్పటికే పనిచేస్తుంది. కానీ మానవీయంగా ఈ టెక్నిక్ అన్నారు ఏదో ఈ వంటి ఒక URL కు వంటి search.php? జియో = కేంబ్రిడ్జ్ లేదా 02138 లేదా వినియోగదారు ఉండాలి టైప్ ఉంది సంసార మీరు, మీ, ప్రయత్నించండి వంటి అమూల్యమైన రుజువు దొరుకుతుందని సరిగ్గా లేదో ఎందుకు search.php పని లేదా. చివరకు అప్పుడు, మీరు కలిగి ముందుకు మీరు కొన్ని టొడోస్. మీరు మొదటి పనిముట్లు చూడాలని దిగుమతి స్క్రిప్ట్ అని మీ డేటాబేస్లో us.text చదువుతుంది. అప్పుడు మీరు అవసరం చూడాలని search.php అమలు పేర్కొన్న ఖచ్చితంగా ప్రవర్తిస్తుంది కాబట్టి. అప్పుడు మీరు చూడాలని scripts.js దృష్టి చివరకు అమలుచేసే టొడోస్ ఆ జంట, కాన్ఫిగర్ సహా మరియు టెంప్లేట్, , గుర్తులను జోడించండి గుర్తులను తొలగించండి, మరియు అప్పుడు గత, కానీ కనీసం ఒక పర్సనల్ టచ్. మీరు మీ మాషప్ పని చేసిన తర్వాత చేతిలో చాలా మాది వంటి లక్ష్యం మీరు ఒక వ్యక్తిగత జోడించడానికి కోసం మీ మాషప్ తాకండి ఇది సౌందర్య లేదా క్రియాత్మక వార్తలు లేదో. ఇంత మాషప్ టేక్ కొద్దిగా తదుపరి స్థాయికి. సో లాంగ్ మీరు మీ దాటి పుష్ గా స్పెక్ కూడా మీ పరిచయాన్ని మరియు ఒక టెక్నిక్ అప్ ఎంచుకునేందుకు కొత్త, అది కూడా కేవలం ఏదో మార్చడం వంటి సౌందర్య మీరు ఉపయోగిస్తున్నట్లయితే ఆ పటం యొక్క లేఅవుట్, మేము ఆశించిన ఆ పరిధిని సంతృప్తి ఉంటుంది. ఆ తరువాత సమస్య సెట్ 8 మాషప్ ఉంది. మరింత కోసం ట్యూన్ ఉండండి స్పష్టీకరణ మరియు శుభాకాంక్షలు ఈ పరిష్కారంలో, మీ చివరి CS50 సమస్య ఎప్పుడూ సెట్. [సంగీతాన్ని]