1 00:00:00,000 --> 00:00:03,000 [Powered by Google Translate] [Walkthrough समस्या सेट 7] 2 00:00:03,000 --> 00:00:04,400 [Zamyla चान] [हार्वर्ड विश्वविद्यालय] 3 00:00:04,400 --> 00:00:07,640 [यह CS50] [CS50.TV] 4 00:00:07,640 --> 00:00:12,090 >> सभी को नमस्कार, और 7 Walkthrough, CS50 वित्त में आपका स्वागत है. 5 00:00:12,090 --> 00:00:15,090 अब हम CS50 में आधिकारिक तौर पर कर रहे हैं psets के सभी के साथ किया है, 6 00:00:15,090 --> 00:00:19,380 और हम सिर्फ एक है जो एक मजेदार कार्यान्वयन किया जा रहा है साथ छोड़ रहे हैं 7 00:00:19,380 --> 00:00:23,770 एक वेबसाइट है जहाँ उपयोगकर्ताओं में CS50 वित्त करने के लिए लॉग इन कर सकते हैं 8 00:00:23,770 --> 00:00:25,830 और खरीदने और बेचने के शेयरों. 9 00:00:25,830 --> 00:00:32,280 >> आज, हम अपने निपटान में कुछ उपकरणों के लिए जा रहे हैं. 10 00:00:32,280 --> 00:00:34,320 हम करने के लिए अनुमति के बारे में बात कर रही हो जा रहे हैं. 11 00:00:34,320 --> 00:00:36,380 जब भी आप एक वेब फ़ोल्डर है, 12 00:00:36,380 --> 00:00:40,800 आप करने के लिए उपयोगकर्ताओं को कुछ फ़ाइलों को निष्पादित करने के लिए अनुमति देना चाहते करने के लिए जा रहे हैं 13 00:00:40,800 --> 00:00:42,500 लेकिन यह भी सिर्फ अन्य लोगों को पढ़ने के लिए, 14 00:00:42,500 --> 00:00:45,150 तो हम अनुमतियाँ में देखो और आप उन कैसे सेट कर सकते हैं. 15 00:00:45,150 --> 00:00:49,630 फिर हम PHP, HTML, और SQL कोड में देखने जा रहे हैं. 16 00:00:49,630 --> 00:00:51,990 >> पहले अनुमति,. 17 00:00:51,990 --> 00:00:56,060 , जब आप एक निश्चित निर्देशिका में टर्मिनल में कर रहे हैं 18 00:00:56,060 --> 00:01:00,430 तो आप क्या करना चाहते है आप chmod कमांड चलाना चाहते हैं. 19 00:01:00,430 --> 00:01:03,750 कि या तो अक्षर या संख्या के द्वारा पीछा किया है 20 00:01:03,750 --> 00:01:08,100 क्या आप मूल रूप से दुनिया को देखने के लिए करना चाहते हैं इसी 21 00:01:08,100 --> 00:01:09,830 तुम अपने आप को देखने के लिए, आदि 22 00:01:09,830 --> 00:01:13,350 उदाहरण के लिए, जब भी आप एक फ़ोल्डर है 23 00:01:13,350 --> 00:01:15,560 तो आपको लगता है कि फ़ोल्डर है कि हर किसी को यह देखता है द्वारा निष्पादन योग्य होना चाहते हैं, 24 00:01:15,560 --> 00:01:19,500 तो आप क्या करेंगे क्या है आप आदेश chmod + x चला सकता है 25 00:01:19,500 --> 00:01:21,050 और फिर अपने फ़ोल्डर का नाम. 26 00:01:21,050 --> 00:01:28,110 जब आप सीएसएस फ़ाइलों या छवि फ़ाइलों के रूप में एक फ़ाइल है - 27 00:01:28,110 --> 00:01:33,060 JPEGs और बिटमैप, कि चीजों की तरह, या किसी भी जावास्क्रिप्ट कोड की तरह - 28 00:01:33,060 --> 00:01:36,440 आप चाहते हैं कि हर किसी के द्वारा पठनीय हो, 29 00:01:36,440 --> 00:01:39,880 ऐसा है, तो आप क्या करते हैं आप वाइल्डकार्ड का उपयोग कर सकता है - 30 00:01:39,880 --> 00:01:41,650 जो एक asterisk है - 31 00:01:41,650 --> 00:01:46,190 उस फ़ोल्डर में सब कुछ करने के लिए मूल रूप से सीएसएस फ़ोल्डर में संकेत मिलता है - 32 00:01:46,190 --> 00:01:48,740  मैं कहना है कि हर किसी के द्वारा पठनीय होने जा रहा है करने के लिए जा रहा हूँ. 33 00:01:48,740 --> 00:01:54,220 अनुमति के साथ, जब हम पत्र का उपयोग 34 00:01:54,220 --> 00:01:57,610 हम भी संख्या के बजाय का उपयोग कर सकते हैं. 35 00:01:57,610 --> 00:02:00,900 तो, आप देखते हैं कि अंततः जब आप एक्सक्यूटेबल होना करने के लिए कुछ करना चाहते हैं - 36 00:02:00,900 --> 00:02:02,810 कि एक संख्या से प्रतिनिधित्व किया है - 37 00:02:02,810 --> 00:02:08,340 कुछ पठनीय हो संख्या 4 और फिर है - 38 00:02:08,340 --> 00:02:10,590 लिखने योग्य 2 नंबर है - 39 00:02:10,590 --> 00:02:13,670 और इसलिए अनिवार्य रूप से जब आप उन में से एक संयोजन करना चाहते हैं, तो आप उन्हें जोड़ने के. 40 00:02:13,670 --> 00:02:15,860 , यदि आप कुछ करना चाहते हैं पठनीय, लिखने योग्य निष्पादन, और हो 41 00:02:15,860 --> 00:02:21,970 तो आप 4, 2, और 1 जोड़ सकते हैं और चाहते हैं कि तुम 7 देना होगा, 42 00:02:21,970 --> 00:02:26,230 तो जब भी आप एक फ़ोल्डर है आप चाहते हैं कि हर किसी के द्वारा कार्यान्वित नहीं किया जा 43 00:02:26,230 --> 00:02:31,380 के रूप में के रूप में अच्छी तरह से पठनीय और लिखने योग्य - तो तुम कि 7, 1 1, बनाते हैं. 44 00:02:31,380 --> 00:02:38,140 कि आप के लिए 7 हो सकता है, तो अन्य लोगों के लिए 1. 45 00:02:38,140 --> 00:02:42,870 जब आप कल्पना है, यह वास्तव में जो फ़ोल्डर्स और फ़ाइलों जो निर्दिष्ट करेंगे 46 00:02:42,870 --> 00:02:45,040 chmod एड विशेष रूप से होने की जरूरत है. 47 00:02:45,040 --> 00:02:47,920 उदाहरण के लिए, जब आप फ़ोल्डर्स है - उन 7-1-1 कर रहे हैं - 48 00:02:47,920 --> 00:02:52,690 जब आप छवियों या HTML, सीएसएस, जावास्क्रिप्ट, 49 00:02:52,690 --> 00:02:55,870 या 6, 4, 4 - तो उन लोगों के लिए 6, 4 0 हो जा रहे हैं - 50 00:02:55,870 --> 00:03:00,030 और फिर PHP फाइलों के लिए 6, 0 0 होने जा रहे हैं. 51 00:03:00,030 --> 00:03:04,940 विचार है कि पीछे है कि उपयोगकर्ताओं को वास्तव में अपने PHP कोड नहीं देखना चाहिए, 52 00:03:04,940 --> 00:03:08,370 लेकिन सिर्फ उत्पादन को देखने के लिए सक्षम हो. 53 00:03:08,370 --> 00:03:11,030 >> महान! PHP में चल रहा है. 54 00:03:11,030 --> 00:03:18,850 बस, जब भी आप एक PHP फ़ाइल चाहते हैं, फ़ाइल प्रत्यय है. Php. 55 00:03:18,850 --> 00:03:22,000 तुम भी HTML PHP कोड के साथ मिश्रण कर सकते हैं. 56 00:03:22,000 --> 00:03:24,880 यदि आप एक HTML फ़ाइल है, उदाहरण के लिए है, 57 00:03:24,880 --> 00:03:32,520 तो आप यह बायाँ कोण, प्रश्न चिह्न, php के साथ बंद कर सकते हैं - 58 00:03:32,520 --> 00:03:39,320 अपने php कोड डाल दिया और फिर एक और प्रश्न चिह्न और एक सही कोण के साथ है कि करीब. 59 00:03:39,320 --> 00:03:45,020 PHP में चर एक बहुत आसान सी में चर की तुलना के साथ सौदा कर रहे हैं 60 00:03:45,020 --> 00:03:50,310 किसी भी चर सिर्फ इसे के सामने में एक डॉलर के हस्ताक्षर के साथ शुरू होता है, और वे कमजोर टाइप कर रहे हैं. 61 00:03:50,310 --> 00:03:53,470 इसका मतलब है कि आप कुछ स्थापित करने के बारे में चिंता की जरूरत नहीं 62 00:03:53,470 --> 00:03:55,020 एक स्ट्रिंग या एक पूर्णांक के बराबर. 63 00:03:55,020 --> 00:03:57,710 तुम बस कह सकते हैं, इस चर के मेरा नाम है 64 00:03:57,710 --> 00:04:00,390 और फिर यह अपने मूल्य है, 65 00:04:00,390 --> 00:04:03,280 तो यह आसान करने के लिए वहाँ के साथ सौदा होने जा रहा है. 66 00:04:03,280 --> 00:04:08,220 >> एक और बात यह है कि आप PHP साहचर्य arrays का उपयोग करने की अनुमति देता है. 67 00:04:08,220 --> 00:04:11,330 तुम बस की तरह आप सी में एक सरणी को परिभाषित कर सकते हैं 68 00:04:11,330 --> 00:04:14,900 कह रही है, डॉलर के हस्ताक्षर के नाम सरणी के बराबर होती है, 69 00:04:14,900 --> 00:04:22,600 और फिर वर्ग कोष्ठक में मूल रूप से बस सरणी में सभी तत्वों के मूल्यों की सूची है. 70 00:04:22,600 --> 00:04:27,160 लेकिन, PHP में क्या आप भी कर सकते है कि मूल रूप से निर्दिष्ट - 71 00:04:27,160 --> 00:04:31,050 यह एक हैश समारोह की तरह की तरह है. 72 00:04:31,050 --> 00:04:34,410 तुम सूचकांक निर्दिष्ट कर सकते हैं - क्या आप इसे कॉल करने के लिए जा रहे हैं - 73 00:04:34,410 --> 00:04:37,030 और फिर है कि एक मूल्य से मेल खाती है. 74 00:04:37,030 --> 00:04:42,880 यदि आप वास्तव में एक = 1, बी 2, सी = 3 में पारित 75 00:04:42,880 --> 00:04:50,820 फिर सूचकांक में अपने सरणी आप 1 देना होगा. 76 00:04:50,820 --> 00:04:56,600 इस pset आप गर्म करने के लिए सवालों की एक खंड में कुछ PHP के साथ, 77 00:04:56,600 --> 00:04:59,240 और फिर हम CS50 वित्त में गोता. 78 00:04:59,240 --> 00:05:02,650 >> हम की एक जोड़ी है - हम कुछ कार्यक्षमता है, मूल रूप से, 79 00:05:02,650 --> 00:05:05,130 इस वेबसाइट में लागू करने के लिए. 80 00:05:05,130 --> 00:05:10,440 हम उपयोगकर्ताओं को हमारी वेबसाइट में एक उपयोगकर्ता नाम और पासवर्ड के साथ रजिस्टर करने की अनुमति चाहते हैं. 81 00:05:10,440 --> 00:05:13,670 हम उन्हें एक बोली देखने की अनुमति चाहते हैं, 82 00:05:13,670 --> 00:05:19,330 और फिर हम बाहर है कि बोली के नाम के रूप में के रूप में अच्छी तरह से वर्तमान कीमत है कि यह प्रिंट होगा. 83 00:05:19,330 --> 00:05:26,830 हम उन्हें शेयरों कि वे इस प्रकार अब तक खरीदा है सभी का एक पोर्टफोलियो को देखने के लिए अनुमति देना चाहते हैं. 84 00:05:26,830 --> 00:05:34,240 हम भी उन्हें शेयरों को खरीदने के लिए के रूप में के रूप में अच्छी तरह से उन्हें बेचते हैं की अनुमति चाहते हैं. 85 00:05:34,240 --> 00:05:37,540 और फिर अंत में, हम उन्हें इतिहास को देखने के लिए अनुमति देना चाहते हैं 86 00:05:37,540 --> 00:05:39,490 लेनदेन कर दिया है कि वे सभी के. 87 00:05:39,490 --> 00:05:41,540 फिर, अंत में, के बाद आप उस के सभी क्रियान्वित किया है, 88 00:05:41,540 --> 00:05:45,110 तो आप के लिए एक अतिरिक्त सुविधा को लागू करने के लिए स्वतंत्र हैं. 89 00:05:45,110 --> 00:05:46,610 हम उन लोगों में जाना होगा. 90 00:05:46,610 --> 00:05:51,330 वे या तो अनुमति उपयोगकर्ताओं के लिए अतिरिक्त नकदी जमा करने से अतिरिक्त नकदी प्राप्त कर सकते हैं, 91 00:05:51,330 --> 00:05:54,550 या आप उन्हें अपने पासवर्ड, या उस तरह कुछ बदलने के लिए अनुमति दे सकता है, 92 00:05:54,550 --> 00:06:00,590 उन्हें एक रसीद है जब वे खरीदने या बेचने के एक शेयर ईमेल. 93 00:06:00,590 --> 00:06:05,370 वहाँ सुविधाओं है कि आप अपने आप को लागू कर सकता है की एक सीमित सूची है, 94 00:06:05,370 --> 00:06:08,340 इतना है कि वहाँ पिछले एक है. 95 00:06:08,340 --> 00:06:13,430 >> चूंकि यह एक वेबसाइट है, तुम लोगों को भी स्वतंत्रता की एक बहुत कुछ करने के लिए इसे अनुकूलित है. 96 00:06:13,430 --> 00:06:20,960 हम कुछ सीएसएस कोड प्रदान करते हैं, लेकिन आप निश्चित रूप से कर रहे हैं यह tweak करने के लिए स्वतंत्र हैं, 97 00:06:20,960 --> 00:06:26,680 इसे बनाने के लिए अच्छे लग रहे हैं, लेकिन यह एक बुनियादी कार्यक्षमता अंतर्निहित है 98 00:06:26,680 --> 00:06:30,310 तो हमेशा क्या आप वास्तव में वहाँ शामिल करने की ज़रूरत के बारे में कल्पना करने के लिए देखें. 99 00:06:30,310 --> 00:06:39,940 कल्पना के बाद, हम करने के लिए एक सर्वर के रूप में भी उपकरण का उपयोग किया जा रहे हैं. 100 00:06:39,940 --> 00:06:43,910 यह हमारे लिए हमारी वेबसाइट की मेजबानी अपने स्थानीय सर्वर पर किया जा रहा है. 101 00:06:43,910 --> 00:06:49,750 यदि आप इन निर्देशों का पालन करें और pset 7 वितरण कोड खोलना 102 00:06:49,750 --> 00:06:53,500 अपने आभासी मेजबान मेजबान / स्थानीय फ़ोल्डर में, 103 00:06:53,500 --> 00:07:02,470  तो आप सिर्फ उपकरण में गूगल क्रोम में http://localhost/ यात्रा कर सकते हैं, 104 00:07:02,470 --> 00:07:09,120 और फिर तुम कोड में आप pset 7 लिखा है तक पहुंच जाएगा. 105 00:07:09,120 --> 00:07:14,490 >> 7 Pset वितरण कोड का एक गुच्छा के साथ आता है, 106 00:07:14,490 --> 00:07:18,330 और उम्मीद है कि we 've - इस से पहले psets के सभी के माध्यम से - 107 00:07:18,330 --> 00:07:21,700 हमें वितरण कोड के माध्यम से पढ़ने के आदी रहे हैं, 108 00:07:21,700 --> 00:07:25,650 समझ क्या कार्य पहले से ही प्रदान की जाती हैं, और हम कैसे का उपयोग करने में सक्षम हो सकता है 109 00:07:25,650 --> 00:07:29,470 उन लोगों और अन्य कार्य करता है कि हम करने के लिए लागू किया जा रहे हैं. 110 00:07:29,470 --> 00:07:31,570 इस मामले में, हम 3 फ़ोल्डर्स है. 111 00:07:31,570 --> 00:07:36,350 हम एक HTML फ़ोल्डर, एक फ़ोल्डर शामिल है, और एक टेम्पलेट्स फ़ोल्डर है. 112 00:07:36,350 --> 00:07:40,630 हम इस pset के साथ कर रही हो जा रहे हैं, क्या सोच अलग करने की तरह है - 113 00:07:40,630 --> 00:07:45,580 PHP कोड का वास्तविक दृश्य पहलू के साथ - प्रोग्रामिंग सोच रही है. 114 00:07:45,580 --> 00:07:52,690 हम एक PHP फ़ाइल है कि सोच के सभी करता है, डेटाबेस में पढ़ता हूँ, 115 00:07:52,690 --> 00:07:55,620 चीजें बाहर प्रिंट है, अगर बयान कि चीजों की तरह - 116 00:07:55,620 --> 00:08:02,140 या template.php फ़ाइल - और तो यह है कि हमारे टेम्पलेट फ़ाइल में डेटा पारित करेंगे. 117 00:08:02,140 --> 00:08:05,710 क्या क्या करेंगे कि डेटा पढ़ा जाता है और फिर इसे इसे बाहर प्रिंट जाएगा. 118 00:08:05,710 --> 00:08:09,550 >> हम में है कि हम वास्तव में उन्हें नहीं करना चाहता "गूंगा" के रूप में टेम्पलेट्स का इलाज कर सकते हैं 119 00:08:09,550 --> 00:08:12,370 बातें की गणना में काम का एक बहुत कुछ कर रही हो. 120 00:08:12,370 --> 00:08:16,330 हम हमारे नियंत्रकों कि करने के लिए करना चाहते हैं. 121 00:08:16,330 --> 00:08:21,610 उस पर थोड़ा - वितरण कोड के कुछ पर एक नज़र रखना. 122 00:08:21,610 --> 00:08:28,250 यहाँ हम हमारे index.html फ़ाइल है, और यह बहुत खाली है. 123 00:08:28,250 --> 00:08:34,429 मूलतः यह क्या करता है - यह कहते हैं, ठीक है, मैं लिए configuration.php फ़ाइल की आवश्यकता के लिए जा रहा हूँ. 124 00:08:34,429 --> 00:08:40,120 हम जानते हैं कि वहाँ नहीं दिख रहा है, लेकिन यह मूलतः configuration.php फ़ाइल बुला रहा है, 125 00:08:40,120 --> 00:08:42,240 और कहा कि क्रियान्वित. 126 00:08:42,240 --> 00:08:45,130 के बाद यह है कि, यह पोर्टफोलियो प्रदान करने के लिए जा रहा है. 127 00:08:45,130 --> 00:08:49,310 प्रतिपादन एक समारोह है, इसलिए जब भी हम एक नियंत्रक में कर रहे हैं, 128 00:08:49,310 --> 00:08:56,490 हम सौंपनेवाला कॉल करेंगे, हम यह फाइल दे और फिर डेटा है कि हम गुजर रहे हैं, 129 00:08:56,490 --> 00:09:04,570 इतना है कि यह कि डेटा में पास की portfolio.php प्रकार में फोन इतना है कि पोर्टफोलियो उस के साथ सौदा कर सकते हैं. 130 00:09:04,570 --> 00:09:10,540 >> और अब, यहाँ, हम हमारे login.php रूप है. 131 00:09:10,540 --> 00:09:17,540  इस नियंत्रक है कि मूल रूप से अंदर लॉगिंग का ख्याल रखता है 132 00:09:17,540 --> 00:09:29,090 यहाँ, यह जाँच करता है कि अगर एक फार्म प्रस्तुत मान्य के साथ इस फ़ाइल और सौदों के लिए प्रस्तुत की गई थी. 133 00:09:29,090 --> 00:09:31,990 हम इस माफी माँगता हूँ समारोह में देख लेंगे. 134 00:09:31,990 --> 00:09:35,100 , जब हम एक त्रुटि संदेश मुद्रित करना चाहते हैं 135 00:09:35,100 --> 00:09:39,550 हम क्षमा चाहते हैं का उपयोग करें और है कि एक विशेष पेज के लिए उपयोगकर्ता अनुप्रेषित करेगा 136 00:09:39,550 --> 00:09:42,530 कि विशिष्ट त्रुटि संदेश है कि हम से संकेत मिलता है प्रिंट होगा. 137 00:09:42,530 --> 00:09:47,860 पर सतत्, यह डेटाबेस क्वेरी करेगा - we'll कि अधिक में बाद में मिल. 138 00:09:47,860 --> 00:09:54,180 तो आप देखते हैं कि यहाँ नीचे अगर एक रूप नहीं प्रस्तुत किया गया है, तो यह एक फार्म renders. 139 00:09:54,180 --> 00:10:01,360 इसका मतलब है कि है कि यह login_form.php करने के लिए चला जाता है, तो हम उस पर विचार. 140 00:10:01,360 --> 00:10:09,400 >> Login.php वास्तव में है जहां हम वास्तविक दृश्य पहलू के साथ HTML निपटने देखते. 141 00:10:09,400 --> 00:10:15,130 यहाँ हम उपयोगकर्ता नाम, पासवर्ड के लिए एक इनपुट के लिए एक इनपुट टैग है, 142 00:10:15,130 --> 00:10:16,630 के रूप में अच्छी तरह से एक बटन सबमिट करें. 143 00:10:16,630 --> 00:10:22,660 यह वास्तव में है, जहां दृश्य पहलू और HTML फार्म के लिए आयोजित किया जा रहा है. 144 00:10:22,660 --> 00:10:27,550 यहाँ, इसे कहते हैं, पोस्ट कहा जाता है कि यह एक निश्चित विधि द्वारा प्रस्तुत किया जा रहा है. 145 00:10:27,550 --> 00:10:30,190 हम तरीकों के बीच मतभेद में मिलेगा - 146 00:10:30,190 --> 00:10:33,240 पोस्ट बनाम प्राप्त करने के लिए, वहाँ भी कुछ डाल कहा जाता है - 147 00:10:33,240 --> 00:10:36,160 हम उन तरीकों में बाद में मिल कर देंगे, लेकिन इस pset के हित के लिए, 148 00:10:36,160 --> 00:10:37,810 मैं अत्यधिक तुम पोस्ट का उपयोग करने के लिए प्रोत्साहित करेगा. 149 00:10:37,810 --> 00:10:42,210 >> हम जानते है कि मूल रूप से एक बार इस फार्म प्रस्तुत है - 150 00:10:42,210 --> 00:10:44,650 से login_form.php 151 00:10:44,650 --> 00:10:50,850 तो यह कार्रवाई करने के लिए जाना जाएगा - login.php - 152 00:10:50,850 --> 00:10:56,070 मूलतः login.php में उन सभी मानकों में उन रूपों से गुजरती हैं. 153 00:10:56,070 --> 00:11:04,900 उस रूप से परिणाम इस पोस्ट साहचर्य सरणी के भीतर समाहित कर रहे हैं. 154 00:11:04,900 --> 00:11:11,710 पोस्ट सरणी में विभिन्न तत्वों के अनुक्रमित 155 00:11:11,710 --> 00:11:15,290 वास्तव में आप क्या यहाँ निर्दिष्ट हैं. 156 00:11:15,290 --> 00:11:19,240 आप कहते हैं कि इस इनपुट के नाम USERNAME है. इस एक के नाम और पासवर्ड है. 157 00:11:19,240 --> 00:11:26,840 इसी तरह, आप साहचर्य सरणी के सूचकांक के रूप में उपयोगकर्ता नाम देखते हैं. 158 00:11:26,840 --> 00:11:35,110 यदि हम फ़ोल्डर शामिल करने के लिए जाते हैं, हम इस कार्यों फ़ाइल जो बहुत उपयोगी होने जा रहा है. 159 00:11:35,110 --> 00:11:37,570 >> इन सभी कार्यों के लिए लागू कर रहे हैं. 160 00:11:37,570 --> 00:11:41,870 आप के लिए विशेष रूप से अपने आप को इन के किसी भी लागू करने की जरूरत नहीं है, 161 00:11:41,870 --> 00:11:43,140 लेकिन वे काफी उपयोगी करने के लिए जा रहे हैं. 162 00:11:43,140 --> 00:11:49,450 हमें खेद है, जो जैसा कि मैंने पहले कहा, मूल रूप से एक त्रुटि संदेश मुद्रित करेगा 163 00:11:49,450 --> 00:11:52,920 apology.php - आप के लिए एक विशेष पृष्ठ पर. 164 00:11:52,920 --> 00:11:59,890 तो फिर हम डंप है, इसलिए यदि आप सिर्फ डंप कॉल और फिर चर में पारित 165 00:11:59,890 --> 00:12:04,930 तो यह आपको एक पृष्ठ है कि आप के लिए है कि चर प्रदर्शित करेगा लाएगा. 166 00:12:04,930 --> 00:12:09,950 तो फिर हम लॉगआउट है, जो मूल रूप से एक निश्चित उपयोगकर्ता के सत्र का अंत हो जाएगा. 167 00:12:09,950 --> 00:12:12,240 देखने के लिए उपयोगी होने जा रहा है. 168 00:12:12,240 --> 00:12:15,870 के बाद से हम उद्धरण और शेयरों के साथ काम कर रहे हैं, हम करने के लिए सक्षम होने के लिए जा रहे हैं - 169 00:12:15,870 --> 00:12:17,650 और यह अनिवार्य रूप से वास्तविक समय है. 170 00:12:17,650 --> 00:12:21,380 हम पता करने के लिए क्या कर रहे हैं उन शेयर मूल्यों की जरूरत है, 171 00:12:21,380 --> 00:12:28,210 तो हम देखने का समारोह जो शेयरों की याहू के दस्तावेज के साथ संबंधित है. 172 00:12:28,210 --> 00:12:37,700 एक बार जब आप एक शेयर की एक निश्चित प्रतीक देखो, यह आप स्टॉक प्रतीक वापस आ जाएगी 173 00:12:37,700 --> 00:12:41,480 के रूप में अच्छी तरह नाम और कि शेयर की मौजूदा कीमत के रूप में. 174 00:12:41,480 --> 00:12:44,330 यह देखने का समारोह है. 175 00:12:44,330 --> 00:12:48,350 >> तो फिर हम MySQL के साथ काम कर रहे हैं, 176 00:12:48,350 --> 00:12:53,970 तो हम करने के लिए हमारे SQL डेटाबेस पर कुछ क्वेरी को निष्पादित करने के लिए चाहते हो जा रहे हैं. 177 00:12:53,970 --> 00:12:58,890 हम सौदा प्रश्न किया है कि बाहर के कुछ सार की तरह. 178 00:12:58,890 --> 00:13:03,200 हम हमारे एसक्यूएल क्वेरी के पूरे स्ट्रिंग में पारित हो जा रहे हैं - 179 00:13:03,200 --> 00:13:05,360 और चर कि उस में जाने के सभी - 180 00:13:05,360 --> 00:13:09,480 और यह क्या करता है वास्तव में हमारे लिए कि निष्पादित. 181 00:13:09,480 --> 00:13:15,070 इस सब के बाहर हर समय है कि आप क्वेरी के लिए चाहते लिखने होने के बजाय - 182 00:13:15,070 --> 00:13:21,740 उस क्वेरी से परिणामों के सभी हो रही द्वारा - 183 00:13:21,740 --> 00:13:24,740 तो आप सिर्फ क्वेरी समारोह कॉल कर सकते हैं, और यह आप के लिए वापस कर देंगे - 184 00:13:24,740 --> 00:13:28,750 तुम क्या आपकी क्वेरी के लिए प्रयोग कर रहे हैं पर निर्भर करता है - 185 00:13:28,750 --> 00:13:33,000 शायद परिणाम है कि क्वेरी या इसी तरह के मैच की सभी की एक पंक्ति है. 186 00:13:33,000 --> 00:13:34,690 उस पर बाद में हालांकि. 187 00:13:34,690 --> 00:13:41,200 >> अंत में, हम अनुप्रेषित जो, जैसा कि नाम से पता चलता है, तो आप एक अलग पृष्ठ पर रीडायरेक्ट है. 188 00:13:41,200 --> 00:13:46,280 और फिर हम प्रस्तुत करना है, जो हम करने के लिए समय की एक जोड़ी बुला रहे हो जा रहे हैं. 189 00:13:46,280 --> 00:13:51,010 जब आप एक नियंत्रक में कर रहे हैं, आप टेम्पलेट पेज में प्रस्तुत करना कहते हैं 190 00:13:51,010 --> 00:13:55,390 और तो मूल्यों में पारित कि टेम्पलेट फिर साथ सौदा होगा. 191 00:13:55,390 --> 00:13:59,540 उन मूल्यों शायद उत्पादन के प्रकार है कि आप चाहते हैं के साथ काम किया जा रहे हैं 192 00:13:59,540 --> 00:14:01,050 अपने टेम्पलेट पृष्ठ पर दिखाया जा सकता है. 193 00:14:01,050 --> 00:14:09,370 ठीक है. वे कार्य कर रहे हैं, और वहाँ इस वितरण कोड के लिए एक बहुत अधिक है. 194 00:14:09,370 --> 00:14:12,930 मैं आप इस के माध्यम से जाने के लिए और यह अपने आप का पता लगाने के लिए प्रोत्साहित करते हैं. 195 00:14:12,930 --> 00:14:17,050 इसके अलावा, कल्पना शायद आप वितरण कोड के कुछ अन्य तत्वों के माध्यम से चलना होगा. 196 00:14:17,050 --> 00:14:27,360 यहाँ functions.php में पाए जाने वाले कार्यों का एक सारांश है. 197 00:14:27,360 --> 00:14:31,710 >> ठीक है. पहला काम करने के लिए उपयोगकर्ताओं को वेबसाइट पर रजिस्टर करने की अनुमति है. 198 00:14:31,710 --> 00:14:34,860 अभी, वहाँ वेबसाइट पर एक प्रवेश फार्म है, 199 00:14:34,860 --> 00:14:40,080 और आप पासवर्ड के साथ कुछ उपयोगकर्ताओं के साथ प्रदान की जाती हैं. 200 00:14:40,080 --> 00:14:42,130 आप उन उपयोगकर्ता नाम का उपयोग करने के लिए और में लॉग इन कर सकते हैं, 201 00:14:42,130 --> 00:14:45,140 लेकिन आप लोगों को उनके अपने उपयोगकर्ता नाम बनाने के लिए अनुमति देना चाहते हैं 202 00:14:45,140 --> 00:14:47,390 और खुद को वेबसाइट के लिए जोड़. 203 00:14:47,390 --> 00:14:53,070 पंजीकरण के लिए लेआउट सुंदर प्रवेश फार्म के लिए इसी तरह की है, 204 00:14:53,070 --> 00:14:56,340 को छोड़कर पूर्व मौजूदा उपयोगकर्ता नाम नहीं है, 205 00:14:56,340 --> 00:14:59,430 और उपयोगकर्ता को भी एक नया पासवर्ड प्रदान करने की जरूरत है, 206 00:14:59,430 --> 00:15:02,440 और तो आम तौर पर हम एक पासवर्ड की पुष्टि की है. 207 00:15:02,440 --> 00:15:06,580 एक बार जब उपयोगकर्ता इनपुट कि सूचना के सभी, 208 00:15:06,580 --> 00:15:10,620 हम उन उपयोगकर्ताओं के हमारे डेटाबेस को जोड़ना चाहते हैं. 209 00:15:10,620 --> 00:15:12,970 एक SQL डेटाबेस - हम एक डेटाबेस के लिए जा रहे हैं - 210 00:15:12,970 --> 00:15:14,470 कि हम संदर्भ के लिए जा रहे हैं. 211 00:15:14,470 --> 00:15:18,140 कि डेटाबेस में, हम सभी उपयोगकर्ताओं के साथ एक टेबल है 212 00:15:18,140 --> 00:15:23,850 उनका उपयोक्तानाम, उनके पासवर्ड, और भी कितना नकद वे युक्त. 213 00:15:23,850 --> 00:15:28,480 >> रजिस्टर में, हम उन्हें कि जानकारी दर्ज करने की अनुमति देना चाहते हैं. 214 00:15:28,480 --> 00:15:29,740 हम उस फार्म का प्रदर्शन करना चाहते हैं. 215 00:15:29,740 --> 00:15:32,210 हमें यकीन है कि उनके पासवर्ड बनाना चाहते हैं - 216 00:15:32,210 --> 00:15:37,490 कि वे एक में प्रवेश किया, और फिर यह भी है कि पासवर्ड मैच जब वे इसे दो बार दर्ज. 217 00:15:37,490 --> 00:15:42,240 कि के सब के बाद किया जाता है - यह सोचते हैं कि उन त्रुटियों की जाँच कर रहे हैं - 218 00:15:42,240 --> 00:15:45,120 तो हम हमारे डेटाबेस में उन उपयोगकर्ताओं को जोड़ने के लिए करना चाहते हैं. 219 00:15:45,120 --> 00:15:49,630 अंत में, एक बार आप पंजीकृत है, यह बहुत सुविधाजनक है अगर आप फिर से लॉग इन करने की जरूरत नहीं है 220 00:15:49,630 --> 00:15:51,000 एक बार आप पंजीकृत किया है, 221 00:15:51,000 --> 00:15:54,000 तो हम उन्हें वेबसाइट में लॉग इन करने के लिए जा रहे हैं अगर वे सफलतापूर्वक में पंजीकृत है. 222 00:15:54,000 --> 00:16:00,360 >> पहला काम के लिए फार्म का प्रदर्शन है, और यह वास्तव में होने जा रहा है - 223 00:16:00,360 --> 00:16:04,920 इस पूरे पंजीकरण प्रक्रिया को बहुत बारीकी से प्रवेश के बाद modeled किया जा रहा है 224 00:16:04,920 --> 00:16:10,510 बजाय login.php के अलावा आप register.php हो सकता है. 225 00:16:10,510 --> 00:16:14,300 इसके बजाय login_form.php जिनमें से टेम्पलेट है - 226 00:16:14,300 --> 00:16:16,030 आप प्रपत्र रजिस्टर करना होगा. 227 00:16:16,030 --> 00:16:19,680 एक पासवर्ड की पुष्टि क्षेत्र - तुम एक और क्षेत्र को जोड़ने के लिए चाहता हूँ - 228 00:16:19,680 --> 00:16:23,450 बजाय सिर्फ एक उपयोगकर्ता नाम और एक पासवर्ड के. 229 00:16:23,450 --> 00:16:28,120 अगला, हम करने के लिए जाँच करें कि क्या पासवर्ड मैच या खाली हैं चाहता हूँ. 230 00:16:28,120 --> 00:16:38,560 Register.php - जो इन जाँच कर का ख्याल रखना जा रहा है - हम नियंत्रक है. 231 00:16:38,560 --> 00:16:41,690 जब एक फार्म के बाद विधि के माध्यम से प्रस्तुत किया जाता है, 232 00:16:41,690 --> 00:16:47,050 तो उन चर के सभी पोस्ट सरणी के भीतर समाहित कर रहे हैं. 233 00:16:47,050 --> 00:16:52,280 आपको यह सुनिश्चित करना चाहते हैं कि सूचकांक पासवर्ड पर पोस्ट सरणी मूल्य 234 00:16:52,280 --> 00:16:58,080 पुष्टि तत्व से मेल खाता है. 235 00:16:58,080 --> 00:16:59,410 आप यकीन है कि वे खाली नहीं कर रहे हैं बनाना चाहते हैं, 236 00:16:59,410 --> 00:17:01,650 और आप यकीन है कि वे वही कर रहे हैं बनाना चाहते हैं. 237 00:17:01,650 --> 00:17:05,960 >> एक PHP के बारे में सुविधाजनक बात यह है कि हम स्ट्रिंग का उपयोग करने की जरूरत नहीं है अब की तुलना करते हैं. 238 00:17:05,960 --> 00:17:08,410 हम ऑपरेटर के बराबर होती है - बराबर होती है का उपयोग कर सकते हैं 239 00:17:08,410 --> 00:17:11,470  जाँच करें कि क्या तार एक दूसरे के बराबर हैं. 240 00:17:11,470 --> 00:17:14,960 त्रुटि को संभालने के लिए, आप के लिए माफी चाहता हूँ. 241 00:17:14,960 --> 00:17:17,150 खेद है, आप केवल समारोह कॉल 242 00:17:17,150 --> 00:17:21,910  और फिर संदेश का एक प्रकार है कि तुम उत्पादन के लिए चाहते हैं निर्दिष्ट. 243 00:17:21,910 --> 00:17:24,630 फिर आप डेटाबेस के लिए उपयोगकर्ता जोड़ना चाहते हैं. 244 00:17:24,630 --> 00:17:30,880 अब तक, हम कर दिया गया है सिर्फ प्रपत्र के परिणामों के साथ स्थानीय रूप से काम कर रहे हैं. 245 00:17:30,880 --> 00:17:33,940 अब, हम वास्तव में उन्हें हमारे डेटाबेस में जोड़ना चाहते हैं. 246 00:17:33,940 --> 00:17:38,890 इस के लिए, हम पहले यह सुनिश्चित करना है कि उपयोगकर्ता नाम रिक्त नहीं है चाहता हूँ. 247 00:17:38,890 --> 00:17:44,550 समझ है कि एक वेबसाइट पर, आप एक ही उपयोगकर्ता नाम के साथ कई उपयोगकर्ताओं नहीं हो सकता है, 248 00:17:44,550 --> 00:17:50,010 तो आप यह सुनिश्चित करें कि जब आप अपने डेटाबेस में कुछ डालने बनाना चाहता हूँ - 249 00:17:50,010 --> 00:17:56,650 एक नया उपयोगकर्ता सम्मिलित - तो आप एक पूर्व मौजूदा उपयोगकर्ता नाम के बीच एक टकराव नहीं मिलता है. 250 00:17:56,650 --> 00:17:59,150 और उपयोगकर्ता नाम है कि एक उपयोगकर्ता करने के लिए प्रस्तुत करने की कोशिश कर रहा है. 251 00:17:59,150 --> 00:18:02,250 इस के लिए, एक बार आप एक क्वेरी को निष्पादित करने के लिए - 252 00:18:02,250 --> 00:18:08,760 उनके पासवर्ड और नकदी का एक प्रारंभिक राशि के साथ एक निश्चित उपयोगकर्ता डालने 253 00:18:08,760 --> 00:18:15,140 एक बार आप फोन है कि प्रश्न है, तो mySQL वास्तव में वापसी झूठी अगर यह विफल रहता है. 254 00:18:15,140 --> 00:18:21,050 >> प्रयोक्ताओं की संरचना ऐसी है कि उपयोगकर्ता नाम एक अनूठा मूल्य है, 255 00:18:21,050 --> 00:18:22,540 तो आप एक से अधिक नहीं हो सकता. 256 00:18:22,540 --> 00:18:30,080 जब आप कोशिश करते हैं और एक उपयोगकर्ता नाम है कि पहले से ही मौजूद है के साथ एक नई पंक्ति सम्मिलित 257 00:18:30,080 --> 00:18:34,470 एक बूलियन मूल्य झूठी तरह है कि वापसी झूठी जा रहा है. 258 00:18:34,470 --> 00:18:45,320 यहाँ एक मुश्किल बात यह है कि आप जाँच करना चाहते अगर परिणाम आपकी क्वेरी का परिणाम है. 259 00:18:45,320 --> 00:18:52,320 अगर वह विफल रहता है, तो आप ऑपरेटर ट्रिपल बराबर होती है के साथ की जाँच करने के लिए चाहता हूँ. 260 00:18:52,320 --> 00:18:55,420 यह वास्तव में जाँच करें कि क्या वहाँ एक विफलता है या नहीं जा रहा है, 261 00:18:55,420 --> 00:19:02,760 जबकि, बस एक साधारण के बराबर होती है के बराबर होती है, यह सच है कि पंक्ति खाली था. 262 00:19:02,760 --> 00:19:06,000 अगर वहाँ उपयोगकर्ता नाम के बीच एक टकराव है एक विफलता का परिणाम 263 00:19:06,000 --> 00:19:10,350 वास्तविक झूठी मूल्य है. 264 00:19:10,350 --> 00:19:15,230 >> यहाँ आप कैसे एक डेटाबेस में सम्मिलित होगा. 265 00:19:15,230 --> 00:19:19,220 यहाँ क्वेरी कि तुम सख्ती एसक्यूएल में चला जाएगा. 266 00:19:19,220 --> 00:19:25,750 एक बात यह है कि आप वास्तव में वेबसाइट है कि अपने एसक्यूएल डाटाबेस का प्रबंधन करने के लिए जा सकते हैं 267 00:19:25,750 --> 00:19:31,070 और आसपास वहाँ खेलने के लिए मैन्युअल रूप से या तो मूल्यों या पंक्तियों में प्रवेश द्वारा. 268 00:19:31,070 --> 00:19:34,540 यह उत्पादन होगा एसक्यूएल उत्पादन में क्या है. 269 00:19:34,540 --> 00:19:38,870 आप भी अपने डेटाबेस के भीतर SQL कमान्ड रन कर सकते हैं 270 00:19:38,870 --> 00:19:42,200  और फिर देखने के लिए वाक्यविन्यास क्या हो सकता है, 271 00:19:42,200 --> 00:19:46,790 और फिर क्वेरी समारोह कि हम 7 pset में है कि में अनुवाद करने के लिए, 272 00:19:46,790 --> 00:19:51,120 जो बहुत से प्रश्न है कि आप वास्तव में चलाने के लिए इसी तरह की होने जा रहा है. 273 00:19:51,120 --> 00:19:54,570 >> अगर मैं अपने उपयोगकर्ताओं को तालिका में एक नई पंक्ति सम्मिलित करना चाहता था, 274 00:19:54,570 --> 00:20:01,240 तो मैं उपयोगकर्ताओं में डालने निर्दिष्ट करते हैं, जो मेरी मेज के नाम है. 275 00:20:01,240 --> 00:20:06,870 तो मैं स्तंभ नाम निर्दिष्ट होगा. 276 00:20:06,870 --> 00:20:13,230 तब मैं अपना पासवर्ड के साथ मूल्यों को प्रदान करेगा. 277 00:20:13,230 --> 00:20:17,080 हमारे उपयोगकर्ताओं को तालिका में पासवर्डों सिर्फ स्ट्रिंग के रूप में संग्रहीत नहीं कर रहे हैं. 278 00:20:17,080 --> 00:20:19,440 वे एन्क्रिप्टेड संस्करण के रूप में जमा कर रहे हैं, 279 00:20:19,440 --> 00:20:24,560 तो आप वास्तविक पासवर्ड पर समारोह तहखाना चलाने के लिए चाहता हूँ, 280 00:20:24,560 --> 00:20:29,680 और है कि आप उपयोगकर्ताओं सरणी के लिए भंडारण की सही प्रकार दे देंगे. 281 00:20:29,680 --> 00:20:34,960 इस रनिंग अपने उपयोगकर्ताओं को तालिका में एक नई पंक्ति सम्मिलित करेगा. 282 00:20:34,960 --> 00:20:39,020 >> क्वेरी समारोह के साथ सौदा करने के लिए, 283 00:20:39,020 --> 00:20:43,100 सी में पहले हम एक placeholder प्रतिशत चिह्न के रूप में इस्तेमाल किया. 284 00:20:43,100 --> 00:20:47,670 इसी तरह, एक placeholder की इसी अवधारणा यहाँ लागू होता है. 285 00:20:47,670 --> 00:20:50,720 क्वेरी के साथ, आप पूरे क्वेरी निर्दिष्ट, 286 00:20:50,720 --> 00:20:55,510 जब भी आप क्वेरी में चर के साथ आपके निवेश के रूप में काम कर रहे हैं के अलावा, 287 00:20:55,510 --> 00:21:00,490 तो बजाय वास्तव में उन्हें अंदर डालने की तरह जब हम सी. में printf बयान था 288 00:21:00,490 --> 00:21:03,740 हम स्ट्रिंग डाल और फिर वहाँ एक प्लेसहोल्डर है, और फिर एक के बाद 289 00:21:03,740 --> 00:21:06,990 अल्पविराम निर्दिष्ट करने के लिए, हम जो चर था. 290 00:21:06,990 --> 00:21:14,480 यहाँ, हम हमारे प्लेसहोल्डर के रूप में प्रश्न चिह्न पर हस्ताक्षर का उपयोग करने के लिए जा रहे हैं 291 00:21:14,480 --> 00:21:21,670 और फिर प्रत्येक चर में पारित, क्रमशः क्रम में प्लेसहोल्डर्स के लिए - 292 00:21:21,670 --> 00:21:24,420 जहां उन चर जाना चाहिए. 293 00:21:24,420 --> 00:21:29,470 तो यहाँ, 1 प्रश्न चिह्न वास्तविक उपयोगकर्ता नाम द्वारा प्रतिस्थापित किया जाएगा 294 00:21:29,470 --> 00:21:33,610 तो पासवर्ड द्वारा 2 प्रश्न चिह्न. 295 00:21:33,610 --> 00:21:37,000 >> फिर अंत में, एक बार आप उन्हें पंजीकृत किया है और उन्हें डेटाबेस के लिए जोड़ा है, 296 00:21:37,000 --> 00:21:40,510 तो आप उन्हें वेबसाइट में लॉग इन करने के लिए करना चाहते हैं. 297 00:21:40,510 --> 00:21:45,320 हम एक सुपर वैश्विक चर बुलाया सत्र की तरह है. 298 00:21:45,320 --> 00:21:48,160 सत्र एक निश्चित पहचान लेता है, 299 00:21:48,160 --> 00:21:51,750 और है कि उपयोगकर्ता है कि वर्तमान में लॉग इन आईडी से मेल खाती है 300 00:21:51,750 --> 00:21:56,380 आप क्या करना चाहते है अपने उपयोगकर्ता आईडी क्या है 301 00:21:56,380 --> 00:22:03,710 और फिर है कि विशेष रूप से उपयोगकर्ता आईडी के रूप में है कि सत्र आईडी सेट. 302 00:22:03,710 --> 00:22:07,560 एक समारोह में कहा कि आप यहाँ का उपयोग करने के लिए चाहता हूँ एक SQL आदेश है 303 00:22:07,560 --> 00:22:15,150 कि आपकी मेज से पिछले सम्मिलित आईडी नंबर प्राप्त करेंगे. 304 00:22:15,150 --> 00:22:24,560 It'll आईडी कॉल - तो पंक्तियों कॉल it'll संख्या है कि इसे वापस करने के लिए एक नाम आवंटित है. 305 00:22:24,560 --> 00:22:27,900 ऐसा लगता है कि आईडी फोन करता हूँ. 306 00:22:27,900 --> 00:22:33,370 अब हम खत्म कर दिया है रजिस्टर, और हम पर स्थानांतरित करने के लिए उद्धृत कर सकते हैं. 307 00:22:33,370 --> 00:22:36,610 >> समीक्षा एक उपयोगकर्ता एक निश्चित स्टॉक के नाम इनपुट के लिए अनुमति देता है, 308 00:22:36,610 --> 00:22:41,940 और फिर यह कि शेयर के गुणों को वापस कर देंगे. 309 00:22:41,940 --> 00:22:48,410 क्या आप यहाँ करना चाहता हूँ एक नियंत्रक और कुछ टेम्पलेट्स है. 310 00:22:48,410 --> 00:22:53,380 इस मामले में, हम करने के लिए एक नियंत्रक है जो हमारे लिए सोच के सभी करने के लिए जा रहा है करने के लिए जा रहे हैं. 311 00:22:53,380 --> 00:23:01,210 यह प्रतीक लग रहा है और तो मूल्यों में टेम्पलेट्स में पारित करने के लिए है कि बाहर मुद्रित करेगा. 312 00:23:01,210 --> 00:23:03,060 हम 2 टेम्पलेट यहाँ है करने के लिए जा रहे हैं. 313 00:23:03,060 --> 00:23:07,260 हम 1 टेम्पलेट है कि के रूप में जो उपयोगकर्ताओं के लिए जा रहे हैं प्रदान करता है के लिए जा रहे हैं 314 00:23:07,260 --> 00:23:09,920 इनपुट शेयर के नाम - शेयर का नाम. 315 00:23:09,920 --> 00:23:16,030 तो फिर हम भी एक और टेम्पलेट है कि उन मूल्यों को प्रदर्शित करता चाहते करने के लिए जा रहे हैं. 316 00:23:16,030 --> 00:23:27,450 आप प्रवेश में कैसे आप एक रूप है कि इनपुट स्वीकार करना होगा का एक उदाहरण के लिए देख सकते हैं, 317 00:23:27,450 --> 00:23:30,060 यहाँ अलावा, हम केवल 1 क्षेत्र चाहते हैं. 318 00:23:30,060 --> 00:23:31,630 हम एक उपयोगकर्ता नाम और पासवर्ड क्षेत्र नहीं करना चाहती. 319 00:23:31,630 --> 00:23:37,110 हम सिर्फ 1 पाठ क्षेत्र चाहते हैं कि उपयोगकर्ता एक निश्चित स्टॉक के नाम इनपुट के लिए अनुमति देता है. 320 00:23:37,110 --> 00:23:40,110 एक बार आपको लगता है कि शेयर देखा है - तो फिर तुम कि डेटा भेजना चाहते हैं - 321 00:23:40,110 --> 00:23:45,550 quote_form.php. 322 00:23:45,550 --> 00:23:50,780 एक शेयर की प्रतीक, नाम, और एक मूल्य लुकअप वापस आ जाएगी. 323 00:23:50,780 --> 00:23:53,910 वे एक साहचर्य सरणी के भीतर समाहित कर रहे हैं. 324 00:23:53,910 --> 00:24:01,390 अधिक जानकारी के लिए देखो functions.php अंदर देखने का समारोह 325 00:24:01,390 --> 00:24:04,010 उन की वापसी प्रकार पर. 326 00:24:04,010 --> 00:24:08,520 >> महान! तो फिर अंत में, आप स्टॉक जानकारी प्रदर्शित करने के लिए चाहता हूँ. 327 00:24:08,520 --> 00:24:14,110 आप को शायद प्रदर्शित करने के लिए चाहता हूँ - you'll उन चर का उपयोग करना चाहते हैं. 328 00:24:14,110 --> 00:24:17,610 एक बार जब आप एक चर में कीमत है - 329 00:24:17,610 --> 00:24:20,860 नाम और प्रतीक के रूप में अच्छी तरह से है - 330 00:24:20,860 --> 00:24:25,550 तो आप अपने टेम्प्लेट पृष्ठ में प्रदर्शित करने के लिए चाहता हूँ. 331 00:24:25,550 --> 00:24:31,540 उस टेम्पलेट पेज show_quote.php या कुछ कहा जा सकता है. 332 00:24:31,540 --> 00:24:39,660 आपकी quote.php पृष्ठ शो बोली प्रस्तुत करना होता है और फिर उन मूल्यों के सभी में गुजरती हैं. 333 00:24:39,660 --> 00:24:47,170 फिर अपने php पृष्ठ में, आप वास्तव में पेज के HTML पहलू को उन मूल्यों को मुद्रित. 334 00:24:47,170 --> 00:24:53,800 आप सिर्फ प्रिंट समारोह का उपयोग और कीमत में गुजरती हैं. 335 00:24:53,800 --> 00:24:57,990 2 तरीके हैं - या तो आप इसे डॉट ऑपरेटर के साथ जोड़ना कर सकते हैं, 336 00:24:57,990 --> 00:25:02,230 या एक प्लेसहोल्डर का उपयोग करें. 337 00:25:07,580 --> 00:25:12,750 >> उपयोगकर्ताओं को अंततः के लिए खरीद और बेच शेयरों जा रहे हैं. 338 00:25:12,750 --> 00:25:18,450 हम उन्हें शेयरों कि वे वर्तमान में है के सब देखकर कुछ रास्ते की अनुमति चाहते हैं. 339 00:25:18,450 --> 00:25:21,350 हम अपने पोर्टफोलियो है कि कॉल करने के लिए जा रहे हैं. 340 00:25:21,350 --> 00:25:26,180 पोर्टफोलियो, शायद प्रत्येक उपयोगकर्ता के लिए होगा, पंक्तियों का एक गुच्छा शामिल 341 00:25:26,180 --> 00:25:31,760 लिस्टिंग के शेयर प्रकार है कि वे और फिर कैसे वे उन लोगों के कई. 342 00:25:31,760 --> 00:25:36,500 हमारे मौजूदा तालिका - अभी हम हमारे डेटाबेस में उपयोगकर्ताओं को तालिका है. 343 00:25:36,500 --> 00:25:41,780 यह एक उपयोगकर्ता के रूप में के रूप में अच्छी तरह से उनके पासवर्ड और कितना नकद वे उपयोगकर्ता नाम शामिल हैं. 344 00:25:41,780 --> 00:25:50,390 भीतर है कि उनके शेयरों के सभी के संचय के लिए कोई असली तरीका है. 345 00:25:50,390 --> 00:25:58,010 ऐसा लगता है जैसे हम हर शेयर के लिए नए स्तंभ सम्मिलित कर सकते हैं नहीं है. 346 00:25:58,010 --> 00:26:03,650 यह एक बहुत, बहुत लंबे पंक्ति हो सकता है क्योंकि हम एक अनंत मात्रा 347 00:26:03,650 --> 00:26:06,200 शेयरों कि वे हो सकता है के प्रकार के. 348 00:26:06,200 --> 00:26:09,150 तो, बजाय हम क्या करेंगे एक ही डेटाबेस के भीतर है, 349 00:26:09,150 --> 00:26:15,000 हम एक उपयोगकर्ता तालिका होगा, लेकिन तब भी हम एक पोर्टफोलियो तालिका होगा. 350 00:26:15,000 --> 00:26:18,430 पोर्टफोलियो तालिका निश्चित रूप से उपयोगकर्ताओं को तालिका से लिंक किया जाएगा, 351 00:26:18,430 --> 00:26:24,600 लेकिन बजाय पोर्टफोलियो तालिका संरचना शेयर जानकारी होगी, 352 00:26:24,600 --> 00:26:27,780 उपयोगकर्ता है कि स्टॉक के कितने शेयर, 353 00:26:27,780 --> 00:26:31,620 के रूप में के रूप में अच्छी तरह से विशेष रूप से एक उपयोगकर्ता के आईडी नंबर. 354 00:26:31,620 --> 00:26:34,620 आप उपयोगकर्ताओं को तालिका जो एक आईडी के रूप में के रूप में अच्छी तरह से उपयोक्तानाम, हैश है - 355 00:26:34,620 --> 00:26:40,130 जो पासवर्ड, एन्क्रिप्टेड पासवर्ड है - 356 00:26:40,130 --> 00:26:42,130 और फिर वे नकदी की राशि है. 357 00:26:42,130 --> 00:26:47,900 आईडी नंबर पोर्टफोलियो से आईडी नंबर से जोड़ा जाएगा. 358 00:26:47,900 --> 00:26:52,490 पोर्टफोलियो सिर्फ शेयर के प्रतीक के रूप में के रूप में अच्छी तरह से शेयर होगा - 359 00:26:52,490 --> 00:26:55,410 कि शेयर कि उपयोगकर्ता के शेयरों की संख्या. 360 00:26:55,410 --> 00:26:58,520 उस पोर्टफोलियो तालिका में आप मूल रूप से करना होगा 361 00:26:58,520 --> 00:27:03,760 सभी शेयर अपने साइट पर उपयोगकर्ताओं के सभी के पास. 362 00:27:03,760 --> 00:27:10,550 बाद में, केवल एक निश्चित उपयोगकर्ता के शेयरों निर्दिष्ट - केवल अपने पोर्टफोलियो - 363 00:27:10,550 --> 00:27:15,360 आप अपने पोर्टफोलियो की है कि इस तरह की मेज से मूल्यों को पुनः प्राप्त होगा 364 00:27:15,360 --> 00:27:19,930 आईडी नंबर है कि उपयोगकर्ता के लिए विशिष्ट है. 365 00:27:26,520 --> 00:27:34,890 >> जब आप पोर्टफोलियो को प्रदर्शित करते हैं, तो आप एक उपयोगकर्ता के पोर्टफोलियो में शेयरों की प्रत्येक रिपोर्ट चाहता हूँ. 366 00:27:34,890 --> 00:27:41,670 आप शेयरों की संख्या और उन शेयरों के वर्तमान मूल्य को रिपोर्ट करने के लिए चाहता हूँ. 367 00:27:41,670 --> 00:27:45,950 उन शेयरों की है कि मौजूदा मूल्य पोर्टफोलियो तालिका में संग्रहीत नहीं है 368 00:27:45,950 --> 00:27:51,640 पर कम से कम है कि - हर दिन याहू द्वारा वजह है कि अद्यतन किया जा रहा है. 369 00:27:51,640 --> 00:27:58,550 कि जानकारी प्राप्त करने के लिए, आपको लगता है कि अपने एसक्यूएल क्वेरी से संदर्भित नहीं कर सकते हैं. 370 00:27:58,550 --> 00:28:02,400 समारोह हमें क्या प्रदान करता है? समारोह क्या कीमत मिल जाएगा? 371 00:28:02,400 --> 00:28:09,110 यह देखने का है, तो एक विशेष प्रतीक पर लुकअप का उपयोग कर आप जानकारी का एक बहुत कुछ दे देंगे. 372 00:28:09,110 --> 00:28:13,710 यह आप सूचना के 3 टुकड़े दे दूँगा - नाम, प्रतीक, के रूप में के रूप में अच्छी तरह से कीमत. 373 00:28:13,710 --> 00:28:17,490 एक बार जब आप एक निश्चित प्रतीक देखने का, तो आप कीमत मिल सकती है, 374 00:28:17,490 --> 00:28:20,460 और फिर तुम कीमत का उपयोग करने के लिए अपने पोर्टफोलियो में प्रदर्शित किया जा सकता है. 375 00:28:20,460 --> 00:28:26,190 >> पोर्टफोलियो भी उपयोगकर्ता की वर्तमान नकदी संतुलन को प्रदर्शित करना चाहिए. 376 00:28:26,190 --> 00:28:30,310 कि क्षेत्र अपने उपयोगकर्ताओं को तालिका में संग्रहीत किया जाता है. 377 00:28:30,310 --> 00:28:33,400 तो याद है कि हम मूल रूप से कर रहे हैं - 378 00:28:33,400 --> 00:28:36,850 हम PHP फ़ाइलों के विभिन्न प्रकार के कर रहे हैं. 379 00:28:36,850 --> 00:28:40,160 हम एक नियंत्रक है जो मूल रूप से आप के लिए सब सोच करता है के लिए जा रहे हैं. 380 00:28:40,160 --> 00:28:45,940 और फिर हम एक है जो टेम्पलेट में टेम्पलेट outputting डेटा के साथ सौदा किया है. 381 00:28:45,940 --> 00:28:50,790 तुम क्या चर नियंत्रक के अंदर लेने की आवश्यकता होगी के बारे में सोच है 382 00:28:50,790 --> 00:29:01,630 यदि हम एक पोर्टफोलियो जो हर नाम, प्रतीक, और शेयर संख्या outputs के साथ काम कर रहे हैं, 383 00:29:01,630 --> 00:29:03,730 के रूप में के रूप में अच्छी तरह से एक शेयर की मौजूदा कीमत, 384 00:29:03,730 --> 00:29:06,950 तो आप मूल रूप में पारित करने के कुछ तरीके खोजने के लिए चाहता हूँ - 385 00:29:06,950 --> 00:29:12,070 आप मूल्यों है कि है कि मैच की एक सरणी में पारित कर सकते हैं. 386 00:29:15,250 --> 00:29:24,360 >> चलो कैसे आप शेयरों की सभी पुनः प्राप्त हो सकता है का एक उदाहरण में जाने 387 00:29:24,360 --> 00:29:26,210 एक विशेष उपयोगकर्ता द्वारा स्वामित्व. 388 00:29:26,210 --> 00:29:31,400 अभी तक यह नहीं काम कर रहा है शेयर की कीमत के साथ. 389 00:29:31,400 --> 00:29:33,520 क्या यह करना होगा एक क्वेरी को चलाने के लिए है. 390 00:29:33,520 --> 00:29:37,070 यह प्रतीक के रूप में के रूप में अच्छी तरह के शेयरों से प्राप्त होता है - 391 00:29:37,070 --> 00:29:42,770 मैं इस तालिका को बुला रहा हूँ, लेकिन इस मामले में यह क्या होगा? 392 00:29:42,770 --> 00:29:49,400 तालिका का नाम क्या है कि हम कि प्रतीक और शेयरों है के साथ काम कर रहे हैं 393 00:29:49,400 --> 00:29:52,280 एक विशेष उपयोगकर्ता के लिए? 394 00:29:52,280 --> 00:29:56,410 यह या तो उपयोगकर्ताओं या पोर्टफोलियो है. 395 00:29:56,410 --> 00:29:57,820 पोर्टफोलियो. 396 00:29:57,820 --> 00:30:03,220 क्या यह करना होगा प्रतीकों और शेयरों के लिए क्वेरी पोर्टफोलियो 397 00:30:03,220 --> 00:30:04,920 एक विशेष उपयोगकर्ता के लिए. 398 00:30:04,920 --> 00:30:09,260 यहाँ मैं कहता हूँ, (SELECT प्रतीक tbl से शेयर - 399 00:30:09,260 --> 00:30:12,280 लेकिन तालिका के बजाय, आप को पोर्टफोलियो के साथ उस जगह जा रहे हैं. 400 00:30:12,280 --> 00:30:15,220 मूल रूप से 'जहां' मेरी हालत है. 401 00:30:15,220 --> 00:30:21,050 मैं कह रहा हूँ कि मैं केवल उन साहचर्य arrays है कि अनुरूप प्राप्त करना चाहते हैं 402 00:30:21,050 --> 00:30:23,850  इस निम्नलिखित हालत - आईडी के बराबर होती है. 403 00:30:23,850 --> 00:30:27,600  तो मैं एक placeholder डाल रहा हूँ वहाँ और फिर सत्र आईडी. 404 00:30:27,600 --> 00:30:36,720 क्या यह करना होगा पंक्तियों में प्रत्येक पंक्ति के लिए कह रहा है. 405 00:30:36,720 --> 00:30:40,940 यह एक साफ के बजाय वास्तव में पाश के लिए एक सेट करने के लिए है 406 00:30:40,940 --> 00:30:47,450 कि अनुक्रमित के सब से अधिक दोहराता है, तो PHP में आप एक के लिए प्रत्येक लूप हो सकता है. 407 00:30:47,450 --> 00:30:53,520 >> यदि आप किसी सरणी है, तो आप कह सकते हैं मैं हर लगातार तत्व कॉल करने के लिए जा रहा हूँ - 408 00:30:53,520 --> 00:30:57,930 मैं हर तत्व इस नाम को कॉल करने के लिए जा रहा हूँ. 409 00:30:57,930 --> 00:31:02,780 तो, इन तत्वों में से हर एक के लिए, मैं उन्हें इस फोन करने जा रहा हूँ, 410 00:31:02,780 --> 00:31:04,500 तो मैं यह कर सकते हैं. 411 00:31:04,500 --> 00:31:10,370 प्रत्येक के लिए इस में, आप अपने वास्तविक सरणी, और प्रत्येक पंक्ति आप पंक्ति को कॉल करने के लिए जा रहे हैं के रूप में पंक्तियाँ है. 412 00:31:10,370 --> 00:31:12,420 हर बार यह शरीर निष्पादित करता है, 413 00:31:12,420 --> 00:31:16,960 यह ऊपर जाना है और यह पंक्ति पंक्तियों में अगले तत्व को अद्यतन करेगा. 414 00:31:18,900 --> 00:31:25,260 >> अब, शेयर खरीदने के मामले में, 415 00:31:25,260 --> 00:31:29,500 हम क्या करना चाहते स्टॉक मिलता है कि उपयोगकर्ता के लिए खरीदना चाहता है 416 00:31:29,500 --> 00:31:35,300 और शेयरों की राशि है कि उपयोगकर्ता के लिए खरीदना चाहता है, और फिर - अगर वे चाहते हैं - 417 00:31:35,300 --> 00:31:38,120 कि शेयर को अपने पोर्टफोलियो में जोड़. 418 00:31:38,120 --> 00:31:40,310 जाहिर है, अगर वे कुछ खरीद रहे हैं, तो है कि कमी करने के लिए जा रहा है 419 00:31:40,310 --> 00:31:43,520 वे पैसे की राशि है, इसलिए, कि उनके नकदी को कम करने के लिए जा रहा है. 420 00:31:43,520 --> 00:31:48,380 हम पोर्टफोलियो के रूप में के रूप में अच्छी तरह से उपयोगकर्ताओं को तालिका को अद्यतन करने के साथ काम करने जा रहे हैं, 421 00:31:48,380 --> 00:31:50,300 जो नकद शामिल हैं. 422 00:31:50,300 --> 00:31:54,920 लेकिन पहले, आप वास्तविक स्टॉक और शेयरों की राशि है कि उपयोगकर्ता चाहता है पाने की जरूरत है. 423 00:31:54,920 --> 00:32:00,010 उस के लिए, आप एक HTML फार्म कि स्टॉक के प्रतीक के लिए पूछना होगा की आवश्यकता होगी 424 00:32:00,010 --> 00:32:03,360 है कि आप के रूप में के रूप में अच्छी तरह से शेयरों की संख्या खरीदना चाहते हैं. 425 00:32:03,360 --> 00:32:08,300 तो आप को जोड़ना चाहते हैं. 426 00:32:08,300 --> 00:32:13,750 आप निश्चित मूल्यों का चयन करने के लिए चाहता हूँ. 427 00:32:13,750 --> 00:32:19,670 हम यह एक छोटा सा के माध्यम से चला गया है पहले से ही है, लेकिन जब आप कुछ पंक्तियों को प्राप्त करने की कोशिश कर रहे हैं - 428 00:32:19,670 --> 00:32:22,020 एसक्यूएल तालिका से कुछ पंक्तियों को पुनः प्राप्त करने के लिए, 429 00:32:22,020 --> 00:32:24,290 यह निम्न सिंटैक्स का है. 430 00:32:24,290 --> 00:32:28,400 आप चयन किया है, और फिर अगर आप एक स्टार निर्दिष्ट, 431 00:32:28,400 --> 00:32:31,830 कि मूल रूप से पूरे, आप के लिए पूरी पंक्ति को वापस कर देंगे. 432 00:32:31,830 --> 00:32:36,890 तो फिर, तुम हालत जहां, और तो आप निर्दिष्ट है - 433 00:32:36,890 --> 00:32:39,990 मैं केवल उपयोगकर्ता नाम मेल में बराबर होना चाहते हैं, 434 00:32:39,990 --> 00:32:46,660 तो यह केवल उपयोगकर्ताओं में पंक्ति है कि मेल में मेल खाती है प्राप्त करेंगे. 435 00:32:46,660 --> 00:32:52,860 >> जब कोई उपयोगकर्ता एक पोर्टफोलियो के लिए एक शेयर में जोड़ना चाहता है, 436 00:32:52,860 --> 00:32:54,400 आप कुछ त्रुटियों के लिए जांच की जरूरत है. 437 00:32:54,400 --> 00:32:57,680 आप सुनिश्चित करें कि उपयोगकर्ता वास्तव में शेयर बर्दाश्त कर सकते हैं बनाना चाहते हैं, 438 00:32:57,680 --> 00:33:00,810 ताकि आप अपने नकदी की जाँच करने के लिए चाहता हूँ. 439 00:33:00,810 --> 00:33:05,810 इससे पहले, हम सितारा इस्तेमाल करने के लिए एक एसक्यूएल तालिका से एक पूरी पंक्ति को पुनः प्राप्त. 440 00:33:05,810 --> 00:33:08,930 लेकिन यहाँ, हम वास्तव में सिर्फ निर्दिष्ट कर सकते हैं कि मैं केवल 1 मूल्य चाहते हैं कर सकते हैं - 441 00:33:08,930 --> 00:33:10,080 मैं केवल नकदी चाहते हैं. 442 00:33:10,080 --> 00:33:17,970 तो यहाँ यह आईडी संख्या 1 के साथ उपयोगकर्ता के लिए नकद वापसी होगी. 443 00:33:17,970 --> 00:33:25,940 यदि पहले से ही एक उपयोगकर्ता एक निश्चित स्टॉक खरीदा गया है, लेकिन फिर उस स्टॉक के अधिक खरीदता है, 444 00:33:25,940 --> 00:33:30,440 तो आपके पोर्टफोलियो में आप एक अलग लाइन नहीं करना चाहती, 445 00:33:30,440 --> 00:33:34,770 एक और पंक्ति कि कि नए लेनदेन होता है. 446 00:33:34,770 --> 00:33:37,950 आप वास्तव में राशि का अद्यतन करना चाहते हैं. 447 00:33:37,950 --> 00:33:42,530 सब है कि वास्तव में बदल रहा है शेयरों की राशि है कि है कि उपयोगकर्ता का मालिक है. 448 00:33:42,530 --> 00:33:47,730 यदि आप क्वेरी में डालने का उपयोग करें - तो यह सिर्फ आपके पोर्टफोलियो में इन मूल्यों के सभी डालें 449 00:33:47,730 --> 00:33:51,710 उपयोगकर्ता आईडी संख्या के रूप में के रूप में अच्छी तरह से स्टॉक का प्रतीक है कि वे खरीद रहे हैं 450 00:33:51,710 --> 00:33:57,750 और शेयरों, तो आप भी निर्दिष्ट करने के लिए करना चाहते हूँ, ठीक है, अगर मैं एक नकली चाबी में चलाने - 451 00:33:57,750 --> 00:34:00,750 इस मामले में, नकली चाबी न केवल उपयोगकर्ता आईडी है, लेकिन यह भी स्टॉक प्रतीक 452 00:34:00,750 --> 00:34:08,340 क्योंकि आप ही कर सकते हैं - हमारे आधार यह है कि आप केवल 1 पंक्ति हो सकता है 453 00:34:08,340 --> 00:34:10,699  कि 1 विशिष्ट प्रतीक से मेल खाती है. 454 00:34:10,699 --> 00:34:13,659 तो, नकली चाबी पर - अगर आप एक टक्कर में रन - 455 00:34:13,659 --> 00:34:18,520 तुम सिर्फ अपनी नई मूल्य के शेयरों को अद्यतन करने के लिए जा रहे हैं. 456 00:34:18,520 --> 00:34:23,290 शेयरों के बराबर होती है जो कुछ भी हम प्लस के शेयरों की संख्या है कि उपयोगकर्ता की खरीद की है से पहले था. 457 00:34:27,790 --> 00:34:31,090 >> अब है कि हम पोर्टफोलियो तालिका को नवीनीकृत किया है, 458 00:34:31,090 --> 00:34:34,730 हम उपयोगकर्ता नकद अद्यतन करने के लिए चाहता हूँ. 459 00:34:34,730 --> 00:34:40,300 उपयोगकर्ताओं को तालिका में है, तो हम नकदी से एक निश्चित राशि को घटाकर किया जा रहे हैं. 460 00:34:40,300 --> 00:34:46,270 - और फिर एक निश्चित राशि मुमकिन है, यह नकद नकद ऋण के बराबर हो जा रहा है. 461 00:34:46,270 --> 00:34:50,560 नकदी को अद्यतन करने के लिए, आप - 462 00:34:50,560 --> 00:34:55,699 अगर मैं मेल में दूर से पैसे ले जाना चाहता था, तो मैं इस क्वेरी को चलाने होगा - 463 00:34:55,699 --> 00:35:00,220 उपयोगकर्ताओं को 'अपडेट' और फिर नकदी के लिए नकद स्तंभ सेट - 464 00:35:00,220 --> 00:35:07,300 >> मैं 9999 डॉलर निकाल केवल अगर उपयोक्तानाम मेल में बराबर है. 465 00:35:07,300 --> 00:35:12,020 लेकिन, इस मामले में, हम करने के लिए विशेष रूप से 9999 घटाना नहीं करना चाहती. 466 00:35:12,020 --> 00:35:17,610 हम निर्दिष्ट करने के लिए करना चाहते हैं, ठीक है, हम करने के लिए शेयर की मौजूदा कीमत घटाना चाहते हैं 467 00:35:17,610 --> 00:35:22,400 शेयरों की संख्या है कि वे खरीद रहे हैं से गुणा. 468 00:35:25,260 --> 00:35:29,910 >> अब हम उन्हें शेयरों है कि वे सभी को देखने के लिए अनुमति दी है, 469 00:35:29,910 --> 00:35:33,080 के साथ ही और अधिक शेयर खरीदने की. 470 00:35:33,080 --> 00:35:37,430 हम भी पहले उन्हें एक शेयर की मौजूदा कीमत को देखने के लिए अनुमति दी. 471 00:35:37,430 --> 00:35:40,030 यहाँ हम उन्हें बेचने के लिए अनुमति देना चाहते हैं. 472 00:35:40,030 --> 00:35:42,160 पहले हम मूल रूप से प्रदर्शित करना चाहते हैं - 473 00:35:42,160 --> 00:35:45,270 हम उन्हें स्टॉक है कि वे सभी को देखने के लिए अनुमति देना चाहते हैं, 474 00:35:45,270 --> 00:35:53,170 तो यहाँ हम पोर्टफोलियो से पंक्तियों के सभी प्रदर्शित करना चाहते हैं. 475 00:35:53,170 --> 00:35:56,650 अगर वे एक निश्चित स्टॉक को बेचने के लिए चुनते हैं, 476 00:35:56,650 --> 00:35:59,140 तो हम मानते हैं कि वे यह सब बेचने के लिए जा रहे हैं. 477 00:35:59,140 --> 00:36:04,350 वे सिर्फ उनके शेयरों का 50% हिस्सा बेचने के लिए नहीं जा रहे हैं, वे यह 100% को बेचने के लिए जा रहे हैं. 478 00:36:04,350 --> 00:36:08,630 हम सिर्फ पोर्टफोलियो से पूरी पंक्ति को नष्ट कर सकते हैं. 479 00:36:08,630 --> 00:36:17,520 हम कुछ प्रतीक के दिए गए उपयोगकर्ता के शेयरों को नष्ट कर सकते हैं. 480 00:36:17,520 --> 00:36:21,410 वहाँ उस के लिए वाक्यविन्यास है. 481 00:36:21,410 --> 00:36:22,710 >> फिर हम नकद अद्यतन करना चाहते हैं. 482 00:36:22,710 --> 00:36:30,930 हम बराबर नकद में वे बेच रहे हैं शेयरों की राशि को जोड़कर किया जा जा रहे हैं 483 00:36:30,930 --> 00:36:34,640 शेयर की मौजूदा कीमत से गुणा - 484 00:36:34,640 --> 00:36:38,610 किस कीमत पर वे इसे खरीदा नहीं है, बल्कि कीमत पर जो वे कर रहे हैं - 485 00:36:38,610 --> 00:36:40,500 मौजूदा कीमत जब वे इसे बेच रहे हैं. 486 00:36:40,500 --> 00:36:43,660 एक शेयर की मौजूदा कीमत को संदर्भित करने के लिए, 487 00:36:43,660 --> 00:36:49,120 आप देखने का उपयोग करना चाहते हैं, जो आप एक शेयर की कीमत दे देंगे 488 00:36:50,030 --> 00:36:52,650 वर्तमान समय में. 489 00:36:52,650 --> 00:36:55,930 >> अब हम इतिहास के साथ छोड़ दिया जाता है, 490 00:36:55,930 --> 00:37:00,170 जो आप उनके लेनदेन के सभी का ट्रैक रखने के लिए एक उपयोगकर्ता की अनुमति चाहते हैं - 491 00:37:00,170 --> 00:37:03,040 देखने के लिए जब भी वे कुछ है, जब भी वे एक शेयर खरीदा बेचा चाहता है. 492 00:37:03,040 --> 00:37:08,870 हम करने के लिए समय है, जिस पर वे कहते हैं कि के रूप में वे कितने खरीदा के रूप में अच्छा प्रदर्शन किया था निर्दिष्ट करना चाहते हैं 493 00:37:08,870 --> 00:37:11,650 और शेयर क्या था. 494 00:37:11,650 --> 00:37:17,800 क्या हम किसी भी मौजूदा मौजूदा संरचना है कि निर्दिष्ट करता है कि क्या है? 495 00:37:17,800 --> 00:37:25,230 खैर, हम पोर्टफोलियो जो संख्या शेयरों कि एक उपयोगकर्ता को प्रदर्शित करता है 496 00:37:25,230 --> 00:37:26,470 एक भी शेयर के लिए. 497 00:37:26,470 --> 00:37:34,060 लेकिन हम जिस तरह से है कि यह अद्यतन में पोर्टफोलियो संरचना रहे हैं जब हम कई खरीद, 498 00:37:34,060 --> 00:37:40,190 जबकि इतिहास चाहिए - अगर आप एप्पल, यह 10 शेयर, और फिर 5 बेचने पर बाद में खरीदते हैं, 499 00:37:40,190 --> 00:37:44,040 तो आप उन अलग अलग कार्रवाई, अलग पंक्तियों के रूप में देखना चाहते हैं. 500 00:37:44,040 --> 00:37:48,520 जबकि कि कार्रवाई हमारे पोर्टफोलियो तालिका में कल्पना करने के लिए है कि 501 00:37:48,520 --> 00:37:52,540 बस है कि विशेष रूप से पंक्ति के लिए एक अद्यतन होगा, 502 00:37:52,540 --> 00:37:55,740  तो हम शायद किसी अन्य तालिका चाहते करने जा रहे हैं. 503 00:37:55,740 --> 00:38:00,460 हमारे डेटाबेस में, हम अपने उपयोगकर्ताओं को तालिका है, हम अपने पोर्टफोलियो टेबल है, 504 00:38:00,460 --> 00:38:04,090 और अब हम शायद एक इतिहास तालिका चाहता हूँ. 505 00:38:04,090 --> 00:38:08,070 यही इतिहास तालिका वर्तमान दिनांक का ट्रैक रख सकते हैं, 506 00:38:08,070 --> 00:38:12,800 के रूप में के रूप में अच्छी तरह से विशेष रूप से स्टॉक प्रतीक के रूप में के रूप में अच्छी तरह से कितने शेयर, 507 00:38:12,800 --> 00:38:15,410 और फिर क्या कार्रवाई यह है - 508 00:38:15,410 --> 00:38:18,800 आप उन शेयरों को खरीद रहे थे कि या आप उन्हें बेच रहे थे. 509 00:38:20,660 --> 00:38:25,720 >> तारीख के साथ सौदा करने के लिए, वहाँ तरीके कि तुम यह कर सकते हैं के एक जोड़े हैं. 510 00:38:25,720 --> 00:38:28,820 PHP तारीख का ट्रैक रखने का एक तरीका है, जो आप खुद देख सकते हैं. 511 00:38:28,820 --> 00:38:33,990 एसक्यूएल में आप भी या तो अभी या वर्तमान टाइमस्टैम्प का उपयोग कर सकते हैं. यह आप पर निर्भर है. 512 00:38:33,990 --> 00:38:40,720 सिर्फ यकीन है कि हर बार जब कोई उपयोगकर्ता खरीदता या बेचता है, तो आप अपने नकदी अद्यतन हो जाएगा 513 00:38:40,720 --> 00:38:46,750 उपयोगकर्ताओं को तालिका में, आप विभागों तालिका में पंक्तियों को अद्यतन किया हूँ, 514 00:38:46,750 --> 00:38:50,900 तो आप भी इतिहास को अद्यतन करने जाएगा, 515 00:38:50,900 --> 00:38:56,260 इसलिए वहाँ के लिए 3 अलग एसक्यूएल प्रश्नों कि तुम वहाँ बुला रहे हो जाएगा होने जा रहे हैं. 516 00:38:58,640 --> 00:39:01,530 अब हम कार्यक्षमता का एक गुच्छा है. 517 00:39:01,530 --> 00:39:10,600 >> बस अनुस्मारक है कि अपने सूचकांक फाइल में, आप अपने कम से कम करने के लिए लिंक चाहता हूँ के एक जोड़े - 518 00:39:10,600 --> 00:39:15,550 लेकिन आप एक उपयोगकर्ता buy.php पृष्ठ पर लिंक करने के लिए अनुमति देने के लिए चाहता हूँ. 519 00:39:15,550 --> 00:39:23,560 यह अनुमति देने के लिए जा रहा है एक उपयोगकर्ता - buy.php नियंत्रक है, तो है कि या तो जा रहा है 520 00:39:23,560 --> 00:39:29,170 आप के लिए भेज कि आप फार्म का है कि आप चीजों को देखने के लिए अनुमति देता है के लिए भेज जा रहा है. 521 00:39:29,170 --> 00:39:34,420 हम इतिहास है. हम बाहर प्रवेश किया है, एक बोली हो रही है और फिर बेच रहे हैं. 522 00:39:34,420 --> 00:39:37,350 वे कम से कम तुम क्या दिखाना चाहते हैं. 523 00:39:37,350 --> 00:39:43,640 पोर्टफोलियो के संदर्भ में, पोर्टफोलियो वास्तव में सूचकांक पृष्ठ में दिखाया गया है. 524 00:39:43,640 --> 00:39:52,050 यदि हम इस सूचकांक के लिए जाना है, यहाँ हम देख है कि यह portfolio.php renders 525 00:39:52,050 --> 00:40:00,050 और साहचर्य सरणी में गुजरता है - मूलतः शीर्षक पोर्टफोलियो के बराबर है. 526 00:40:00,050 --> 00:40:02,610 तो, इस नियंत्रक है. 527 00:40:02,610 --> 00:40:08,000 यदि हम portfolio.php का टेम्पलेट के लिए जाना है, 528 00:40:08,000 --> 00:40:18,060 तो यह सब है - मूल रूप से एक चित्र प्रदर्शित करता है कि कहते हैं, ओह, यह साइट निर्माणाधीन है. 529 00:40:18,060 --> 00:40:23,810 बाद में, एक बार आप में पास - you'll मूल रूप से अधिक विशिष्ट जानकारी में पारित हो. 530 00:40:23,810 --> 00:40:27,400 सिर्फ शीर्षक के बजाय, आप शायद अधिक बातों में गुजर रहा हो जाएगा. 531 00:40:27,400 --> 00:40:32,010 एक बार जब आप उन मूल्यों है, तो portfolio.php उन मूल्यों के साथ सौदा कर सकते हैं 532 00:40:32,010 --> 00:40:34,490 और उन्हें आदेश के किसी भी प्रकार में बाहर मुद्रण. 533 00:40:34,490 --> 00:40:41,660 >> एक बार जब आप उन सभी को क्रियान्वित किया है, आप भी 1 अधिक सुविधा को लागू करने की जरूरत है. 534 00:40:41,660 --> 00:40:44,890 यह या तो एक उपयोगकर्ता अपने पासवर्ड को बदलने की अनुमति जा सकता है, 535 00:40:44,890 --> 00:40:50,110 अपने पासवर्ड रीसेट अगर वे यह भूल गए हैं तो पासवर्ड रीसेट के लिए तो, 536 00:40:50,110 --> 00:40:54,560 आप शायद यह भी रजिस्टर संपादित करने के लिए चाहता हूँ इतना है कि यह उन्हें एक ईमेल निर्दिष्ट करने की अनुमति देता है, 537 00:40:54,560 --> 00:40:57,910 यदि ऐसा है तो वे अपने पासवर्ड भूल जाते हैं, तो वे कहते हैं कि प्राप्त कर सकते हैं. 538 00:40:57,910 --> 00:41:02,870 वे शायद उनके उपयोगकर्ता नाम में प्रवेश कर सकते हैं और फिर उन्हें एक ईमेल के लिए भेजा जाएगा 539 00:41:02,870 --> 00:41:06,180 अपने पासवर्ड को रीसेट करने के लिए सक्षम होने के लिए एक लिंक के साथ. 540 00:41:06,180 --> 00:41:10,980 आप कुछ है कि उपयोगकर्ताओं को प्राप्तियों पाने के लिए अनुमति देता है हो सकता है 541 00:41:10,980 --> 00:41:12,380 हर बार वे खरीदने के लिए या कुछ और बेचते हैं, 542 00:41:12,380 --> 00:41:19,910 और फिर अंत में, उन्हें अपनी वेबसाइट के लिए नकद जोड़ने के लिए अनुमति देते हैं. 543 00:41:19,910 --> 00:41:24,970 बस नियंत्रकों और एक छोटा सा टेम्पलेट्स की अवधारणा में वापस जाने के लिए. 544 00:41:24,970 --> 00:41:31,170 आप एक तरह कुछ होगा तो आप एक नियंत्रक यहाँ होगा. 545 00:41:31,170 --> 00:41:35,080 अभी, हम login.php उदाहरण में देख रहे हैं. 546 00:41:35,080 --> 00:41:38,220 जब हम एक नियंत्रक है, मूल रूप से यह 2 मामलों ले जा रहा है. 547 00:41:38,220 --> 00:41:42,090 जब हम नियंत्रकों है, हम इस टुकड़े में कर रहे हैं कि हम भी कर रहे हैं के साथ निपटने की तरह 548 00:41:42,090 --> 00:41:43,880 जब हम के रूप में अच्छी तरह से किया है. 549 00:41:43,880 --> 00:41:47,500 नियंत्रक मूल रूप से अलग कार्यों को करना होगा - 550 00:41:47,500 --> 00:41:53,880 अगर पहले से ही एक फार्म प्रस्तुत किया गया है, और फिर यदि दो उपयोगकर्ता उस पृष्ठ के लिए आ रहा है 551 00:41:53,880 --> 00:41:56,870 पहली बार के लिए है और अभी भी निवेश करने के लिए है कि फार्म की जरूरत है. 552 00:41:56,870 --> 00:42:02,820 >> मैं उस मामले 1 कूद अंदर फार्म होने के पहले मामले के लिए जाने से पहले जा रहा हूँ 553 00:42:02,820 --> 00:42:12,640 यहाँ हम कहते हैं, यदि प्रपत्र विधि पोस्ट के साथ प्रस्तुत किया गया है - 554 00:42:12,640 --> 00:42:13,580 एक सा है कि के बारे में चिंता करने की ज़रूरत नहीं है. 555 00:42:13,580 --> 00:42:19,780 उस बारे में चिंता नहीं बहुत ज्यादा है, लेकिन समझने की है कि मूल रूप से इस समारोह के साथ सौदे 556 00:42:19,780 --> 00:42:22,430 कि एक फार्म प्रस्तुत किया गया है या नहीं. 557 00:42:22,430 --> 00:42:25,640 इस हालत सच है अगर एक उपयोगकर्ता के रूप में प्रस्तुत कर दी है. 558 00:42:25,640 --> 00:42:45,940 यदि नहीं, तो हम करने के रेंडर करने login_form.php कॉल करना चाहते जा रहे हैं, और फिर शीर्षक में पारित. 559 00:42:45,940 --> 00:42:48,010 यह शीर्षक सिर्फ मूल रूप से हैडर में प्रदर्शित होने जा रही है. 560 00:42:48,010 --> 00:42:54,990 यह क्या करता है मूल रूप से कहते हैं, ठीक है - ठीक है, यदि कोई उपयोगकर्ता के लिए चला जाता है login.php 561 00:42:54,990 --> 00:43:00,310 है और वास्तव में लॉग इन नहीं है, तो मैं उन्हें पृष्ठ कि कि फार्म है भेजना चाहते हैं 562 00:43:00,310 --> 00:43:03,160 जो उन्हें इनपुट उपयोगकर्ता नाम और पासवर्ड के लिए अनुमति देता है. 563 00:43:03,160 --> 00:43:07,590 तो मैं जाने के लिए login_form, और फिर है कि वास्तविक रूप है. 564 00:43:07,590 --> 00:43:13,750 तो, एक बार उपयोगकर्ता है कि फार्म प्रस्तुत है, वे इसे login.php करने के लिए प्रस्तुत करने के लिए जा रहे हैं 565 00:43:13,750 --> 00:43:15,840 विधि पोस्ट के साथ. 566 00:43:15,840 --> 00:43:21,560 तो मैं वास्तव में अपने पाश अगर किसी और के इस खंड में प्रवेश करने जा रहा हूँ. 567 00:43:21,560 --> 00:43:29,560 तो यह है कि यहाँ हम प्रपत्र में दर्ज किए गए मानों के साथ सौदा है. 568 00:43:29,560 --> 00:43:32,800 यह यहाँ है कि हम उन लोगों के साथ सौदा. 569 00:43:32,800 --> 00:43:40,860 >> फिर एक बार आप उन मूल्यों के साथ सौदा - अगर आप के साथ काम कर रहे हैं - 570 00:43:40,860 --> 00:43:46,640 का कहना है कि हम quote.php पेज जहां किसी एक शेयर है कि निवेश कर सकते हैं के साथ काम कर रहे हैं 571 00:43:46,640 --> 00:43:49,950 वे देखना चाहते हैं, और फिर उस प्रदर्शन को देखने - 572 00:43:49,950 --> 00:43:52,850 कि इसी तरह की तरह यहाँ है. 573 00:43:52,850 --> 00:43:56,070 यहाँ हम एक प्रवेश फार्म है - you'd शायद एक बोली फार्म है - 574 00:43:56,070 --> 00:44:00,290 लेकिन एक बार तो उपयोगकर्ता है कि वास्तव में जानकारी प्रस्तुत कर दी है, 575 00:44:00,290 --> 00:44:04,810 तो आप नियंत्रक अन्य टेम्पलेट में पारित करने के लिए चाहता हूँ 576 00:44:04,810 --> 00:44:07,430 कि उन्हें वास्तविक जानकारी दिखाएगा. 577 00:44:07,430 --> 00:44:11,250 तो फिर यहाँ के आसपास सही है, तो आप शायद हूँ - 578 00:44:11,250 --> 00:44:18,830 अपनी हालत के अंत के आसपास अगर विधि - पोस्ट के बराबर होती है - 579 00:44:18,830 --> 00:44:22,520 शो बोली - तो आप शायद एक पृष्ठ प्रस्तुत करना चाहता हूँ - 580 00:44:22,520 --> 00:44:28,040 जो आपको लगता है कि पेज के लिए भेजता है - show_quote.php - 581 00:44:28,040 --> 00:44:34,120 और फिर उस फ़ाइल में उन मूल्यों को संदर्भ जाएगा. 582 00:44:34,120 --> 00:44:36,480 क्या इसका यह मतलब है? 583 00:44:36,480 --> 00:44:40,390 >> हम एक नियंत्रक है कि मूल रूप से 2 मामलों के साथ सौदों है - 584 00:44:40,390 --> 00:44:42,710 कि क्या आप में है या नहीं, एक फार्म में प्रवेश कर लिया है. 585 00:44:42,710 --> 00:44:43,950 यदि आप एक फार्म नहीं दर्ज किया है, 586 00:44:43,950 --> 00:44:47,300 तो यह है कि प्रपत्र को अनुप्रेषित, जो है तो आप वापस रख उस पृष्ठ पर. 587 00:44:47,300 --> 00:44:54,020 तो, एक बार आप नियंत्रक में जानकारी है, जो शरीर के साथ सौदा होगा 588 00:44:54,020 --> 00:44:59,750 के रूप में आवश्यक जानकारी या तो शेयर के लिए मूल्यों को देख, 589 00:44:59,750 --> 00:45:04,150 और एक बार फिर यह उन मूल्यों को देखा है और उन्हें एक अच्छी तरह से स्वरूपित सरणी में है, 590 00:45:04,150 --> 00:45:08,180 तब टेम्पलेट पेज में कि सरणी पारित कर सकते हैं 591 00:45:08,180 --> 00:45:10,330  कि जानकारी outputting के साथ कि सौदों. 592 00:45:10,330 --> 00:45:14,680 >> फिर, यह वेब के बाद से, यह मज़ा आने वाला है. 593 00:45:14,680 --> 00:45:20,310 हम सी के बाहर हो तो हम ASCII और कि टर्मिनल उत्पादन तक सीमित नहीं रहे, 594 00:45:20,310 --> 00:45:21,800 तो इस के साथ मजाक किया है. 595 00:45:21,800 --> 00:45:24,920 आप इसे के रूप में दृश्य के रूप में आप चाहते हैं कर सकते हैं. 596 00:45:24,920 --> 00:45:31,860 आप उपयोगकर्ताओं को एक समय में डॉलर के निवेश के लाखों लोगों के लिए अनुमति दे सकते हैं, 597 00:45:31,860 --> 00:45:34,730 या उन्हें सीमा और वास्तव में मतलब है और उन्हें केवल अनुमति देने के लिए एक समय में 1 पैसा दर्ज 598 00:45:34,730 --> 00:45:36,330 या ऐसा कुछ. 599 00:45:36,330 --> 00:45:38,550 निश्चित रूप से इस के साथ मज़ा है सुनिश्चित करें. 600 00:45:38,550 --> 00:45:47,030 >> PHP कोड थोड़ा सरल है कि यह थोड़ा आसान है अपने pseudocode नक्शा 601 00:45:47,030 --> 00:45:50,070 वास्तविक क्रियान्वयन में. 602 00:45:50,070 --> 00:45:56,320 तो, निश्चित रूप से इस के साथ मज़ा है, क्योंकि यह वास्तव में हमारे CS50 में पिछले टुकड़ा है. 603 00:45:56,320 --> 00:46:01,150 उस के साथ, यह 7 Walkthrough था. 604 00:46:01,150 --> 00:46:04,640 एक बार जब आप walkthrough देख समाप्त कर रहे हैं और अपने pset समाप्त, 605 00:46:04,640 --> 00:46:09,590 तो ये भी थे psets, और अब हम अंतिम उत्पाद पर कर रहे हैं - 606 00:46:09,590 --> 00:46:12,330 के बाद हम एक प्रश्नोत्तरी के माध्यम से मिलता है. 607 00:46:12,330 --> 00:46:16,200 तो उम्मीद है कि आप उपकरण है कि आप psets से सीखा है का उपयोग कर सकते हैं - 608 00:46:16,200 --> 00:46:21,980 न केवल वाक्यविन्यास, लेकिन कैसे लेने के लिए एक निश्चित अमूर्त विचार - 609 00:46:21,980 --> 00:46:24,950 पसंद है, मैं ऐसा करने के लिए और फिर है कि वास्तव में लागू करने के लिए करना चाहते हैं. 610 00:46:24,950 --> 00:46:28,740 सीखना कैसे वाक्यविन्यास और वितरण कोड के माध्यम से संघर्ष करने के लिए. 611 00:46:28,740 --> 00:46:33,020 अन्य लोगों के कोड को पढ़ना, और फिर है कि पूर्व मौजूदा कार्यों का उपयोग करने की व्याख्या. 612 00:46:33,020 --> 00:46:37,360 >> तो, पिछले pset साथ अच्छे भाग्य. 613 00:46:37,360 --> 00:46:39,930 यह एक खुशी walkthroughs नेतृत्व किया गया है. 614 00:46:39,930 --> 00:46:40,940 मुझे आशा है कि वे आप के लिए मददगार रहा है. 615 00:46:40,940 --> 00:46:46,560 ये Walkthroughs थे, और बहुत बहुत धन्यवाद. 616 00:46:52,580 --> 00:46:56,200 [CS50.TV]