एक MySQL डाटाबेस में उपयोगकर्ता प्रस्तुत फ़ाइलें संग्रहीत करना

कभी-कभी अपनी वेबसाइट के उपयोगकर्ताओं से डेटा एकत्र करना और इस जानकारी को स्टोर करना उपयोगी होता है माई एसक्यूएल डेटाबेस। हमने पहले ही देखा है कि आप एक डेटाबेस का उपयोग करके पॉप्युलेट कर सकते हैं पीएचपी, अब हम उपयोगकर्ता के अनुकूल वेब फ़ॉर्म के माध्यम से डेटा को जोड़ने की अनुमति देने की व्यावहारिकता जोड़ेंगे।

अगला, आपको process.php बनाने की जरूरत है, जिस पेज पर हमारा फॉर्म अपना डेटा भेजता है। MySQL डेटाबेस पर पोस्ट करने के लिए इस डेटा को एकत्रित करने का तरीका इस प्रकार है:

बेशक, इससे पहले कि हम कोशिश करें कि हमें यह सुनिश्चित करने की आवश्यकता है कि तालिका वास्तव में मौजूद है। इस कोड को निष्पादित करने के लिए एक तालिका बनानी चाहिए जिसका उपयोग हमारी नमूना फ़ाइलों के साथ किया जा सकता है:

अब आप जानते हैं कि MySQL में यूजर डेटा को कैसे स्टोर किया जाता है, तो चलिए इसे एक कदम आगे बढ़ाते हैं और स्टोरेज के लिए फाइल अपलोड करना सीखते हैं। सबसे पहले, चलो अपना नमूना डेटाबेस बनाते हैं:

पहली चीज जिसे आपको नोटिस करना चाहिए वह एक फ़ील्ड है जिसे कहा जाता है आईडी यह निर्धारित है स्वयं वेतन वृद्धि. यह क्या डाटा प्रकार

instagram viewer
इसका मतलब यह है कि यह प्रत्येक फ़ाइल को 1 पर शुरू करने और 9999 पर जाने के लिए एक अद्वितीय फ़ाइल आईडी आवंटित करने के लिए गिना जाएगा (क्योंकि हमने 4 अंक निर्दिष्ट किए हैं)। आप शायद यह भी देखेंगे कि हमारे डेटा क्षेत्र को कहा जाता है LONGBLOB। कई प्रकार के BLOB हैं जैसा कि हमने पहले उल्लेख किया है। TINYBLOB, BLOB, MEDIUMBLOB और LONGBLOB आपके विकल्प हैं, लेकिन हमने सबसे बड़ी संभव फ़ाइलों के लिए अनुमति देने के लिए हमारा LONGBLOB पर सेट किया है।

अगला, हम उपयोगकर्ता को उसकी फ़ाइल अपलोड करने की अनुमति देने के लिए एक फॉर्म बनाएंगे। यह सिर्फ एक सरल रूप है, जाहिर है, यदि आप चाहते हैं तो आप इसे तैयार कर सकते हैं:

इसके बाद, हमें वास्तव में upload.php बनाने की आवश्यकता है, जो हमारे उपयोगकर्ताओं की फ़ाइल ले जाएगा और इसे हमारे डेटाबेस में संग्रहीत करेगा। नीचे upload.php के लिए नमूना कोडिंग है।

अगला, यह उपयोग करता है ADDSLASHES समारोह। यदि यह फ़ाइल नाम में आवश्यक है तो बैकस्लैश जोड़ देता है ताकि डेटाबेस को क्वेरी करते समय हमें कोई त्रुटि न मिले। उदाहरण के लिए, अगर हमारे पास बिलीफाइल.गिफ है, तो वह इसे बिलीफाइल.गिफ में बदल देगा। fopen फ़ाइल खोलता है और fread एक द्विआधारी सुरक्षित फ़ाइल पढ़ी जाती है ताकि ADDSLASHES यदि आवश्यक हो तो फ़ाइल के भीतर डेटा के लिए लागू किया जाता है।

इसके बाद, हम अपने डेटाबेस में एकत्रित की गई जानकारी को जोड़ते हैं। आप देखेंगे कि हमने पहले फ़ील्ड को सूचीबद्ध किया है, और दूसरा मान इसलिए कि हम गलती से अपने पहले फ़ील्ड में डेटा डालने की कोशिश नहीं करते हैं (ऑटो असाइनिंग आईडी फ़ील्ड।)

हमने पहले ही सीखा कि कैसे पुनः प्राप्त किया जाए सादा डेटा हमारे MySQL डेटाबेस से। इसी तरह, MySQL डेटाबेस में आपकी फ़ाइलों को संग्रहीत करना बहुत व्यावहारिक नहीं होगा यदि उन्हें पुनर्प्राप्त करने का कोई तरीका नहीं था। जिस तरह से हम ऐसा करने के लिए सीखने जा रहे हैं वह प्रत्येक फ़ाइल को उनके आईडी नंबर के आधार पर एक URL असाइन करके है। यदि आप याद करेंगे कि जब हमने फाइलें अपलोड की थीं, तो हमने स्वचालित रूप से प्रत्येक फाइल को एक आईडी नंबर दिया था। जब हम फ़ाइलों को वापस बुलाएंगे तो हम उसका उपयोग करेंगे। इस कोड को download.php के रूप में सहेजें

अब हमारी फ़ाइल को पुनः प्राप्त करने के लिए, हम अपने ब्राउज़र को निम्न पर इंगित करते हैं: http://www.yoursite.com/download.php? आईडी = 2 (जो भी फ़ाइल आईडी आप डाउनलोड / प्रदर्शित करना चाहते हैं उसके साथ 2 बदलें)

यह कोड बहुत सारी चीजें करने का आधार है। एक आधार के रूप में, आप एक डेटाबेस क्वेरी में जोड़ सकते हैं जो फाइलों को सूचीबद्ध करेगी, और लोगों को चुनने के लिए ड्रॉप डाउन मेनू में डाल देगी। या आप आईडी को एक बेतरतीब ढंग से बनाई गई संख्या के रूप में सेट कर सकते हैं ताकि आपके डेटाबेस से एक अलग ग्राफिक हर बार किसी व्यक्ति के आने पर बेतरतीब ढंग से प्रदर्शित हो। संभावनाएं अनंत हैं।

फ़ाइलों को डाउनलोड करने वाले हमारे पिछले कोड की तरह, यह स्क्रिप्ट फ़ाइलों को केवल उनके URL में लिखकर निकालने की अनुमति देती है: http://yoursite.com/remove.php? आईडी = 2 (जिस आईडी को आप हटाना चाहते हैं, उसके साथ 2 बदलें।) स्पष्ट कारणों के लिए, आप करना चाहते हैं इस कोड के साथ सावधान रहें. यह निश्चित रूप से प्रदर्शन के लिए है, जब हम वास्तव में उन अनुप्रयोगों का निर्माण करते हैं जिन्हें हम सुरक्षा उपायों में रखना चाहते हैं उपयोगकर्ता से पूछें कि क्या वे सुनिश्चित हैं कि वे हटाना चाहते हैं, या शायद केवल पासवर्ड वाले लोगों को फ़ाइलों को हटाने की अनुमति दें। यह सरल कोड वह आधार है जो हम उन सभी चीजों को करने के लिए बनाएंगे।

instagram story viewer