जब आप प्रक्षेपित करते हैं
"select * from info WHERE `id` IN ('$ids')"
आपकी आईडी के साथ, आपको मिलता है:
"select * from info WHERE `id` IN ('1,2,3,4,5')"
...जो आपके आईडी के सेट को पूर्णांकों के सेट के बजाय एक स्ट्रिंग के रूप में मानता है।
IN
. में एकल-उद्धरणों से छुटकारा पाएं खंड, इस तरह:
"select * from info WHERE `id` IN ($ids)"
साथ ही, यह न भूलें कि आपको SQL इंजेक्शन हमलों की जांच करने की आवश्यकता है . आपका कोड वर्तमान में बहुत खतरनाक है और गंभीर डेटा हानि या पहुंच के जोखिम में है। विचार करें कि क्या हो सकता है यदि कोई आपके वेब पेज को निम्न URL के साथ कॉल करता है और आपके कोड ने उन्हें एक ही क्वेरी में कई कथन निष्पादित करने की अनुमति दी है:
http://www.example.com/myfile.php?theurl=1);delete from info;--