SQL इंजेक्शन को रोकने के लिए पीडीओ का दृष्टिकोण
यदि आपने MySQL लाइब्रेरी से पीडीओ में संक्रमण किया है, तो आप सोच रहे होंगे कि real_escape_string को कैसे बदला जाए आपके डेटाबेस के लिए नियत स्ट्रिंग्स में सिंगल कोट्स से बचने के लिए फ़ंक्शन। हालांकि प्रत्येक स्ट्रिंग में स्लैश जोड़ना बोझिल लग सकता है, पीडीओ एक अधिक कुशल विकल्प प्रदान करता है। तैयार() विधि। यह विधि क्वेरी योजनाओं और मेटा जानकारी के कैशिंग को सक्षम करके आपके एप्लिकेशन के प्रदर्शन को अनुकूलित करती है। इसके अतिरिक्त, यह मैन्युअल पैरामीटर उद्धरण की आवश्यकता को समाप्त करता है, इस प्रकार SQL इंजेक्शन हमलों को रोकता है। एक तैयार कथन स्थापित करता है। फिर इस कथन को संकलित और कैश किया जाता है, जिससे निष्पादन दक्षता में सुधार होता है। जब आप पैरामीटर के साथ क्वेरी निष्पादित करने के लिए तैयार होते हैं, तो आप PDOStatement::execute() को कॉल करते हैं, जो मैन्युअल उद्धरण की आवश्यकता के बिना पैरामीटर को तैयार कथन में इंजेक्ट करता है।
उदाहरण उपयोग
यहां पीडीओ तैयार() और निष्पादित() का उपयोग करने का एक उदाहरण दिया गया है:
$pdo = new PDO(''...'); $sql = "उपयोगकर्ताओं (उपयोगकर्ता नाम, ईमेल) मानों में सम्मिलित करें (?, ?)"; $stmt = $pdo->तैयार करें($sql); $stmt->execute([$username, $email]);
पीडीओ तैयार() और निष्पादित() का उपयोग करके, आप मैन्युअल स्ट्रिंग से बचने की आवश्यकता के बिना पैरामीटरयुक्त प्रश्नों को सुरक्षित रूप से निष्पादित कर सकते हैं। यह आपके कोड को सरल बनाता है और SQL इंजेक्शन हमलों को रोककर सुरक्षा बढ़ाता है।अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3