Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

PHP:फॉर्म से MySQL में मान सम्मिलित करना

निम्न कोड केवल एक स्ट्रिंग चर घोषित करता है जिसमें एक MySQL क्वेरी है:

$sql = "INSERT INTO users (username, password, email)
    VALUES ('".$_POST["username"]."','".$_POST["password"]."','".$_POST["email"]."')";

यह क्वेरी निष्पादित नहीं करता है। ऐसा करने के लिए आपको कुछ फ़ंक्शन का उपयोग करने की आवश्यकता है, लेकिन मुझे पहले कुछ और समझाएं।

उपयोगकर्ता इनपुट पर कभी विश्वास न करें :आपको कभी भी उपयोगकर्ता इनपुट नहीं जोड़ना चाहिए (जैसे कि $_GET . से फ़ॉर्म इनपुट या $_POST ) सीधे आपकी क्वेरी के लिए। कोई व्यक्ति इनपुट में इस तरह से सावधानी से हेरफेर कर सकता है कि यह आपके डेटाबेस को बहुत नुकसान पहुंचा सकता है। इसे SQL इंजेक्शन कहा जाता है। आप इसके बारे में अधिक पढ़ सकते हैं यहां

अपनी स्क्रिप्ट को इस तरह के हमले से बचाने के लिए आपको जरूरी तैयार बयानों का उपयोग करें। तैयार किए गए कथनों पर अधिक यहां

अपने कोड में इस तरह तैयार कथन शामिल करें:

$sql = "INSERT INTO users (username, password, email)
    VALUES (?,?,?)";

ध्यान दें कि कैसे ? मूल्यों के लिए प्लेसहोल्डर के रूप में उपयोग किया जाता है। इसके बाद आपको mysqli_prepare . का उपयोग करके स्टेटमेंट तैयार करना चाहिए :

$stmt = $mysqli->prepare($sql);

फिर इनपुट वेरिएबल्स को तैयार स्टेटमेंट में बाँधना शुरू करें:

$stmt->bind_param("sss", $_POST['username'], $_POST['email'], $_POST['password']);

और अंत में तैयार बयानों को निष्पादित करें। (यह वह जगह है जहां वास्तविक प्रविष्टि होती है)

$stmt->execute();

नोट हालांकि इस सवाल का हिस्सा नहीं है, मैं आपको दृढ़ता से सलाह देता हूं कि पासवर्ड को कभी भी स्पष्ट टेक्स्ट में स्टोर न करें। इसके बजाय आपको password_hash . का उपयोग करना चाहिए पासवर्ड का हैश स्टोर करने के लिए



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पता लगाएँ कि कोई दिनांक MySql में डेलाइट सेविंग टाइम में है या नहीं

  2. शीर्ष 5 MySQL T-SQL डेवलपर्स के लिए युक्तियों के साथ सिंटैक्स हटाएं

  3. एक तालिका में सभी वस्तुओं का चयन करना और दूसरी तालिका के साथ जुड़ना, नल की अनुमति देना

  4. SQL INSERT से चयन करें

  5. PHP के साथ html को pdf में कैसे बदलें?