मुझे URL और डेटाबेस में समान (या बहुत समान) नामों का उपयोग करने में कोई समस्या नहीं है - निश्चित रूप से, आप कार्यान्वयन विवरण "उजागर" कर सकते हैं, लेकिन यदि आप URL और DB में मौलिक रूप से भिन्न नाम चुन रहे हैं, तो आप ' शायद बुरे नाम चुन रहे हैं। मैं लगातार नामकरण का भी प्रशंसक हूं - कोडर्स/परीक्षक/ग्राहकों के साथ संचार और अधिक कठिन हो जाता है यदि हर कोई सब कुछ कुछ अलग कहता है।
मुझे क्या बग है कि आप उपयोगकर्ता को अपने डेटाबेस पर मनमानी क्वेरी चलाने दे रहे हैं। http://.../index.php?table=users&user_id=1
, कहना? या http://.../index.php?table=users&password=password
(ऐसा नहीं है कि आपको प्लेनटेक्स्ट में पासवर्ड स्टोर करना चाहिए)? या http://.../index.php?table=users&age=11
?
यदि डीबी से जुड़े उपयोगकर्ता के पास वेब ब्राउज़र के सामने बैठे उपयोगकर्ता के समान अनुमतियां हैं, तो यह समझ में आ सकता है। आम तौर पर, ऐसा नहीं होने जा रहा है, इसलिए आपको कुछ परत की आवश्यकता होगी जो यह जानती हो कि उपयोगकर्ता क्या है और उसे देखने की अनुमति नहीं है, और उस परत को श्वेतसूची में सही ढंग से लिखना बहुत आसान है।
(यदि आपने संग्रहीत कार्यविधियों में पर्याप्त तर्क फंसाया है, तो यह काम कर सकता है, लेकिन तब आपकी संग्रहीत कार्यविधियाँ कॉलम नामों को हार्ड-कोड कर देंगी...)