मैं एक प्रश्नोत्तरी साइट का निर्माण कर रहा हूं, जहां मैं प्रत्येक प्रश्न के बाद $_SESSION
एस में कुछ चर(जवाब देने के लिए समय, जिसे उत्तर-विकल्प चुना गया था आदि) संग्रहीत करता है - जहां मैं केवल उन आंकड़ों को डीबी में डालता हूं उपयोगकर्ता प्रश्नोत्तरी खत्म करने के बाद।
मैंने कुछ if
को यह जांचने के लिए लागू किया है कि $_SESSION
चर संख्याएं हैं (is_numeric()
)। इसके अलावा, मैं लंबाई (strlen()
) आदि
- मान्य लेकिन वहाँ ऐसा करने के लिए एक कारण है?
- या यह
real_escape_string()
पर केवल को MySQL में संग्रहीत करने से पहले पर्याप्त है? - यदि कई उपयोगकर्ता भी होंगे, तो क्या यह सर्वर पर एक बड़ा भार नहीं लगाएगा?
यदि आप एसक्यूएल इंजेक्शन को रोकने में रुचि रखते हैं, तो आपको पीडीओ या माइस्क्ली को पैरामीट्रिज्ड स्टेटमेंट्स के साथ उपयोग करना चाहिए। इस तरह, कोई फर्क नहीं पड़ता कि आप क्या डालेंगे, इसका मूल्यांकन कभी भी MySQL कोड के रूप में नहीं किया जाएगा। – jpodwys
मामला यह है कि मैं केवल एसक्यूएल इंजेक्शन के बारे में बात नहीं कर रहा हूं। क्या उपयोगकर्ता द्वारा पारित चर का उपयोग करके कोई अन्य तरीका मेरी साइट पर हमला नहीं कर सकता है? – joe007
@ joe007 हां, एक्सएसएस की तरह। –