[संगीत खेल] डेविड Malan: यह सीएस 50, और है इस सप्ताह नौ की शुरुआत है. और क्या हम हम आज क्या सोचा नहीं है केवल पिछले हफ्ते पर अध्याय बंद हम सर्वर पर ध्यान केंद्रित किया जहां सामग्री PHP और एसक्यूएल के साथ पक्ष वेब प्रोग्रामिंग, कुछ डेटाबेस सामान. हम एक बिट के बारे में बात करेंगे सुरक्षा आज और फिर एक ग्राहक की ओर प्रोग्रामिंग के लिए संक्रमण जावास्क्रिप्ट के रूप में जाना जाता है भाषा. लेकिन पहले, कुछ मोचन. तुम उस पर याद कर सकते हैं बुधवार, मैं बाहर सेट एक वेबसाइट लिखने के लिए कि उपयोगकर्ता इनपुट में ले लिया एक HTML से कि फिर संग्रहीत फार्म कि उपयोगकर्ता इनपुट के नाम, फोन संख्या, और सेलफोन डेटाबेस में वाहक. और फिर मैं एक छोटे से आदेश था लाइन स्क्रिप्ट PHP में लिखा कि पुनरावृति करने वाला था डेटाबेस में पंक्तियों पर और पाठ संदेश भेजें. कई, कई प्रयासों के बावजूद, हम अंत तक कि काम नहीं मिला. इसलिए मैं काम कर इस पूरे सप्ताह खर्च कि कोड पर बात पिछले हमें पाने के लिए हम कहाँ दूर छोड़ दिया, जिससे सभी मैं बुधवार के अंत तक मिल गया इस पाठ संदेश था , मैं संघर्ष के रूप में मार्गो से एक और से एक पाठ संदेश द्वारा पीछा सहपाठी, आप इस डेविड मिल गया है. इस एक के द्वारा पीछा किया, शानदार उत्साहजनक. जा पर रखा, बहुत खुशी की बात. मैं लगभग then-- जब तक समझ में आ गया और कि हम बुधवार को समाप्त हो गया नोट है. और फिर वास्तव में शायद मेरी पसंदीदा, एक पल के बाद, इस में आया था. अरे स्ट्रीम जीते. तो आज, हम इस एक त्वरित साथ तय मैं के बाद से क्या किया है पर देखो. इसलिए इस कोड के सभी उपलब्ध है ऑनलाइन पिछले हफ्ते, सप्ताह आठ से, स्रोत कोड. और तुम, मैं के माध्यम से चला गया है कि देख लेंगे और मैं वास्तव में थोड़ा ऊपर बातें साफ कर दिया. मैं एक दो अन्य की शुरुआत की एक एसक्यूएल डाटाबेस की सुविधाओं. उदाहरण के लिए, बजाय सिर्फ वर चार का वाहक बना मुझे लगता है जैसे मैं पिछले हफ्ते मक्खी पर किया था. मैं बजाय के रूप में इसे परिभाषित क्या एक इनम कहा जाता है. और आप में से कुछ इस देखा हो सकता है हम पता लगाया के रूप में सी Enum वास्तव में है सी की एक विशेषता है, जहां आप कर सकते हैं स्थिरांक की एक पूरी गुच्छा गिनना और स्वचालित मूल्यों उन्हें आवंटित, एक, दो, तीन, चार की तरह मुश्किल कोड नंबर करने के लिए बिना. तो एसक्यूएल अगर जिससे, उसी का समर्थन करता है आप एक डेटाबेस क्षेत्र है कि आप केवल परिमित में से एक पर ले जाना चाहता हूँ मूल्यों, तुम सचमुच यह निर्दिष्ट कर सकते हैं मैं चार के लिए वहाँ किया है लोकप्रिय अमेरिकी सेलफोन वाहक. तो मैंने वैसा ही किया. और मैं के रूप में परिवर्तन का एक नंबर दिया खैर, जिनमें से सबसे महत्वपूर्ण ईमेल याद क्योंकि काम कर पाने के लिए था, इस कार्यक्रम है जिस पर भरोसा किया कि आम तौर पर एक ई-मेल करने के लिए कहा जाता है बस है जो एसएमएस के प्रवेश द्वार, कि Verizon कह का एक अच्छा तरीका है, और एटी एंड टी, और अन्य लोगों को, एक सर्वर का समर्थन जिससे यह प्राप्त करता है ईमेल, यह एसएमएस में धर्मान्तरित और एक पाठ भेजता किसी के फोन करने के लिए संदेश. मैं सही ढंग से ऐसा किया तो, अगर यहाँ एक नया और बेहतर रूप है उस से बात करने जा रहा है नए और बेहतर कोड, जो आप ऑनलाइन के साथ खेल सकते हैं. और यह उम्मीद कर देगा मेरे बस एक पल में फोन बीप. तो सबसे पहले, मैं अपने नाम में टाइप करने के लिए जा रहा हूँ. दूसरा, मैं नहीं जा रहा हूँ यह इस समय क्या करना. मैं तत्व का निरीक्षण करने जा रहा हूँ. और यह सिर्फ एक है छोटी सी बात तो मैं नहीं करना पोस्ट उत्पादन के घंटे बनाने मैं पिछली बार किया था के रूप में काम करते हैं. अब मेरा फोन नंबर है. मैं Verizon का चयन करेंगे. और यहाँ, चलो इस माइक्रोफोन पर बारी यहां, और यहां मेरे फोन पर इस लक्ष्य. मैं, रजिस्टर क्लिक करने के लिए जा रहा हूँ जो चाहिए उम्मीद डेटाबेस में डाल दिया. अब मैं करने जा रहा हूँ कमांड लाइन कार्यक्रम, जो याद डॉट स्लेश बुलाया गया था पाठ, और अपनी उंगलियों को पार. ये रहा. [फोन dings] [वाहवाही] डेविड Malan: this-- से तो ज्यादा मजा मैं इसे में मिलता है अगर यह, ज़ाहिर है, मजेदार है. लेकिन यह तो, मैंने सोचा, और अधिक मज़ा है हम उन फिल्म क्षणों में से एक बनाया जहां कुछ की तरह सच बुरा, दुनिया में हुआ है और सब एनएसए लोगों की तरह सेलफोन beeping शुरू पाठ संदेश के साथ इस तथ्य को उन्हें चेतावनी. इसलिए मुझे लगता है कि हम कोशिश करेगा यहां एक ही विश्राम करने के लिए, एक डेटाबेस का उपयोग नहीं जिससे, मैं बजाय अग्रिम में इस तरह दिखता है कि एक कार्यक्रम में लिखा था. यह एक index.php-- है और मैं ऑनलाइन इस कोड डाल well-- कि के रूप में जाहिरा तौर पर बस, form.php renders एक MVC शैली प्रतिमान का उपयोग कर कि हम समस्या सेट में अधिक विस्तार से इस बारे में बात सात. उस रूप में बहुत आसान है. यह एक करने के लिए प्रस्तुत करने जा रहा है पोस्ट के माध्यम से here.php बुलाया फ़ाइल. और यह जाहिरा तौर पर पूछने के लिए जा रहा है एक नाम है, और एक फोन नंबर के लिए, और तब के माध्यम से तथाकथित चुनें मेनू, यह है आप कम से कम चार देने जा रहा लोकप्रिय अमेरिकी सेलफोन वाहक, और फिर आप को प्रभावी ढंग से करने की अनुमति यहां क्लिक करके उपस्थिति ले. और यहाँ, इस बीच, जा रहा है पिछली बार से कोड में से कुछ उधार ले. और तुम सिर्फ इस स्किम अगर, तुम वहाँ देखेंगे कि त्रुटि जाँच की एक पूरी गुच्छा. लेकिन अंत में सौंदर्य यह है कि हम आज एक डेटाबेस के लिए लिख रहे हैं. हम इसे सरल रखने रहे हैं और बस उम्मीद है कि बाहर भेजने समारोह मैं के माध्यम से एक पाठ संदेश पिछले कुछ दिनों से फोन पर लिखा कार्यों में है जो पाठ,. पीएचपी, जो ऑनलाइन फिर से उपलब्ध है. तो अगर आप इस में हिस्सा लेना चाहते हैं. हम कुछ भी भंडारण किया नहीं जा रहे हैं. वास्तविक समय में यहां इस URL पर जाएं. बस अभी तक इसे प्रस्तुत, लेकिन हम ऐसा नहीं करते हम इन फिल्म में से एक हो सकता है अगर देखना क्षणों जहां हर किसी के सेलफोन शुरू होता है, उम्मीद है कि बस, beeping इस साल एक बार के विपरीत 2011 में जहां इस बुरी तरह धराशायी हो गईं. और आप उस पते पर जाना एक बार, आप एक सुपर सरल फार्म देखना चाहिए कि आप एक नाम है, एक सेल फोन संख्या, और एक सेलफोन वाहक कि वहाँ सूची से मेल खाता है, जाओ आगे और फॉर्म को भरें. लेकिन मारा नहीं है बस अभी तक जमा करें. फार्म इस तरह लग रहा है. आगे बढ़ो और में टाइप करें अपना नाम, फोन नंबर. OOP, किसी वक्र के आगे जा रहा है. यह ठीक है. ठीक है, सब लोग बाहर फार्म भरा है. यह एक पर काम करना चाहिए फोन, आप चाहते हैं भी, यदि. सब ठीक है, तैयार हो जाओ अपने निशान पर, जाने. यहाँ मारो. क्या? नहीं. मैं भगवान की कसम, मैं परीक्षण किया यह कई बार आज. तुम यह मिल गया? [आवाज INTERPOSING] डेविड Malan: ठीक है, उपयोगकर्ता त्रुटि शायद. यही दो है. यह एक के बाहर दो के लिए काम किया सौ, तीन, चार कुछ. ठीक है, यह अच्छी बात है. पांच में से चार के लिए कैसे के बारे में शुद्धता. तो क्या सिर्फ हुआ? तो शायद, देखने के बिना अपने स्क्रीन, क्यों यह errored हो सकता है? यह हम सिर्फ थे कि शायद भी कई कनेक्शन बनाने की कोशिश सब पर हार्वर्ड मेल सर्वर से एक बार में एक ही आईपी पते से. मैं नहीं था के बाद से मैं सिर्फ अनुमान लगा रहा हूँ परीक्षण की विलासिता कुछ के साथ इस कोड अग्रिम में 300 लोग लेकिन अब के लिए एहसास है कि कम से कम करना चाहिए कि इस समय काम किया डाल दिया है. सब ठीक है, तो क्यों है यह सब क्या हो रहा है के लिए और अधिक सार्थक? अच्छी तरह से पहले, एक त्वरित घोषणाओं की जोड़ी. एक तो, आप चांग में शामिल होने के लिए करना चाहते हैं, और दोपहर के भोजन में निक, और दूसरों को इस शुक्रवार, वहाँ सामान्य यूआरएल पर डेटिंग करते हैं. आप ध्यान केंद्रित करने की सोच रहे हैं में या सीएस में एक माध्यमिक कर रही है, आप एक sophomore कर रहे हैं, चाहे या नए, या यहां तक ​​कि जूनियर या इस बिंदु पर वरिष्ठ और अभी भी पाठ्यक्रम में निचोड़ कर सकते हैं, एहसास इंजीनियरिंग स्कूल है कि मुक्त बेन के लिए जमा हो जाता है और जैरी आइसक्रीम और सलाह इस बुधवार के बाद शीघ्र ही वर्ग सीएस इमारत में 4:00 पर मैक्सवेल डॉर्किन पर. यह बहुत तेजी से है स्क्रीन पर, बस जाओ एक के लिए cs50.harvard.edu को फेसबुक घटना के लिए लिंक जहां आप अधिक विवरण देख सकते हैं. इस बीच, मुझे लगता है मैं सही सोचा एक अन्य बात यह है कि मैं बुधवार को goofed. मार्क आईडी पता चला है कि फेसबुक पर तीन नहीं था. यह चार था. पता चला है कि वह और अधिक परीक्षण किया था खातों में मुझे याद है. लेकिन यह एक अवसर की तरह क्या महसूस किया ऐसा करने के लिए इस तरह एक यूआरएल को खींचने के लिए है. तो यह फेसबुक एक है कि पता चला है एपीआई, एप्लीकेशन प्रोग्रामिंग इंटरफेस, जो एक तंत्र जिससे आप है प्रोग्राम के डेटा का अनुरोध कर सकते हैं और फेसबुक पर मशीन वापस मिल पठनीय जानकारी, नहीं वेब पृष्ठों लेकिन सिर्फ कच्चे पाठ, कुछ जावास्क्रिप्ट वस्तु संकेतन बुलाया. और वास्तव में, अगर मैं इस यात्रा यूआरएल, और, डिफ़ॉल्ट रूप से, में ज़ूम इस सार्वजनिक रूप से मार्क है सुलभ जानकारी. और दिलचस्प विस्तार यहाँ सिर्फ इतना है कि उसकी आईडी है वास्तव में संख्या चार है, जो मैं जैसे ही मैं इस किया था एहसास हुआ. तुम्हें पता है, तो आपको यह खुद कर सकते हैं अपने फेसबुक उपयोगकर्ता नाम अगर तुम एक है. बस वहाँ शीर्ष इसे टाइप करें. और इस में से कोई भी निजी है. मैं अभी भी यह कर रहा हूँ गुप्त मोड में. तो मैं भी अंदर प्रवेश नहीं कर रहा हूँ. और आपको लगता है कि मैं देख रहे हैं जाहिरा तौर पर उपयोगकर्ता संख्या 6454 थी नहीं है जो फेसबुक पर इन दिनों बहुत बुरा. इसलिए किसी भी तरह, आप भी देखेंगे वहाँ अतिरिक्त जानकारी. और उपयोगी पहलू इस बात का है कि आप उस अपना खुद का सॉफ्टवेयर लिख सकता है कि किसी तरह इस तरह के डेटा को एकीकृत अपने खुद के आवेदन में. आप उपयोगकर्ताओं को सशक्त कर सकते हैं अपनी वेबसाइट में लॉग इन करें, उनके स्वयं के कस्टम उपयोगकर्ता नाम का उपयोग नहीं और पासवर्ड लेकिन शायद उनके फेसबुक लॉग इन और भी जानकारी मिलती है उनके दोस्तों के बारे में, वे इस तरह के, या इसी तरह की मंजूरी है. तो, भी, कि CS50 ध्यान दें अपनी ही एपीआई के कुछ है, कोर्स सूची डेटा के लिए एक, भोजन में hugs के मेनू के लिए कुछ हॉल के सभी इमारतों और स्थानों परिसर में हम साथ ही के लिए एक एपीआई है आप इसी प्रकार क्वेरी और प्राप्त कर सकते हैं आप एकीकृत कर सकते हैं कि वापस शाब्दिक डेटा एक PHP, या जावास्क्रिप्ट में, या यहां तक ​​कि, हालांकि आमतौर पर कम, एक सी अंतिम परियोजना आधारित. दरअसल आगे फाइनल के लिए परियोजना कुछ मील के पत्थर हैं. आप दूसरे दिन हम से एक ईमेल मिला. प्रस्ताव है कि एहसास इस आने वाले सोमवार कारण है. यह जरूरी बंधन, लेकिन आप नहीं है अपने शिक्षण साथियों प्राप्त करने की आवश्यकता है अनुमोदन करने से पहले उसके बाद किसी भी परिवर्तन. और फिर आगे हैं एक अन्य मील के पत्थर की संख्या. तो भी, आपको तंग करने के लिए, कुछ संभावनाओं के साथ, हम का एक गुच्छा है इन रंग प्रकाश बल्ब. और आप में से कुछ लोग अब कुछ है अपने छात्रावास के कमरे में इन के रूप में अच्छी तरह से. और वे भी एक एपीआई है. तो उन द्विआधारी बल्ब सप्ताह याद पहले कि दान ब्राडली और Ansel गूंथा हुआ आटा हमारे लिए बनाया. वे करने के लिए एक सॉफ्टवेयर इंटरफेस का इस्तेमाल किया इस प्रकाश बल्ब, पल में जो बिजली में खामियों को दूर किया जाता है और फिर वायरलेस के माध्यम से एक छोटी सी बात से जुड़ा है , यहाँ नीचे ब्रिज बुलाया एक छोटे रूटर मालिकाना तरह इस विशेष डिवाइस के लिए. मैं कैसे जानते हैं लेकिन अगर यह पता चला है हम सब अब कर के रूप में, एचटीटीपी संदेश भेजने, मैं करने के लिए इस तरह से एक संदेश भेज सकते हैं इस प्रकाश बल्ब पर या बंद करने के या के किसी भी नंबर करना इस पर अन्य आपरेशनों. इसे पाने के लिए नहीं कर रहा है कि, यह पोस्ट नहीं कर का नोटिस. पुट कहा जाता है एक और एक है. वास्तव में कुछ अन्य ऐसे verbs है. लेकिन, एक पथ वहाँ वहाँ नोटिस एपीआई स्लेश नई डेवलपर स्लेश, राज्य स्लेश, एक स्लेश, प्रकाश स्लेश. यही कारण है कि जाहिरा तौर पर सिर्फ है पथ कि कंपनी, फिलिप्स, आप मारा है फैसला एक HTTP अनुरोध के साथ आप राज्य बदलना चाहते हैं एचटीटीपी 1.1 का उपयोग कर बल्ब की. फिर खाली लाइन नोटिस. और फिर अंत में क्या तरह लग रहा है किसी प्रकार की एक सरणी की तरह, यह फिर से बुलाया जा रहा है जावास्क्रिप्ट वस्तु संकेतन, या जेसन. और क्या आप यहाँ देख कि है तीन महत्वपूर्ण मूल्य जोड़े हैं. एक कुंजी पर कहा जाता है. और इसकी कीमत जाहिरा तौर पर सच होने जा रहा है. चमक 128, है जो पूर्णांक किसी तरह का है. और फिर संक्रमण का समय है जाहिरा तौर पर है, जो शून्य, यह जा रहा है कि कितने समय तक पर इस बात को चालू करने के लिए ले. इसलिए अभी इस प्रकाश बल्ब बंद है. मुझे ठीक से करते हैं लेकिन ऐसा this-- मुझे एक छोटे से धोखा शीट के लिए जाना दान में स्थापित किया है कि advance-- और मैं जा रहा हूँ आगे बढ़ो और कॉपी करने के लिए निम्न आदेश. कर्ल, आप में से कुछ के रूप में CS50 पर gleaned हो सकता है चर्चा टेलनेट इस तरह की तरह एक उपयोगिता है आप HTTP अनुरोध अनुकरण कर सकते हैं कि, विशेष रूप से डालता है. मैं इस डेटा भेज सकते हैं, विशेष रूप से क्या हम बस पहले विशेष रूप से एक पल देखा यहाँ पर इस यूआरएल को. और फिर कर्ल संभालने जा रहा है अपेक्षित हेडर के सभी और वहाँ की पार्स करने. इसलिए मैं सभी के लिए है में इस की नकल है फिर एक टर्मिनल विंडो और हिट दर्ज करें. और प्रकाश बल्ब पर चला जाता है. और इस सब के माध्यम से जा रहा है अपने कंप्यूटर से wirelessly किसी तरह पुल के नीचे जो तो इस प्रकाश बल्ब के लिए बात कर रही है. मैं कुछ और कर सकते हैं. मैं इस बात कर सकते हैं उदाहरण के लिए लाल जाओ. मैं उदाहरण के लिए कर सकते हैं इस बात को हरी जाना. मैं यह नीले जाना कर सकते हैं. और इनमें से प्रत्येक में नोटिस उदाहरणों, मैं बदल रहा हूँ कि सभी तथाकथित रंग मूल्य है वास्तव में यह कुछ रंग दे. तो मुझे और साथ ही में यह एक पेस्ट करते हैं. अब यह नीला है. और तुम भी शौक़ीन कर सकते हैं बातों के हरे रंग के लिए जाना जाने where--. और मैं यह कर सकता है अपना खुद का कोड के साथ पाठ्यक्रम. लेकिन फिर भी एपीआई ही कायरता आपरेशन का समर्थन करता है इस तरह, अब जो परेशान नहीं करेगा अगले 30 सेकंड के लिए हमें. इसलिए इस बात का एक स्वाद है क्या तुम हो सकता है एक एपीआई के साथ क्या करना है, यह एक शामिल प्रकाश बल्ब. CS50 एक जोड़ी है कि नोट गूगल ग्लास के जोड़े आप चाहते हैं साथ कुछ से निपटने के लिए की तरह उन लाइनों, Arduino के Unos, जो छोटे छोटे कंप्यूटर रहे हैं, अनिवार्य रूप से, एक छोटे सर्किट बोर्ड पर आप कनेक्ट कर सकते हैं तारों और अन्य चीजों करने के लिए और वास्तव में नियंत्रण अपनी वास्तविक दुनिया वातावरण. और फिर एक जोड़े हैं हमारे पास इस बात का नए खिलौने. यह एक सचमुच सिर्फ पहुंचे मेल द्वारा दूसरे दिन, एक म्यो Armband. और मैं यह करने के लिए एक रास्ता है सोचा आप परियोजनाओं के बारे में उत्साहित आप के साथ उपयोग कर सकते हैं कि इस हार्डवेयर होगा इस छोटे क्लिप खेलने के लिए हो वे लोगों को तंग करने के लिए उपयोग अब हम भविष्य में जी रहे हैं कि. [संगीत खेल] डेविड Malan: बस कुछ ही हफ्तों में तो तुम बहुत CS50 मेले में वह शांत हो सकता है. एक और डिवाइस है कि हम हम कर रहे हैं कि का एक गुच्छा है परियोजनाओं के लिए बाहर ऋण के लिए खुश एक गति नियंत्रक कहा जाता है. यह एक छोटी सी यूएसबी डिवाइस है आप एक कंप्यूटर से कनेक्ट आप के साथ बातचीत करने की अनुमति देता है अपने लैपटॉप, मैक या पीसी, आप एक Xbox Kinect की तरह था, हालांकि के रूप में और वास्तव में ज्यादा शारीरिक गतियों बनाने जैसे हम इस में देखते हैं भविष्य की दृष्टि. [संगीत खेल] डेविड Malan: तो आप भी अगर पता नहीं कैसे ऐसा कुछ संभवतः आविष्कार या काम किया जा सकता है एक हार्डवेयर स्तर, कोई फर्क नहीं पड़ता पर. यहां तक ​​कि CS50 के कुछ ही महीनों के बाद, और प्रोग्रामिंग की समझ अधिक आम तौर पर, और वेब प्रोग्रामिंग अधिक हाल ही में, और फिर भी एपीआई, और HTTP, आप के माध्यम से उपयोग होगा सॉफ्टवेयर एपीआई आप अगर इन में से एक उधार लेना चाहते हैं उपकरणों वास्तव में यह करने के लिए बात करने के लिए और के बारे में चिंता करने की ज़रूरत नहीं अंतर्निहित कार्यान्वयन पूरी तरह से है जो विवरण, layering की इस धारणा के साथ संगत हम है कि एक अमूर्त सेमेस्टर भर में देखा. तो भी सप्ताहांत में, खबर के एक जोड़े के टुकड़े को देखा. सेमिनार में जाना है, पहले जाओ तुम अगर कुछ सीखना चाहते हैं विषयों के किसी भी नंबर पर अधिक. वहाँ यूआरएल देखें. और यह एक करने के लिए भेजा गया था जैसा कि आप जानते हैं, जो चांग ने मुझे, जो हाथियों की हमारी सेना मुद्रण है. इस प्रकार के रूप और यह एक शीर्षक था. मैं अपने नए टीवी के घबरा रहा हूँ. मुझे डर लग रहा क्यों इस चालू करने के लिए और आप पर बात भी होगी. इसलिए हम पर अब कर रहे हैं सेमेस्टर में बिंदु, भी, आप जहां भी अगर समझ की थोड़ी सी वेब कैसे काम करता है, और HTTP की, और इस तरह से सुरक्षा, बातें अपनी आंख को पकड़ने के लिए शुरू कर देना चाहिए. लेकिन इसके अलावा, आप समझ में आ जाएगा ये बातें कर रहे हैं या नहीं वास्तविक खतरों. तो मैं कुछ अंश ले लिया यहाँ इस लेख से. इस प्रकार के रूप और कहानी है. मैं अब का मालिक हूँ एक नए स्मार्ट टीवी, जो स्ट्रीमिंग देने का वादा किया मल्टीमीडिया सामग्री, खेल, अनुप्रयोग, सामाजिक मीडिया, और इंटरनेट ब्राउज़िंग, भी ओह और टीवी. केवल समस्या मैं अब कर रहा हूँ कि है इसका इस्तेमाल करने के लिए डर, लेखक कहते हैं. आप के माध्यम से पढ़ा, यदि आप भी होगा अपने टीवी के लिए 46 पेज गोपनीयता नीति. डेटा इस की राशि बात एकत्र चरम पर है. यह लॉग करता है कहाँ, कब, कैसे, और कब तक आप टीवी का उपयोग करें. यह कुकीज़ ट्रैकिंग सेट हम चर्चा की है, के रूप में और बीकन बनाया गया आप जब पता लगाने के लिए देखा विशेष सामग्री या एक विशेष ई-मेल संदेश आप अपने टीवी पर ईमेल की जांच करना चाहते हैं. यह क्षुधा रिकॉर्ड उपयोग, वेबसाइटों आप यात्रा, और आप सामग्री के साथ बातचीत कैसे, अपने स्मार्ट टीवी के माध्यम से इस बात का सब कर रहे हैं. यह भी creepier yet-- कि मेरे addition-- है एक कैमरे में बनाया गया है चेहरे की पहचान के साथ. उद्देश्य प्रदान करने के लिए है टीवी के लिए इशारा नियंत्रण और करने के लिए लॉग इन करने के लिए सक्षम अपने चेहरे का उपयोग खाता व्यक्तिगत. उल्टा पर, छवियों हैं टीवी पर बचाया बजाय अपलोड किए गए एक कंपनी के सर्वर से. नकारात्मक पक्ष पर, इंटरनेट कनेक्शन पूरे टीवी बनाता है हैकर्स की चपेट में है जो क्षमता का प्रदर्शन किया है मशीन का पूरा नियंत्रण लेने के लिए. अधिक परेशान, मानो कि नहीं था काफी चालाक, माइक्रोफोन है. टीवी एक आवाज दावा मान्यता सुविधा कि दर्शकों को नियंत्रित करने के लिए अनुमति देता है आवाज आज्ञाओं के साथ स्क्रीन. लेकिन सेवा के साथ आता है एक नहीं बल्कि अशुभ चेतावनी. कृपया ध्यान रखें कि अगर आपके बोले गए शब्दों शामिल निजी या संवेदनशील अन्य सूचना, जानकारी है कि पर कब्जा कर लिया डेटा के बीच किया जाएगा और एक तीसरी पार्टी को प्रेषित किया. समझे? निजी या संवेदनशील मत कहो अपने टीवी के सामने सामान. तो यह असली के लिए वास्तव में है. और यह मुश्किल है कि आप देखने के लिए अगर नहीं सर्वश्रेष्ठ खरीदें के लिए जाने या टीवी के लिए की तरह इन दिनों. वे किसी तरह सभी समझदार हो. और वे हो रही है होशियार और creepier. और वे आसानी से डाटा एकत्रित कर रहे हैं हम के बारे में बात की है कि मायनों में और फिर HTTP या माध्यम से इसे अपलोड कुछ सर्वर के लिए कुछ अन्य प्रोटोकॉल. तो यह एक मजेदार लेख का था इस ऑनलाइन वेबसाइट में यहां, जो एक के बारे में बात की थी विशेष बग या गलत कोड हम वास्तव में टाई कर सकते हैं कि पिछले हफ्ते की चर्चा में. तो इस शीर्षक के रूप में था , इस प्रकार है कहानी यहाँ जाता है जोश Breckman एक के लिए काम किया एक अनुबंध उतरा कि कंपनी एक सामग्री प्रबंधन विकसित करने के लिए प्रणाली, या वे कहते हैं के रूप में सीएमएस, एक काफी बड़े सरकारी वेबसाइट के लिए. शामिल परियोजना की ज्यादातर एक सामग्री प्रबंधन प्रणाली विकसित कर्मचारियों होगा कि इतना निर्माण और बनाए रखने में सक्षम कभी बदलते उनकी साइट के लिए सामग्री. हालात के लिए अच्छी तरह से सुंदर चला गया लाइव जाने के बाद कुछ दिनों के लिए. लेकिन दिन छह पर, चीजों को इतनी अच्छी तरह से नहीं चला गया. पर सामग्री के सभी वेबसाइट पूरी तरह से गायब हो गई थी. और सभी पृष्ठों डिफ़ॉल्ट करने के लिए नेतृत्व, सामग्री वेब पेज में प्रवेश करें. वूप्स. जोश में बुलाया गया था जांच और देखा विशेष रूप से परेशानी है कि एक बाहरी आईपी पता था में चला गया और सभी को नष्ट कर दिया सिस्टम पर सामग्री. आईपी ​​पता नहीं था कुछ विदेशी हैकर तुला के लिए सहायक नष्ट करने पर सरकार के बारे में जानकारी. यह googlebot.com करने का संकल्प गूगल की बहुत ही वेब रेंगने मकड़ी. वूप्स. अनुसंधान और पांव मार के एक बिट के बाद चारों ओर एक noncorrupt बैकअप लगता है, जोश समस्या पाया. एक उपयोगकर्ता की नकल की थी और एक से कुछ सामग्री चिपकाया दूसरे के लिए पृष्ठ, सहित एक संपादित हाइपरलिंक पेज पर सामग्री को संपादित करने के लिए. आम तौर पर यह हो नहीं होगा एक बाहर एक उपयोगकर्ता के बाद से जारी करेंगे एक नाम और पासवर्ड दर्ज करने की आवश्यकता, लेकिन सीएमएस प्रमाणीकरण प्रणाली, लॉगिन प्रणाली, खाते में नहीं लिया परिष्कृत हैकिंग गूगल मकड़ी की तकनीक. वूप्स. वैसे भी निकलता है, गूगल मकड़ी का प्रयोग नहीं करता यह कर सकते हैं जिसका अर्थ है कि कुकीज़, आसानी के लिए एक जांच बाईपास कुकी सेट पर लॉग ऑन है झूठे हो. यह भी करने के लिए ध्यान का भुगतान नहीं करता जावास्क्रिप्ट, जो सामान्य रूप से होगा शीघ्र और उपयोगकर्ताओं रीडायरेक्ट जो लॉग इन नहीं कर रहे हैं. हालांकि यह हर पालन करता है यह पाता है हर पृष्ठ पर हाइपरलिंक, साथ उन सहित शीर्षक में पृष्ठ हटाएं. वूप्स. तो यह अधिक में क्या मतलब है तकनीकी लेकिन काफी सुलभ शर्तें? यह सिर्फ मतलब है कि अपनी वेबसाइट भर में, वे इस एक के विपरीत यूआरएल नहीं था कि समस्या सात सेट में आप देख सकते हैं. समस्या में याद सात सेट या समस्या में पता सात सेट आप को चुनौती दी रहे हैं कि, अन्य बातों के अलावा, उपयोगकर्ताओं की ओर से शेयरों को बेचने के लिए. लेकिन जिस तरह से उस सुविधा को लागू के अपने उपयोगकर्ता में हाइपरलिंक के माध्यम से मिलता है इंटरफेस, शायद नहीं होशियार विचार आपकी साइट को किसी भी तरह है क्योंकि अगर सुलभ या तो एक मानव द्वारा जो चारों ओर क्लिक करने या एक खरीदें गूगल की या एक मकड़ी की तरह बॉट वे कहते हैं जैसा कि अभी है सूचकांक की कोशिश कर रहा वेब रेंगने एक खोज इंजन के रूप में वेब, वे बहुत आसानी से कर सकता है यूआरएल के इस तरह मिल के माध्यम से मारा. और कहा कि कार्यात्मक है बराबर करने के लिए, इस मामले में, गूगल के सभी शेयरों की बिक्री. अब स्पष्ट रूप से, यह पूरी तरह से है गदहे कि सीएमएस खेतों में प्रयुक्त जावास्क्रिप्ट और कुकीज़ इसके लॉगिन प्रणाली को लागू करने के लिए और, जैसा कि सर्वर साइड नहीं कर रही तुम लोग PSet में करते हैं और करेंगे 7-- एक login.php वहाँ हमेशा file--, हमेशा, हमेशा सुरक्षा होना चाहिए सर्वर साइड पर किया, नहीं ग्राहक पक्ष पर, क्योंकि इस रूप में लेख से पता चलता है और आप अपने आप को हो सकता है यह है, कुछ बिंदु पर देखते हैं एक उपयोगकर्ता के लिए तुच्छ अच्छा है या बुरा, बस जावास्क्रिप्ट बंद करने के लिए कुकीज़ का उल्लेख नहीं है. इसलिए कि अपने दैनिक डब्ल्यूटीएफ है. एक और, वहाँ जो , बस की तरह डरावना है इसलिए मैं अगर यह उल्लेख करेंगे केवल एक जीवन सबक के रूप में. आप किसी अनुप्रयोग का उपयोग जब भी Snapchat या तरह तरह बुलाया कि इन तस्वीरों के लिए ही पिछले कहते हैं पाँच सेकंड, दस सेकंड, या whatnot. वे कहते हैं कि है अल्पकालिक हो बिल्कुल नहीं मामला. डिजिटल, वहाँ कोई रास्ता नहीं है की तरह, वीडियो के कुछ फार्म को लागू करने के लिए, या छवि, या शाब्दिक ऐसी साझेदारी कि दूसरे छोर पर एक प्राप्तकर्ता किसी भी तरह डेटा नहीं बचा सकता. सबसे अनुभवहीन तरह, किसी को उनके फोन ले सकता है. और वे एक 10 सेकंड खिड़की है कुछ तस्वीर में दिख रही है, जबकि बस कुछ अन्य फोन लेने के लिए और जाहिर है, यह तस्वीर. तो आप की रक्षा कर सकते हैं डिजिटल कुछ उस तरह से. आप में से कुछ लेने के लिए कैसे पता अपने फोन पर स्क्रीनशॉट. वास्तव में, आप यह नहीं जानते हैं, एहसास कम से कम Snapchat कि, और मैं अन्य लगता है आवेदन पत्र इन दिनों, कम से कम अगर आप बताओ प्राप्तकर्ता वास्तव में है अपनी छवि के एक स्क्रीनशॉट ले लिया. लेकिन बुरा अभी तक, इस snappening था, किसी को हाल ही में यह गढ़ा के रूप में, जहां कुछ 100,000 तस्वीरें जारी की गई थी एक धार फ़ाइल कहा जाता है में विभिन्न वेबसाइटों पर अंततः. और ये एक पूरी गुच्छा निहित निजी संदेश और पदों की. यह, उनमें से ज्यादातर सौम्य पता चला है तो आप उम्मीद कर सकते नहीं क्या. लेकिन लोगों की थी क्योंकि एक तीसरे पक्ष की वेबसाइट का इस्तेमाल किया, उनके Snapchat के साथ प्रवेश यूज़रनेम और पासवर्ड और फिर उनकी तस्वीरें के सभी बचत इस तीसरे पक्ष की वेबसाइट पर. और यह कि तीसरे पक्ष था काट दिया गया था कि वेबसाइट, जो सिर्फ मतलब किसी को पता लगा कि कैसे उन छवियों के सभी 100,000 से अधिक पाने के लिए अपने स्वयं के हार्ड ड्राइव में बाद में साझा करने के लिए. सच कहूँ तो, यहां भी, यह की तरह है के गदहे कि Snapchat इस तरह से कार्यान्वित किया जाता है कि एक तीसरी पार्टी अवरोधन की तरह कर सकते हैं डेटा और यह करने के लिए बंधे नहीं है कि आपके फोन पर चल रहे स्वयं आवेदन. लेकिन यहां भी, इन एहसास है कि बातें, आश्चर्य से तुम्हें पकड़ नहीं होना चाहिए या कम से कम वहाँ होना चाहिए यहाँ में एक जीवन सबक हो. आप तकनीकी चाहते हैं तो विवरण, वहाँ उस यूआरएल को जाने कि आज की स्लाइड्स में है. सब ठीक है, पर किसी भी सवाल सीएस में आज के जीवन सबक? कि बंद करें. सभी में कुछ भी? सभी में कुछ भी? मैं जाँच बहुत से लोगों को मिल गया है अब उनके Snapchat या कुछ और. सब ठीक है, एसक्यूएल तो, संरचित क्वेरी भाषा. चलो इस लपेट दें. और यह भी, भले ही हम सिर्फ scratching रहे हैं इस की सतह भाषा, हम आपको दे दूँगा भाषा का पर्याप्त PSet 7 के रूप में इसलिए आप कुछ से निपटने कर सकते हैं काफी आम कार्यक्षमता. लेकिन एक जोड़े हैं एहसास हम आप की आवश्यकता नहीं है बातें, लेकिन वे होने के लिए जा रहे हैं महत्वपूर्ण अंतिम परियोजनाओं आ और निश्चित रूप से वास्तविक बनाने आते हैं वास्तविक उपयोगकर्ताओं के साथ वेबसाइटों इस डिजाइन निर्णय है. यह में पता चला है कि एक डाटाबेस, आप जैसे विकल्पों के गुच्छों है अपने कॉलम के लिए डेटा प्रकार और अन्य चीजें, लेकिन आप भी है एक तथाकथित भंडारण की पसंद अपने डेटा के सभी के लिए इंजन, फाइल सिस्टम की तरह, आप परिचित हो, अपने डेटा के सभी के लिए. क्या स्वरूप यह अंततः में संग्रहीत किया जाता है? और सबसे आम, शायद, कर दिया गया है MyISAM और InnoDB, तकनीकी शर्तें हम केवल बारे में परवाह करता हूँ कि इस हद तक कि एक है और एक नहीं है निम्नलिखित सुविधा. आपको लगता है कि मान लीजिए एक छोटे से छात्रावास फ्रिज. और तुम और लगता है कि आपके इस फ्रिज जो शेयर रूममेट, कहते हैं दूध का सच शौकीन हैं. और यह वास्तव में, कैसे है कहानी जिस तरह से मुझे वापस करने के लिए कहा गया था दिन में मैं एक पाठ्यक्रम ले लिया जब सीएस 161 आपरेटिंग सिस्टम कहा जाता है, जो इसी प्रकार इस विषय की पड़ताल. तो आप इस फ्रिज मिल गया है. आप दूध से बाहर रहे हैं. और अगर आप अपने रूममेट, घर आ जाओ अभी भी वर्ग या जो कुछ भी, और तुम मैं जा रहा हूँ फैसला बाहर जाने के लिए और कुछ दूध मिलता है. आप फ्रिज बंद तो, हवालात छात्रावास के कमरे, सड़क के पार जाना सीवीएस या जहाँ भी, और पाने के लिए लाइन में कुछ दूध खरीदने के लिए. इस बीच, अपने रूममेट घर हो जाता है वर्ग से, छात्रावास के कमरे में हो जाता है यह भी पता चलता है, फ्रिज खोलता है ooph, हम दूध से बाहर रहे हैं. तो वह या वह बंद कर देता है फ्रिज और फिर होता है अन्य सीवीएस पर जाने के लिए, जो होना होता है एक ब्लॉक दूर अन्य सीवीएस से वर्ग में, और लाइन में हो जाता है कुछ दूध वहाँ पाने के लिए. अब जाहिर है, कुछ ही मिनटों बाद में, आप दोनों वापस पाने के लिए, और सभी संभव का सबसे बुरा परिणामों हुआ है. तुम दोनों दूध है. और तुम सच में नहीं है दूध बहुत पसंद है. तो उनमें से एक बस है कुछ बिंदु पर खट्टा जा रहा है. तो अब आप एक अत्यधिक मात्रा में है फ्रिज में दूध के सभी क्यों है? [अश्राव्य] डेविड Malan: हाँ, तुम नहीं किया किसी तरह एक दूसरे के साथ संवाद कि आप दूध हो रहे थे. का सरलतम में तो इंसानों की दुनिया में तरीकों, आप इस मूर्खतापूर्ण बचने कैसे हो सकता है इस तरह से हो रहा परिदृश्य कि आप केवल एक के साथ खत्म होता है. उन्हें पाठ, हाँ अच्छा. लेकिन कैसे और क्या? बाद यह नोट. डेविड Malan: एक के बाद यह नोट. संचार के किसी भी फार्म कि अपने रूममेट बताता है दूध के लिए फ्रिज में मत जाओ. मैं अपने दम पर फिर से इकट्ठा जाने के लिए जा रहा हूँ. तो आप किसी भी तरह की जरूरत इस संसाधन लॉक करने के लिए. इसलिए हम this-- कर सकते हैं कि हम एक तरह से कर सकते हैं कहानी को बर्बाद और एक सीएस कहानी में बदल जाते हैं जिससे बस के रूप में एक तरह इस के बारे में सोच कुछ मूल्य भंडारण है जो चर,. और अभी, दूध के मूल्य शून्य है आप अपने जो नहीं चाहते रूममेट कि चर का निरीक्षण किया और फिर एक निर्णय उसे या खुद बनाना कि चर की स्थिति पर आधारित आप की प्रक्रिया में हैं उस चर के राज्य बदल रहा है. एसक्यूएल की लाइनों की तो एक है कि हम PSet 7 विनिर्देश में आप दे यहाँ यह एक है. और हम एक बड़ा खर्च नहीं करते समय की राशि है इसके बारे में बात कर. आप कोशिश कर रहे हैं लेकिन यह पता चला है, CS50 वित्त में कुछ शेयर खरीदने के लिए आप पहले से ही है कि आप में से कुछ शेयरों एक नंबर ऐसा करने में सक्षम होना चाहता हूँ तुरन्त एक साथ बातें की. आप करने में सक्षम होना चाहता हूँ प्रभावी ढंग से, एक उच्च स्तर पर, अगर मैं चाहता हूँ, सब सही जाँच मुफ्त के अधिक शेयर खरीदने के लिए, पैसा शेयर हम कल्पना के बारे में बात करते हैं, मैं पहले की जांच करना चाहते हैं कितने शेयर मेरे पास है. और यह पांच है लगता है. और मैं चाहता हूँ मैं अंत में, 10 और अधिक खरीद स्टॉक का 15 शेयरों करना चाहते हैं. तो मैं दो प्रश्न पूछना है. चर का राज्य क्या है? पंक्ति की स्थिति क्या है? मैं वर्तमान में कितने शेयरों की क्या ज़रूरत है? तो फिर तुम आगे बढ़ो और इसे अद्यतन करना चाहते हैं. इसलिए कि अनुरूप करने के लिए है आप पंक्ति जाँच कि में दूध, और फिर आप इसे अद्यतन करना चाहते हैं आप 10 शेयरों को खरीदने के लिए चाहते हैं, क्योंकि आप बदलना नहीं चाहते हैं 10 पंक्ति, आप 5 के लिए इसे बदलना चाहते हैं प्लस 10 या जाहिर है, 15. कोड की इस पंक्ति सुनिश्चित करता है कि उन दो वैचारिक विचारों एक साथ या बिल्कुल नहीं होता. कुछ अन्य उपयोगकर्ता सहित कोई भी, जो, एक ही वेबसाइट में लॉग इन किया है किसी भी तरह बाधित कर सकते हैं पंक्ति की जाँच और पंक्ति का अद्यतन करने, चुनें और अद्यतन अगर तुम जाएगा. और वाक्य रचना, सुपर स्पष्ट नहीं है लेकिन इस एक लाइन, जब तक यह, है है कि उन दोनों के संचालन सुनिश्चित करता है चर की जाँच करें या पंक्ति की जांच और पंक्ति atomically होने का अद्यतन करें. ओह यहाँ हम फिर जाओ. मेरे फोन पर टेक्स्ट संदेश. तो चलो इस एक बनाते हैं छोटे से अधिक ठोस. आप नहीं कर रहे हैं कि मान लीजिए एक रेफ्रिजरेटर को लागू करने, और आप को लागू नहीं कर रहे हैं PSet 7 लेकिन एक वास्तविक बैंक, या एक एटीएम, एक ऑटोमेटेड टेलर मशीन, जिससे आप किसी भी तरह सशक्त करने में सक्षम होना चाहता हूँ उपयोगकर्ताओं को धन हस्तांतरण के लिए एक खाते से दूसरे में. ठीक है, पर लटका. मैं अब इस म्यूट करने के लिए जा रहा हूँ, धन्यवाद. तो हम पैसे ले जाना चाहते हैं एक खाता संख्या से एक अलग खाते में संख्या, विशेष रूप से $ 100. तो यह एक मनमाना की तरह है उदाहरण के लिए, जिससे आप, एटीएम, दो एसक्यूएल निष्पादित करने के लिए चाहते हो सकता है प्रश्नों, एक खाते से घटाना और अन्य के खाते में जोड़ने. लेकिन आप इन यह सुनिश्चित करना चाहते दो लाइनें होती हैं या बिल्कुल नहीं दोनों. आप कुछ नहीं करना चाहती बाधित हो रही है. आप कुछ स्मार्ट बुरा आदमी नहीं है किसी भी तरह बैंक ऑफ अमेरिका पर खड़े सामने दो एटीएम के साथ उसके बारे में और किसी भी तरह की तरह में टाइपिंग एक ही समय में हासिल है, उम्मीद है कि बजाय $ 200 घटा की कोशिश कर रहा $ 100 और श्रेय केवल वाले 100 डॉलर की. संक्षेप में, आप यह करना चाहते हैं आप उम्मीद बिल्कुल के रूप में व्यवहार करते हैं. और अगर आप ऐसा रास्ता इस एसक्यूएल में डेटाबेस है आप क्या में लपेट एक लेन-देन कहा जाता है. सचमुच एसक्यूएल में, आप CS50 के कॉल कर सकते हैं बोली गंदें शब्द बोलना शुरू के साथ क्वेरी समारोह लेन-देन. तो फिर आप किसी भी नंबर पर अमल कर सकते हैं बाद में एसक्यूएल प्रश्नों की, लेकिन उनमें से कोई लेना डेटाबेस पर असर आप क्वेरी बोली गंदें शब्द बोलना फोन तक फिर PHP का प्रयोग करते हैं, तो संकल्प लें. और इस तरह, आप यह सुनिश्चित कर सकते हैं आप भी अगर 1,000 उपयोगकर्ताओं सभी अपने डेटाबेस मार एक ही समय में, एसक्यूएल इन वादा करता हूँ कि करेंगे दो प्रश्नों हो जाएगा एक के बाद एक सही लागू किया है. तो आप से अधिक के साथ अंत नहीं है दूध या गलत राशि, अंत में, पैसे की. इसलिए इसे ध्यान में रखना, PSet 7 के लिए इतना नहीं लेकिन अंतिम परियोजनाओं के लिए आप वास्तव में कर रहे हैं आसपास डेटा स्थानांतरित करने के लिए कोशिश कर रहा टेबल भर के रूप में आप यहां हो सकता है. लेकिन शायद यह भी सरल और अधिक एक उदाहरण के साथ समझने के लिए स्पष्ट यहाँ यह एक है. और किसी के बारे में हमें ईमेल यह सिर्फ दूसरे दिन वह इसी तरह कुछ ऑनलाइन देखा. मेरी जानकारी के लिए, पिन प्रणाली इतनी इस हमले की चपेट में नहीं है. और मुझे पता नहीं है अगर यह भी उपयोग करता है हुड के नीचे एसक्यूएल डाटाबेस. लेकिन के लिए इसका इस्तेमाल करते हैं चर्चा की खातिर. यहाँ स्क्रीन है कि हार्वर्ड लोगों करते हैं साथ में प्रवेश देखने के लिए जब उनके हार्वर्ड आईडी नंबर और उनके पिन. और पिन प्रणाली थे कि लगता है PHP में और एक MySQL के साथ लागू डेटाबेस, कोड है कि किसी को लिखा हो सकता है साल पहले इस तरह लग सकता है. सबसे पहले, एक की घोषणा चर बुलाया उपयोगकर्ता नाम. और बस से मिलता है कि पोस्ट superglobal. फिर एक और चर मिल पासवर्ड बुलाया और एक ही है. और फिर बस पर अमल यहाँ इस लंबे क्वेरी, उपयोगकर्ताओं जहां से चुनिंदा सितारा उपयोगकर्ता नाम फलां के बराबर होती है और पासवर्ड फलां के बराबर होती है. घुंघराले कि नोटिस ब्रेसिज़ मैं यहाँ का उपयोग किया है बस PHP के लिए मतलब है, जाओ आगे और विकल्प उन दोनों का मूल्य सही वहाँ चर. वे सख्ती से आवश्यक नहीं कर रहे हैं, लेकिन वे सूक्ष्म सिंटैक्स त्रुटियों से बचने के लिए करते हैं. तो यह पूरी तरह से लग रहा है पहली नज़र में सही. और यह है. आप लागू कर सकता है इस तरह से पिन प्रणाली. लेकिन एक सुपर लगता है कि स्मार्ट और दुर्भावनापूर्ण छात्र उसके या उसके पिन के रूप में इनपुट इस. तो मैं गोली को निकाल दिया है नकली अप में यहाँ के संकेत, और मैं वास्तव में पता चला है क्या वह या वह टाइपिंग हो सकता है. और यह थोड़ा अजीब है. लेकिन क्या संभावित पर तुम पर बाहर कूदता उपयोगकर्ता इनपुट के बारे में चिंता की बात, तुम्हें पता नहीं है, भले ही क्या एक एसक्यूएल इंजेक्शन हमले का मतलब है. क्यों कि यह एक छोटी सी गड़बड़ लगती है? वह क्या है? [अश्राव्य] डेविड Malan: या है एक छोटे से संदिग्ध. वास्तव में, कि एसक्यूएल से किसी कीवर्ड का. तो यह है कि अच्छी तरह से शुभ नहीं है. वहाँ तथ्य यह है कि इन सभी एकल उद्धरण there-- तथ्य, आसान में से एक में कुछ डेटाबेस तोड़ने के तरीके ओ रेली की तरह एक नाम में टाइप है कि उस में एक apostrophe है मानव जो लिखा क्योंकि अगर पर्दे के पीछे कोड खाते में नहीं ले करता है कि वहाँ एक उपयोगकर्ता में एक उद्धरण हो सकता है इनपुट, वह या वह इस्तेमाल कर रहा है और अपने कोड में एक उद्धरण, बुरी बातें हो सकता है. वास्तव में, बुरा अभी तक, इस पर विचार करें. इस कोड को फिर से था कि हार्वर्ड साल में किसी पहले पिन के लिए लिखा था प्रणाली, क्या है नोटिस के बारे में प्रतिस्थापित करने के लिए यूज़रनेम और पासवर्ड के लिए उपयोगकर्ता प्रकार अगर में फिर से अपने उपयोगकर्ता नाम के रूप skroob और फिर एक, दो, तीन, चार, पांच, एक बराबर गंदें शब्द बोलना भाव या भाव एक बोली. और क्या महत्वपूर्ण है नोटिस यहां उपयोगकर्ता नहीं किया गया है शुरू अपने पासवर्ड या एक बोली के साथ अपने पिन. और वे इसे समाप्त नहीं किया है एक बोली के साथ क्योंकि वह या वह मानते है कि अगर प्रोग्रामर, इतनी तेज नहीं था वे उन करने जा रहे हैं अपने कोड में एक उद्धरण. तो यहाँ कोड है. और प्रतिस्थापन कि अब हो सकता है यह है. और मैं रेखांकित किया है क्या उपयोगकर्ता में टाइप किया है. तो इससे पहले, के बाद. और अब हल्का चिंताजनक है क्या नोटिस इस एसक्यूएल कोड के ठीक आधे के बारे में? यह, बेशक, एक छोटे से अधिक जटिल है प्रश्नों की तुलना में हमने देखा है. लेकिन यह संभवतः नहीं कर सकते यदि आप एक अच्छी बात हो का चयन है, जो चुनिंदा सितारा, कह रही है उपयोगकर्ता की मेज से सब कुछ जहां उपयोगकर्ता नाम skroob के बराबर होती है और पासवर्ड बराबर होती है एक, दो, तीन, चार, पाँच या एक के बाद एक बराबर होती है. तार्किक निहितार्थ क्या है शायद कि पिछले खंड का? यह सिर्फ हमेशा सच है. और हम की तरह अनुमान लगाया है क्योंकि या परीक्षण और त्रुटि से बाहर लगा कि प्रोग्रामर जो लिखा था इस कोड नहीं किया एक मानव या बुरा व्यक्ति की आशा साथ ही एकल उद्धरण में टाइपिंग, हम वाक्य रचना कर सकते हैं एसक्यूएल क्वेरी पूरा अतर्कसंगत कुछ के साथ लेकिन कुछ है कि वाक्य रचना ग़लत है कि हमेशा सच करने के लिए मूल्यांकन करता है. इसलिए इस कोड को जवाब देने के लिए इस्तेमाल किया जा रहा है प्रश्न सही है या गलत चाहिए इस उपयोगकर्ता, पारित करने के लिए अनुमति दी जा जवाब हमेशा जाहिरा तौर पर हो रहा है यह हमेशा रहा है, क्योंकि सच करने के लिए डेटाबेस से कुछ का चयन करने के लिए पाठ्यक्रम में से एक हमेशा एक बराबर होती है. तो समाधान क्या है? खैर PSet 7 में, हम वास्तव में सभी एक साथ इस से बचने. हम आपको एक क्वेरी समारोह देते हैं, और हम प्रश्न चिह्न का उपयोग करने के लिए प्रोत्साहित करते हैं प्लेसहोल्डर के रूप में, समान printf का% s भावना में, लेकिन प्रश्न चिह्न के बारे में महत्वपूर्ण क्या है आप वास्तव में के माध्यम से पढ़ा तो यहाँ है functions.php, जहां हमारे क्वेरी समारोह, कार्यान्वित किया जाता है उन प्रश्न चिह्न से बच रहे हैं, जिससे संभावित खतरनाक कुछ भी एक ही भाव दिया जाता है जैसे एक भाग निकले एकल बोली में. तो यह क्या है वास्तव में आप अगर हो रहा CS50 के प्रश्न समारोह या किसी भी संख्या का उपयोग तीसरे पक्ष के मुक्त पुस्तकालयों की कि एक ही है. इस मामले में कोई बात नहीं, हरे रंग में, उपयोगकर्ता एक ही भाव में टाइप गया है क्वेरी क्योंकि हम ने लिखा कि समारोह है पहले backslashes जोड़ने के लिए जा किसी भी तरह के खतरनाक भाव. तो इस में, नहीं है तथ्य यह है, कानूनी होने जा रहा. यह देख एक पागल में टाइपिंग की तरह है जाहिर है, नहीं जा रहा है, कि पासवर्ड skroob की वास्तविक पासवर्ड किया जाना है. तो CS50 के लिए takeaway, एक है बिल्कुल हमेशा कुछ का उपयोग CS50 के प्रश्न समारोह की तरह या अंतर्निहित पुस्तकालय, जो पीडीओ बुलाया होना होता है. लेकिन कभी नहीं, कभी नहीं, इस तरह कोड ऐसा कभी नहीं भागने या scrubbing के बिना के रूप में वे अपने निवेशों का कहना है. और आप कुछ बिंदु पर शायद इस तरह से कुछ वेबसाइट भर में आ गए. वास्तव में, यह मामला प्रतीत हो रहा है स्थानों में हवाई अड्डों और होटलों में जैसे वे मुफ्त वाई-फाई है जहां आप के लिए प्रवेश करने के लिए है कि का उपयोग, इन वेबसाइटों हमेशा से रहे हैं बुरी तरह से लागू किया. और तो घर व्यायाम में मज़ा का एक तरह से, नहीं दुर्भावनापूर्ण उद्देश्यों या अधिक के लिए सड़क पर एक मजेदार की व्यायाम, सिर्फ टाइप करने के लिए है एक apostrophe, एक भी बोली, कुछ वेबसाइट पर एक फार्म में और देखो क्या होता है. और सर्वर क्रैश हो या देता है आप त्रुटि संदेश के कुछ प्रकार, यह बहुत अच्छी तरह से हो सकता है कि किसी को इस प्रत्याशित नहीं किया गया है. और फिर आप उचित सचेत करना चाहिए अधिकारियों और आगे नहीं बढ़ना. तो अब तुम लोगों को उम्मीद है कि ऐसा करना चाहिए यहाँ थोड़ा और अधिक geek हास्य समझते हैं. [हँसी] डेविड Malan: आप एक geek रहे हैं. अगले कई के लिए साल, तुम्हें याद होगा जो थोड़ा बॉबी टेबल्स है यहाँ इस कार्टून की वजह से. तो जब मन में रखना है कि हम संदर्भ स्विच एक आखिरी बार जावास्क्रिप्ट को आज. हम अपेक्षाकृत कम खर्च किया है PHP के वाक्य-विन्यास पर समय यह वास्तव में है क्योंकि सी के लिए सुपर समान और अच्छी तरह से पर्याप्त है, जावास्क्रिप्ट भी सी वाक्य रचना के लिए सुपर समान है हम में देखेंगे और साथ ही बस एक पल और हम करेंगे विशेष रूप से इस सप्ताह बाद में देखते हैं. आप इस भाषा के साथ क्या कर सकते हैं, हालांकि, सभी को और अधिक शक्तिशाली है विशेष रूप से एपीआई के साथ. लेकिन पहले एक त्वरित दौरा. एक तो, जावास्क्रिप्ट में, वहाँ जो अच्छा है कोई मुख्य समारोह,. PHP के साथ के रूप में, तुम सिर्फ कोड लिख सकते हैं. शर्तें इस तरह दिखेगा. और बूलियन अभिव्यक्ति हो सकता है इस तरह से या इस तरह दिखेगा. स्विच मौजूद हैं, और वे इस तरह लग सकता है. चार छोरों इस तरह दिखेगा. छोरों इस तरह लग रहे हैं. क्या whiles इस तरह दिखेगा. और फिर सरणियों की तरह लग रहे यह PHP के लिए बहुत समान. लेकिन, जावास्क्रिप्ट आप में है कि नोटिस एक डॉलर के साथ नहीं एक चर घोषित नहीं एक डेटा प्रकार के साथ, लेकिन सचमुच, हस्ताक्षर यह पहले चर के लिए वर कह कर. यह भी शिथिल टाइप है उस में यह प्रकार है, लेकिन आप उन्हें स्पष्ट रूप से घोषणा नहीं करते. और फिर एक स्ट्रिंग के लिए उदाहरण के लिए, लग सकता है इस तरह, कि स्ट्रिंग इस मामले में बुलाया जा रहा है. और फिर एक वस्तु. और ये हम लंबे समय से पहले अधिक देखेंगे. और एक वस्तु शायद में से एक है सबसे अधिक डेटा संरचनाओं देखा एक जावास्क्रिप्ट में आधारित कार्यक्रम यह अनुमति देता है आप मनमाने ढंग से संबद्ध करने के लिए महत्वपूर्ण मूल्य जोड़े बस PHP के साहचर्य सरणियों की तरह और सिर्फ अपने खुद के हैश तालिका की तरह हम कार्यान्वित के रूप में या कोशिश वापस एक कुछ हफ्तों. तो चलो वास्तव में देखते हैं क्या हम जावास्क्रिप्ट के साथ क्या कर सकते हैं. और विशेष रूप से, यह है सुविधाओं के एक कपड़े धोने की सूची ब्राउज़रों कि है कि हमें जावास्क्रिप्ट हुक करने की अनुमति निम्नलिखित तरीके से एक वेबसाइट में. जावास्क्रिप्ट अक्सर एक के रूप में प्रयोग किया जाता है ग्राहक पक्ष पटकथा भाषा. यह संकलित नहीं है. यह भी व्याख्या की है. लेकिन PHP के विपरीत, जो चल रहा है सर्वर पर, वेब सर्वर में, या के गहरे अंदर ग्राहकों, जावास्क्रिप्ट कि उस में अलग है आमतौर पर ब्राउज़र में चलाता है. इसलिए किसी भी जावास्क्रिप्ट कोड आप लेखन शुरू PSet 8, या अपने अंतिम परियोजना के लिए, या असली दुनिया में आम तौर पर हो रहा है बिल्कुल, सर्वर पर बचाया जा एक डॉट एचटीएमएल या डॉट में जावास्क्रिप्ट फ़ाइल के लिए जे एस. लेकिन ब्राउज़र जा रहा है जावास्क्रिप्ट कि डाउनलोड करने के लिए क्रोम के लिए अपने स्वयं के उदाहरण के लिए कोड, आईई, या फ़ायरफ़ॉक्स, या जो कुछ भी या. और कोड वास्तव में हो रहा है अपने खुद के ब्राउज़र के अंदर निष्पादित. बस इस और अधिक वास्तविक बनाने के लिए, के ठोस रूप में यह देखते हैं. हम इस कोड क्या करता है पता नहीं है वास्तव में यह माध्यम से पढ़ने के बिना. लेकिन मुझे Facebook.com के लिए चलते हैं में प्रवेश करने के बिना. मुझे तत्व का निरीक्षण करने के लिए जाने के लिए चलते हैं, हम कहते हैं, नेटवर्क और पृष्ठ पुनः लोड. और हम see-- हूँ मुझे पुनः लोड शिफ्ट करते हैं पेज नया करने के लिए सभी अनुरोधों को प्राप्त करने के लिए. और बहुत पहले मैं देख फ़ाइल सीएसएस, सीएसएस है. यहाँ पहली बार है जावास्क्रिप्ट फ़ाइल, और मेरे पास कोई ऐसा करता है क्या विचार है, लेकिन यहाँ जावास्क्रिप्ट कोड के कुछ है कि फेसबुक ड्राइव. यह भी सच है कि नहीं है में ज़ूम खुलासा. यह अभी भी बस के रूप में बेतुका है. लेकिन तुम, वहाँ भी नीचे नीचे देखेंगे इन जावास्क्रिप्ट फ़ाइलों का और भी अधिक. वूप्स. यह एक पिंग है. चलो थोड़ा नीचे चलते हैं आगे, आगे, आगे. एक भी नहीं है. एक भी नहीं है. एक भी नहीं है. तो भी फेसबुक हालांकि, पीछे दृश्यों, PHP में भाग में लिखा है और फेसबुक के अपने संस्करण क्या है, जावास्क्रिप्ट की एक बड़ी राशि है. वास्तव में, के किसी भी आप फेसबुक पर करते हैं बातें, इनलाइन समय अद्यतन के किसी भी कि, वास्तविक समय में उस का सब हुआ जावास्क्रिप्ट के द्वारा संचालित है. हाँ? दर्शक: मुझे यकीन नहीं है इस फेसबुक है, लेकिन मैं फेसबुक विकसित सोचा कि अपने खुद के घर में कोड भाषा? डेविड Malan: वे किया था. मैं के विचरण कहना तो यही कारण है कि PHP का है कि वे वास्तव में हिप हॉप बुलाया ऐसे में जोड़ा सुविधाओं जब कि मार्क पहला, फेसबुक कार्यान्वित यह PHP में लिखा गया था. और उस तरह की बनी हुई है सामने के छोर भाषा की तरह वे ज्यादा के लिए उपयोग करने वाले उनके कोडिंग, लेकिन इसके बारे में है कि एक भाषा नहीं किया गया है अरबों के लिए विशेष रूप से अच्छी तरह से तराजू लोगों का. और इसलिए वे अपने ही जोड़ लिया है पर्दे के पीछे सुधार. और वे किसी भी संख्या का उपयोग अन्य भाषाओं की के विभिन्न टुकड़ों के लिए उनके बुनियादी ढांचे. तो हाँ, इसके बारे में एक विचरण है हम अब PHP के रूप में जानते हैं क्या. तो चलिए एक नजर डालते हैं उदाहरण के एक जोड़े पर हम यहां जावास्क्रिप्ट का उपयोग कैसे हो सकता है. आज के स्रोत कोड में, हमारे पास एक फ़ाइलों का गुच्छा, जिसमें से पहले, के डोम शून्य बुलाया करते हैं. निम्नानुसार तो डोम शून्य दिखता है. मुझे इस निर्देशिका में चलते हैं और domzero.html खोल, जिनमें से शीर्ष एक डॉक्टर प्रकार है घोषणा, यहाँ कह एचटीएमएल 5 आता है. और अब यहां एक HTML टैग है. यहाँ सिर टैग है. और यहाँ आज नया क्या है. अब हम एक स्क्रिप्ट टैग पेज के सिर के अंदर. और यह जाहिरा तौर पर करता है बहुत कम है, लेकिन नोटिस मैं परिभाषित किया है कि एक स्क्रिप्ट, एक जावास्क्रिप्ट. और एक तरफ, इस के बाद के रूप में एक आम धारणा है, जावास्क्रिप्ट बिल्कुल कुछ भी नहीं है जावा, भाषा से कोई लेना देना आप में से कुछ हो सकता है APCs में सीखा है. यह एक विपणन की अधिक था कुछ से बात, पहले जावा साल के coattails सवारी. लेकिन जावास्क्रिप्ट, कुछ के साथ क्या करना जावा, बस इसी तरह, और annoyingly, भ्रामक नाम दिया है. तो यहाँ आप एक समारोह की घोषणा कैसे है जावास्क्रिप्ट में, सचमुच समारोह का कहना है, तो समारोह का नाम, तो किसी भी यह लग सकता है तर्क, PHP में बस की तरह. जावास्क्रिप्ट, सबसे में से एक में बदल जाता है अस्तित्व कि कष्टप्रद कार्यों चेतावनी है. यह एक छोटी सी खिड़की है कि पॉप अप और आपको सूचित करेंगे जानकारी के कुछ टुकड़े करने के लिए. यह आम तौर पर सिकोड़ी है. लेकिन हम इसे के रूप में इस्तेमाल करेंगे हमारी यहां पहले अभ्यास. जावास्क्रिप्ट की कुछ सुविधाओं पर ध्यान दें. एकल उद्धरण और डबल उद्धरण वास्तव में अब और कोई बात नहीं है. एकल उद्धरण और डबल उद्धरण interchanged किया जा सकता है, सी में जबकि, आप का उपयोग करने के लिए है तार के लिए डबल उद्धरण, और आप ही दो वर्ण के लिए उद्धरण. जावास्क्रिप्ट दुनिया में, कई लोगों, ज्यादातर लोगों को तार के आसपास उद्धरण का उपयोग बस यह एक शैलीगत बात है क्योंकि. लेकिन प्लस ऑपरेटर, यहाँ क्या हो रहा है जो हम पहले नहीं देखा है? दर्शक: कड़ी. डेविड Malan: कड़ी. तो सी भी यह जरूरी नहीं है. PHP के डॉट ऑपरेटर है, जो ऐसा करता है. जावास्क्रिप्ट प्लस ऑपरेटर है, जो भ्रामक सिर्फ जावा की तरह है. अब यहाँ पर क्या हो रहा है? यहाँ तो जहां एक बुनियादी है उस तस्वीर की समझ हम एक जोड़े को फेंक दिया दिनों पहले खेलने में आता है. हम एक सरल था जब याद रखें एक के संस्करण HTML page-- यह सिर्फ हैलो दुनिया, कहा. और फिर हम एक पेड़ आकर्षित किया ठीक है, जो आयतों और लाइनों की एक गुच्छा था एक परिवार के पेड़ की तरह उन्हें जोड़ने. इसलिए कि तथाकथित डोम है या दस्तावेज़ ऑब्जेक्ट मॉडल. और यह आप उपयोग कर सकते हैं कि पता चला है वाक्य रचना के साथ उस पेड़ में आयतों निम्नलिखित की तरह. तुम सचमुच एक है, जो दस्तावेज़ कहते हैं एक जावास्क्रिप्ट में विशेष वैश्विक चर एक समारोह है कि कार्यक्रम आप उपयोग कर सकते हैं कि इसके साथ जुड़े एक संरचना के समान है, लेकिन आप बस , डॉट और फिर समारोह के नाम का कहना है आईडी के आधार पर तत्व मिलता है. मैं प्राप्त करना चाहते तत्व है जाहिरा तौर पर गंदें शब्द बोलना नाम बोली. और फिर मैं अपने मूल्य प्राप्त करना चाहते हैं. अब हम खुद से आगे हो रही है. मैं भी यकीन नहीं है क्या इस सब के बारे में है. HTML करने के लिए चलो तेजी से आगे पर सुपर सरल है जो पेज,. मैं परिभाषित किया है कि सूचना एक यहाँ नीचे फार्म. मैं यह एक अद्वितीय दिया है नोटिस हम इस्तेमाल नहीं किया है, भले ही आईडी, इस विशेषता से पहले. लेकिन इस HTML में मौजूद है. आप विशिष्ट कुछ हिस्सा पहचान कर सकते हैं इस तरह से एक पहचानकर्ता के साथ HTML की. सूचना अब this-- एचटीएमएल पता चला है कि कपड़े धोने की सूची के अनुसार, समर्थन करता है एक पल पहले, एक पूरी घटना संचालकों का गुच्छा. और इस घटना हैंडलर सबमिट पर कहते हैं. इस के उपयोगकर्ता प्रस्तुत करने पर फार्म, निम्नलिखित कोड कहते हैं. और उस कोड जा रहा है कहा जाता है या निष्पादित किया जाना है वास्तव में यह, यूनानी है समारोह वापसी झूठी द्वारा पीछा किया. बाकी सब कुछ चाहिए सुंदर परिचित हो. यहाँ जिसका प्रकार पाठ का एक इनपुट, है आईडी, इस मामले में, नाम होने जा रहा है. हम एक वास्तविक नाम विशेषता नहीं है इस time-- और एक बटन सबमिट करें. तो आने वाले पृष्ठ इस तरह दिखता है. और जिसके परिणामस्वरूप व्यवहार, आप इस तरह दिखता है, देख लेंगे. पेज यह स्थानीय मेजबान हैलो कहते हैं, एक aesthetically मनभावन शायद ही दाऊद, एक उपयोगकर्ता को नमस्कार करने के लिए जिस तरह से. लेकिन वास्तव में क्या हो रहा है? खैर, यह क्या है पर विचार करें. यह एक पाठ क्षेत्र है. के अनुसार यहाँ एचटीएमएल, मैं यह दिया है एक अद्वितीय पहचानकर्ता कहा जाता बोली गंदें शब्द बोलना नाम. इस बीच, मैं जब कह दिया उपयोगकर्ता इस प्रपत्र प्रस्तुत करें दर्ज मार या क्लिक करके भेजें बटन, नमस्कार बुलाया समारोह कॉल और फिर वापसी झूठी. के रिवर्स में उन पर विचार करें. मैं, भेजें पर क्लिक करने पर ध्यान दें इस पेज का यूआरएल नहीं बदलता है. ब्राउज़र की आइकन कताई शुरू नहीं किया. मैं कहीं जाना नहीं था, और वह है सचमुच मैं वापसी झूठी कहा है. झूठी शॉर्ट सर्किट या बंद हो जाता है लौटें एक फार्म के डिफ़ॉल्ट व्यवहार. तो हमें छोड़ देता है तो के साथ कि यह एक अंतिम प्रश्न. नमस्कार क्या करता है? खैर, जाहिरा तौर पर बधाई कहा जाता है एक समारोह कॉल चेतावनी, एक में गुजरता है कि लंबी बहस एक साथ एक concatenating के परिणाम स्ट्रिंग का गुच्छा, अल्पविराम अंतरिक्ष नमस्कार, तो इस रिटर्न जो भी हो. तो दस्तावेज़ एक वैश्विक तरह है उस पेड़ की कि जड़ को चर, एक विशेष समारोह बुला अन्यथा अब एक पद्धति के रूप में जाना जाता है. है कि एक समारोह एक चर रहा है के अंदर एक विधि के बजाय एक समारोह बुलाया. तो आईडी के आधार पर तत्व मिलता है. क्या तत्व आपको करना अपनी आईडी के आधार पर प्राप्त करना चाहते हैं? गंदें शब्द बोलना नाम बोली और तब विशेष रूप से महत्व देते हैं. तो दूसरे शब्दों में, कि कोड बस जिसका आईडी नाम है पाठ क्षेत्र पाता और फिर अपने मूल्य हो जाता है. तो अगर मैं इस परिवर्तन के लिए गए थे और, डेविन के बजाय डेविड का कहना है और हम अब सबमिट करें पर क्लिक डेविन के लिए एक ग्रीटिंग है. तो सब ठीक है और अच्छा ठीक है,. लेकिन हम कर सकते हैं चलो देखते हैं अभी के बाद से क्लीनर यह एक छोटे से इस तरह कोड लिखने आम तौर पर सिकोड़ी होने जा रहा. यह डरावना लग रहा है. लेकिन पहले क्या है आप यहाँ ध्यान दें कि अंतर इसके अलावा इस संस्करण में डोम एक को बदलने का नाम? क्या संरचनात्मक रूप से अलग दिखता है अन्य बनाम इस बारे में? हाँ? दर्शक: फॉर्म में है अब स्क्रिप्ट के ऊपर? डेविड Malan: हाँ, प्रपत्र शीर्ष पर है कुछ जिज्ञासु कारण के लिए स्क्रिप्ट की. तो पहली बात कि है वह भी मुझ पर बाहर कूदता है. और शुक्र है कि कम से कम, इस हिस्से समान है. ऐसा लगता है कि केवल एक चीज है अलग होने के लिए इस है. यहाँ तो साफ है क्या जावास्क्रिप्ट 2 के बारे में. और यह करने के लिए यह कठिन बना देता है पहली नज़र में समझने, विशेष रूप से अंतिम परियोजनाओं अगर के लिए यदि आप ऑनलाइन नमूना कोड पर देख रहे हैं लेकिन यह कुछ करने के लिए नीचे फोड़े बुनियादी वाक्यात्मक सुविधाओं. यहाँ है कि फिर से है वैश्विक चर दस्तावेज़. यहाँ फिर उस विधि या समारोह है कि आईडी के आधार पर तत्व मिल कहते हैं. मैं चाहता हूँ इस समय डेमो बुलाया आईडी मिलता है. वह कहां है? यही कारण है कि जाहिरा तौर पर सही है यहाँ, फार्म ही. और अब नोटिस कि जाहिरा तौर पर अगर मैं पेड़ से नोड वापस मिलता है फार्म का प्रतिनिधित्व करता है खुद, नहीं एक पाठ क्षेत्र, यह कि, कि फार्म पता चला है पेड़ से नोड या आयत, , हम एक संपत्ति को बुलाता हूँ क्या है बहुत, बहुत, बहुत समान सी में एक संरचना को आत्मा में यह बस है इस आयत के अंदर एक डेटा सदस्य है. तो मैं फार्म मिल गया है यहां, और मैं संलग्न कर रहा हूँ, अपने पर प्रस्तुत करने के लिए या मैं बताए हूँ हैंडलर या यों कहें पर संपत्ति जमा करें निम्नलिखित समारोह. और यह अब तक, सा पागलपन है, बात इस प्रकार अब तक वाक्य रचना. यह जावास्क्रिप्ट में और में पता चला है पीएचपी, और स्पष्ट रूप से सी में उस बात के लिए, हम ऐसा नहीं करते हैं, भले ही आप कर सकते हैं बेनाम, गुमनाम, या उर्फ ​​लैम्ब्डा जोड़ना एक नाम नहीं है कि कार्यों लेकिन फिर भी कहा जा सकता है. तो क्या मैं यहाँ क्या कर रहा हूँ मैं बताए रहा है इस पर, संपत्ति जमा करें जो एक, मेरे डोम पेड़ की इस नोड के अंदर है समारोह, समारोह सूचक अगर तुम जाएगा. उस समारोह नहीं है नाम है, लेकिन है कि नहीं करता हम देखेंगे क्योंकि बात एक पल में यह कॉल करने के लिए कैसे. इस समारोह में कहा जाता है, इस कोड तो, मार डाला जाता है झूठी पहले की तरह लौटा है. लेकिन मैंने क्या किया नोटिस. में इस बिंदु पर कहानी, मैं एक रूप है. यह डेमो नामक एक अद्वितीय पहचान पत्र मिल गया है. यहाँ नीचे, मैं एक स्क्रिप्ट टैग कि निम्नलिखित कोड कार्यान्वित. ऐसा लगता है कि नोड में करने के लिए देता यह करने के लिए पेड़ पर प्रस्तुत है संपत्ति यहां इस समारोह. और बस ब्राउज़रों कैसे काम की प्रकृति से, मैं अब जमा करें या हिट दर्ज करें क्लिक करते हैं, उस समारोह कहा जाता हो जा रहा है. यह जो क्योंकि एक नाम की जरूरत नहीं है बिल्ली इसे क्या कहते हैं परवाह नहीं है. यह कभी भी हो रहा है कि केवल समय मैं फार्म जमा जब कहा जाता है. मेरे लिए कोई ज़रूरत नहीं है, मानव डेवलपर, वास्तव में इसे कहीं और कॉल करने के लिए. अब सिर्फ एक नमूना के रूप में, कि मानो पर्याप्त झुकने मन नहीं कर रहे थे, हम भी यह कर सकते हैं अधिक गुप्त का उपयोग कर देखो एक सुपर लोकप्रिय पुस्तकालय jQuery का आह्वान किया. तथ्य jQuery और जावास्क्रिप्ट में अक्सर सम्मिश्रण कर रहे हैं. और क्या हम बुधवार को करूँगा शुरुआत है इस भाषा और इन पुस्तकालयों का उपयोग तेजी से अतुल्यकालिक निर्माण करने के लिए और गतिशील अनुप्रयोगों मानचित्र की तरह हो रही है आवेदन पत्र, आवेदन पत्र कि असली में वेबपेज अद्यतन समय, ज्यादा फेसबुक या Gchat की तरह करते हैं, और अब अपने आप को सीमित एक हो या सिर्फ डाक द्वारा भेजें मार अकेले. तो मैं बुधवार को आप देखेंगे. [संगीत खेल]