PHP-and-MySQL/C4/File-Upload-Part-1/Hindi

From Script | Spoken-Tutorial
Revision as of 15:25, 2 December 2012 by Pravin1389 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
0:00 नमस्कार। इस टयूटोरियल में मैं आपको दिखाऊँगा कि कैसे एक सरल php उपलोड स्क्रिप्ट बनाएँ।
0:05 यह हमारी उपलोड dot php फाइल में थोड़ा अधिक अग्रिम होगा।
0:10 हम हमारा index dot php इस्तेमाल करेंगे। उपयोगकर्ता को एक फॉर्म देने के लिए हम मुख्य रूप से html कोड इस्तेमाल करेंगे जिससे कि वह इस विशिष्ट फाइल को जमा कर सके।
0:20 फिर upload dot php में हम इस फाइल को संसाधित करेंगे, फाइल की कुछ जानकारियाँ हासिल करेंगे जैसे कि इसका नाम, इसका प्रकार, साइज़, अस्थायी संचित नाम और कोई एरर सूचना यदि पाई गयी हो।
0:33 एरर सूचनाओं का इस्तेमाल यह जानने के लिए कर सकते हैं कि वह पायी गयी हैं या नहीं।
0:38 फिर हम फाइल को संसाधित करने जा रहे हैं और उसको हमारे वेब सर्वर में एक विशिष्ट डायरेक्ट्री में सेव करेंगे।
0:45 इस ट्यूटोरियल के दूसरे भाग में, मैं आपको जल्दी से बताऊँगा कि कैसे विशिष्ट फाइल का प्रकार जाँचे जिससे कि आप इसे फाइल टाइप्स से सुरक्षित कर सकें।
0:54 हम यह भी सीखेंगे कि फाइल की फाइल साइज़ को कैसे जाँचें जिससे कि आप के पास अधिकतम और न्यूनतम फाइल साइज़ हो।
01:04 अतः यहाँ मैंने 'uploaded' नामक एक फोल्डर बनाया है जिसमे मैंने मेरी index और upload dot php फाइल्स बनायीं है।
01:13 और यहीं मेरी फाइल्स संचित हो रही हैं जब वे एक बार अपलोड हो जाती हैं।
01:17 जब फाइल्स अपलोड की जाती हैं तो शुरुआत में वे वेब सर्वर पर एक अस्थायी जगह पर चली जाती हैं नाकि इस फोल्डर में।
01:25 html के लिए- हमें एक फॉर्म बनाने की आवश्यकता है। यह करने के लिए हमारे पास एक form action है और हमारे पास एक विशिष्ट action है जोकि 'upload dot php' है और हमने हमारी फाइल यहाँ बना ली है।
01:38 method को POST के रूप में सेट किया है। इसका कारण यह है कि हमें इसे GET वेरिएबल में संचय करने की आश्यकता नहीं है।
01:45 क्यों? क्योंकि सुरक्षा कारणों की वजह से हम नहीं चाहते कि वेबसाइट पर भेजे जाने वाले binary data को उपयोगकर्ता देखे।
01:53 और साथ ही यहाँ हमारे GET वेरिएबल पर सौ अक्षरों की सीमा है।
01:58 अतः आपके पास एक काफी छोटी फाइल होगी यदि आपके पास डेटा के केवल सौ bits हैं।
02:04 ठीक है, हमारे पास एक और पैरामीटर है जिसे आपने इससे पहले नहीं सुना होगा।
02:11 यह enctype है, एन्कोडिंग टाइप जिसका मतलब है की हम कैसे इसे इनकोड करने जा रहे हैं।
02:20 यह multi-part होगा और हमें एक फॉरवर्ड स्लैश की आवश्यकता है और फिर यह फॉर्म data होगा।
02:28 संक्षिप्त में हम इस प्रारूप को डेटा के रूप में जमा कर रहे हैं- यानि, binary data - शून्य और एक जिसे मैं यहाँ पहले ही बता चुका हूँ।
02:40 ठीक है हमें type मिल गया है जिसमें यह एनकोड होने जा रहा है। हम अपना फॉर्म यहाँ समाप्त करेंगे।
02:50 हमें अपनी फाइल के लिए इनपुट के रूप में कुछ एलीमेंट्स की आवश्यकता होगी।
02:57 इस type को file के रूप में सेट किया गया है और हम इसे विशिष्ट रूप से myfile बोलेंगे।
03:04 ठीक है- पैराग्राफ यहाँ खत्म होता है और फिर हमें बस सबमिट बटन की आवश्यकता है।
03:12 ठीक है तो चलिए इसे अभी देखते हैं। चलिए इस बंद कर देते हैं।
03:18 file upload पर क्लिक करिये। ओह- चलिए वापस चलते हैं। Input- मैंने यहाँ 2 'u's टाइप कर दिए हैं।
03:27 वापस चलते हैं। आप यहाँ देख सकते हैं हमें हमारा इनपुट मिल गया है।
03:31 मैंने इसे ब्राउस कर सकता हूँ । हम देख सकते हैं हमारे पास फाइल्स हैं जिसे हम उपलोड कर सकते हैं ।
03:36 ठीक है- अतः इसे उपयोग के लिए और आसान बनाते हैं।
03:45 फाइल अपलोड करें। इसे रिफ्रेश करते हैं। हमें यहाँ एक अच्छा पेज मिला है।
03:50 हमें हमारा हेडर मिला और एक फाइल को यहाँ अपलोड करने की सम्भावना मिली। साथ ही आवश्यकता पड़ने पर खुद से भी टाइप कर सकते हैं।
03:58 और साथ ही हमारे पास अपलोड बटन है जोकि हमारी upload dot php जमा करता है।
04:04 ठीक है। तो upload dot php के अंदर हमें इस फाइल के संसाधन के लिए एक तरीका चाहिए जोकि हमारे फॉर्म से जमा हुई है ।
04:13 इसको करने का तरीका है कि dollar अंडरस्कोर FILES का इस्तेमाल करें। वास्तव में यह सही नहीं है।
04:19 हम इसका केवल एक उदहारण एको करके बता सकते हैं कि यह सही नहीं है।
04:27 जब हम करते हैं और मैं अपलोड पर क्लीक करता हूँ, हम देख सकते हैं हमें केवल Array मिली है। ऐसा इसलिए क्योंकि यह एक अरै है।
04:३३ चूँकि यह माल्टीडिमेंशनल अरै है, कोष्ठकों के पहले सेट में हम फाइल का नाम लिखेंगे जोकि हमने अपलोड की है और इनपुट बॉक्स का नाम जोकि यहाँ से आया है- जोकि myfile है।
04:49 अतः हम यहाँ myfile इस्तेमाल करेंगे। और दुसरे में कई अन्य चीज़े लिख सकते हैं और सबसे सहज और सरल कहिये तो फाइल का नाम है।
04:59 अतः upload form में वापस चलते हैं और intro dot avi को चुनते हैं। यह यहाँ दर्शाया जाएगा।
05:06 अपलोड पर क्लीक करते हैं और अगले पेज पर हम intro dot avi देखते हैं।
05:11 याद रहे यह हमारा upload dot php फॉर्म है, माफ़ कीजिये फाइल।
05:16 ठीक है तो यह इस प्रकार से था । मैं अभी इसे एक वेरिएबल में संचित करता हूँ।
05:22 अगला हम देखेंगे कि- मैं उसे अभी यहाँ लिखूँगा- फाइल का प्रकार है।
05:30 अतः यह डॉलर अंडरस्कोर फाईल्स है और हम रेफेरेंस myname इस्तेमाल करेंगे।
05:38 और इसके अंदर हमारे पास type होगा। अतः यह प्रकार है या बल्कि हम इसे एको करेंगे जिससे कि आप इसे देख सकें।
05:45 और यह रिफ्रेश किया। इसको रिसेंड करें और अब इसको देखिये- myfile.
05:54 इसे resend करें और और हम यहाँ video slash avi देख सकते हैं। आप ने शायद यह कहीं पहले html में भी देखा होगा।
06:00 उदाहरणस्वरुप- यह image slash png या image slash jpeg, image slash bmp , video slash avi और video slash mpeg या कोई और अन्य प्रारूप हो सकता है।
06:11 इस समय हम यहाँ से देख सकते हैं कि यह एक avi फाइल है अतः इसलिए हमें 'type' में यह मिला।
06:18 अतः हम कह सकते हैं कि type इन सब के बराबर है।
06:22 अगला मैं आपको size बताता हूँ । अतः समय बचाने के लिए मैं क्या करूंगा कि- मैं इस कोड को कॉपी करूँगा, यहाँ पेस्ट करूँगा और इस type को size में बदलूँगा और इसको एको करूँगा।
06:30 आप देख सकते हैं कि आपकी जमा की हुई फाइल की e-property प्राप्त करना काफी सरल है।
06:35 मैं इस पेज को रिफ्रेश करूँगा और रिसेंड पर क्लीक करता हूँ और हम फाइल का साइज़ प्राप्त कर सकते हैं।
06:40 अब चलिए कहते हैं हम इसे लगभग पूर्णांक दस लाख बना देते हैं- दस लाख bytes वास्तव में एक......
06:47 माफ़ कीजिये, दस लाख बिट्स एक मेगाबाईट होता है। myfile वास्तव में एक मेगाबाईट है।
06:54 अतः यहाँ दस लाख मेगाबाइट डेटा है ।
06:58 अतः चलिए इसे साइज़ नामक वेरिएबल में सेव करते हैं। ठीक है?
07:05 सही है फिर, अगला काफी ज़रूरी है जो है 'temporary name'.
07:09 यह थोड़ा अलग लिखा जाता है जैसे टेम्प को अन्क्षिप्त करके tmp और फिर अंडरस्कोर और name.
07:18 यह हमें डाईरेक्टारी देगा जिसमें यह अस्थायी रूप से तब तक संचित होता है जब तक हम इसे अपनी पसंद के फोल्डर में स्थानान्तरित नहीं करते ।
07:25 अतः इस पेज को रिफ्रेश करें।
07:27 Resend पर क्लिक करें और आप देख सकते हैं कि यह एक xampp में जमा हो गया है क्योंकि मैं इस एप्लिकेशन का इस्तेमाल कर रहा हूँ।
07:33 किन्तु यदि आप apache इस्तेमाल कर रहे हैं तो आप php खुद से संचय कर सकते हैं।
07:37 आपके पास यहाँ apache होगा इसके आगे आपकी अस्थायी फाइल का नाम होगा।
07:41 आप देख सकते हैं यह नाम निरुद्देश्यता से उत्पन्न हुआ है जिसके पास tmp एक्स्टेंशन है।.
07:45 किन्तु अभी यह हमारे लिए निरर्थक है।
07:48 अतः हम इसे temp file या temp के रूप में संचित कर सकते हैं। इसे संक्षिप्त रखने के लिए इसे 'temp' लिखते हैं।
07:55 और अंतिम 'error' है। अब मूलतः यदि सबकुछ सही है तो यह शून्य एको करेगा।
08:00 फिर से कॉपी-पेस्ट और इसको error में बदलिए।
08:03 हमें अभी शून्य मिलना चाहिए क्योंकि सबकुछ सही से लिखा गया है।
08:07 और यह कभी भी ऋणात्मक(निगेटिव) वेल्यू नहीं होगी।
08:12 यदि यह शून्य से अधिक है इसका मतलब यह एक एरर(error) कोड दे रहा है जिसका मूल रूप से मतलब है कि आपके पास एक एरर(error) है।
08:21 और चलिए कहते हैं हम इसको error नामक वेरिएबल में संचित करेंगे।
08:28 ठीक है अभी के लिए इतना ही। इस ट्यूटोरियल के दूसरे भाग में मैं आपको दिखाऊँगा कि कैसे अपनी फाइल को अस्थायी संचयन जगह से आपके पसंद की एक विशिष्ट जगह पर लाकर उपलोड करें।
08:39 और हम क्या करेंगे कि हम इस error वेरिएबल को इस्तेमाल करेंगे यह देखने के लिए कि यदि यहाँ कोई एरर्स(errors) हैं।
08:45 यदि यहाँ पर एरर्स(errors) हैं, तब हम इसे एको(echo) करेंगे और एरर(error) कोड इस्तेमाल करेंगे।
08:49 यदि नहीं , हम इस temp को लेंगे और 'move uploaded' file नामक एक विशिष्ट फंक्शन(function) इस्तेमाल करेंगे और हम उसे लेंगे और उसे यहाँ वेब सर्वर पर निर्मित अपनी uploaded directory में संचय करेंगे।
09:01 और इसके बाद मैं आपको कुछ विशेषताएँ बताऊँगा- क्या यह जपेग है? हाँ तब jpeg चित्र को अपलोड होने से अस्वीकार करें या विशिष्ट फाइल साइज़ को अस्वीकार करें ।
09:10 ठीक है तो भाग- 2 में मिलते हैं। देखने के लिए धन्यवाद।

Contributors and Content Editors

Devraj, Pravin1389