MySQL तैयार कथन: PDO के साथ डेटा सुरक्षा सुनिश्चित करें
क्या आप अपने MySQL अनुप्रयोगों में एस्केपिंग फ़ंक्शन और SQL इंजेक्शन कमजोरियों के बारे में चिंतित हैं? MySQL द्वारा तैयार स्टेटमेंट सुविधा उपलब्ध नहीं हो सकती है, लेकिन इसका मतलब यह नहीं है कि आपको सुरक्षा से समझौता करना होगा।
PDO: एक सुरक्षित विकल्प
PHP डेटा ऑब्जेक्ट ( पीडीओ) एक शक्तिशाली लाइब्रेरी है जो डेटाबेस के साथ इंटरैक्ट करने के लिए एक सुसंगत इंटरफ़ेस प्रदान करती है। PDO के साथ, आप अपने MySQL डेटाबेस से कनेक्ट कर सकते हैं और सभी डेटाबेस इनपुट को टेक्स्ट स्ट्रिंग्स के रूप में मान सकते हैं, जिससे मैन्युअल एस्केपिंग की आवश्यकता समाप्त हो जाती है।
PDO के साथ MySQL से कनेक्ट करना
To पीडीओ का उपयोग शुरू करें, इस प्रकार एक डेटाबेस ऑब्जेक्ट बनाएं:
$db = new PDO("mysql:host=[hostname];dbname=[database]", '[username]', '[password]');
कैरेक्टर एन्कोडिंग को UTF-8 पर सेट करें:
$db->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES utf8"); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $db->exec('SET NAMES utf8');
तैयार विवरण निष्पादित करना
डेटाबेस ऑब्जेक्ट स्थापित होने के साथ, अब आप तैयार कथन निष्पादित कर सकते हैं:
$id = 1; $q = $db->prepare('SELECT * FROM Table WHERE id = ?'); $q->execute(array($id));
$q = $db->prepare('UPDATE Table SET Column_1 = ?, Column_2 = ? WHERE id = ?'); $q->execute(array('Value for Column_1', 'Value for Column_2', $id));
$search = 'John'; $q = $db->prepare('SELECT * FROM Table WHERE Column_1 LIKE ?'); $q->execute(array('%'.$search.'%'));
निष्कर्ष
पीडीओ और तैयार कथनों का उपयोग करके, आप बढ़ा सकते हैं SQL इंजेक्शन जोखिमों को कम करके आपके MySQL अनुप्रयोगों की सुरक्षा। अपने सरलीकृत इंटरफ़ेस और मजबूत सुरक्षा सुविधाओं के साथ, पीडीओ आपके डेटाबेस को दुर्भावनापूर्ण हमलों से बचाने के लिए एक अनिवार्य उपकरण है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3