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

जब मैं सभी इनपुट से बचता हूं, कभी-कभी यह स्ट्रिंग में स्लैश (\) छोड़ देता है और इसे डेटाबेस में सम्मिलित करता है। ऐसा क्यों होता है और मैं इसे कैसे हल कर सकता हूं?

आप सही कह रहे हैं।
मैजिक कोट्स स्टफ का sql स्टफ से कोई लेना-देना नहीं है और इसे इससे कनेक्ट नहीं किया जाना चाहिए।
क्योंकि मैजिक कोट्स एक साइट-वाइड समस्या है और sql एस्केपिंग sql केवल संबंधित समस्या है।

इसलिए, उन्हें अलग-अलग उपचार की आवश्यकता होती है जिसका कभी भी संयोजन में उपयोग नहीं किया जाना चाहिए।

आपको जादू उद्धरणों से बिना शर्त छुटकारा पाना होगा, क्योंकि यह न केवल SQL सामग्री बल्कि आपकी साइट के हर डेटा हेरफेर को खराब करता है।

इसलिए, स्क्रिप्ट के प्रत्येक कॉल पर चलने वाली किसी भी बूटस्ट्रैप फ़ाइल में कुछ स्ट्रिप्सलाश कोड डालना बुद्धिमानी होगी। कोड आप ऐसे कोड के कई कार्यान्वयन में पा सकते हैं, बस 'stripslashes_deep' फ़ंक्शन के लिए Google।

यह बुद्धिमानी होगी कि यह कोड हमेशा अनुकूलता के लिए जादू उद्धरणों की वास्तविक स्थिति के बावजूद हमेशा (निश्चित रूप से get_magic_quotes_gpc () की जांच की स्थिति के तहत) चलाया जाए।

लेकिन उन्हें बंद करने की एक और संभावना है:अपने आवेदन की जड़ में एक php.ini फ़ाइल बनाने का प्रयास करें।

हालाँकि, आपके कोड में एक गंभीर गलती है। वास्तव में, यह किसी भी चीज़ की रक्षा नहीं करता है।
आप $memberid से बच रहे हैं और $postid लेकिन उन्हें उद्धृत न करें! . इस प्रकार, कोई सुरक्षा नहीं है। सिर्फ इसलिए कि बचना तभी काम करता है जब उद्धरण के साथ प्रयोग किया जाता है।

कृपया, याद रखें:

भागना सुरक्षा का पर्याय नहीं है!

अकेले भागने से कुछ नहीं हो सकता। पालन ​​​​करने के लिए नियमों का एक पूरा सेट है।

मैंने हाल ही में एक अच्छी व्याख्या लिखी है, इसलिए, मैं खुद को नहीं दोहराऊंगा:mysql_* फ़ंक्शन को PDO और तैयार किए गए स्टेटमेंट से बदलना



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP MySql से कनेक्ट होने पर ssl प्रमाणपत्रों पर ध्यान नहीं देता

  2. बिना cPanel लॉगिन के PhpMyAdmin को कैसे एक्सेस करें

  3. Yii ढांचे में मानदंड में स्थिति php

  4. Django वर्णसेट और एन्कोडिंग

  5. स्टैक की रचना - MySQL कंटेनरों के डॉकर परिनियोजन को सरल बनाएं