मैं कुछ सरल उपयोगकर्ता डेटा को एक MySQL डेटाबेस में पास कर रहा हूं।urlencode() वर्ष 2011 में सभी एसक्यूएल इंजेक्शन हमलों को रोकने के लिए पर्याप्त अच्छा है
PHP का urlencode() एक स्ट्रिंग देता है जिसमें सभी गैर-अल्फान्यूमेरिक वर्ण -_ को छोड़कर। एक प्रतिशत (%) संकेत के साथ दो हेक्स अंकों के साथ प्रतिस्थापित किया गया है।
मैं प्लस के रूप में या अन्य स्वरूपण समस्याओं में आने वाली रिक्त स्थान के बारे में चिंतित नहीं हूं। न तो मैं एक्सएसएस और अन्य एचटीएमएल हैक्स के बारे में चिंतित हूं।
मेरा मानना है कि मुझे शैली के हमलों से सुरक्षित होना चाहिए।
प्रश्न: क्या अन्य प्रकार के एसक्यूएल हमलों का उपयोग किया जा सकता है - या _ या। ?
उदाहरण:
mysql_query("UPDATE cars SET color = '".urlencode($c)."' WHERE garage = 29");
ठनक अग्रिम
'mysql_real_escape_string' का उपयोग करने में क्या गड़बड़ है? – deceze
वर्ष 2011 में, आपको mysql_ * फ़ंक्शन को मिटाना चाहिए, mysqli_ * फ़ंक्शन का उपयोग करना शुरू करें, या पीडीओ – ajreal
mysqli पीडीओ – Stephen