2010-04-12 13 views
12

जावास्क्रिप्ट में, मैं अपने डेटाबेस को खोजने के लिए उपयोगकर्ता के इनपुट का उपयोग करने का प्रयास कर रहा हूं। उदाहरण के लिए, उपयोगकर्ता इनपुट "राक्षस" है, और मेरा डेटाबेस का डेटा "राक्षस" है। इसके आवरण के बावजूद मैं इसे कैसे मेल कर सकता हूं?जावास्क्रिप्ट: तारों की केस संवेदनशीलता को अनदेखा करना

+0

क्या आप इस तरह कुछ ढूंढ रहे हैं: http://stackoverflow.com/questions/177719/javascript-case-insensitive-search – zengr

+0

@zengr मुझे नहीं लगता कि वे यही देख रहे हैं। यह स्ट्रिंग को खोजने के विरोध में डेटाबेस खोजना चाहता है: डी –

उत्तर

23

जावास्क्रिप्ट स्ट्रिंग केस-असंवेदनशील तुलना string.toUpperCase के साथ की जा सकती है।

if (input.toUpperCase() === "OTHER STRING") 
    .... 

(मैं अपने डेटाबेस उदाहरण संभालने कर रहा हूँ सिर्फ एक उदाहरण है डेटाबेस आमतौर पर तार :)

+0

आप फ़ंक्शन को कॉल करना भूल गए हैं। – SLaks

+1

'इनपुट 'का कोई मूल्य नहीं है, जैसे कि' (input.toUpperString ==" अन्य स्ट्रिंग ")', क्योंकि "अन्य स्ट्रिंग" के पास कम केस वर्ण – Dancrumb

+0

है, तो अच्छी तरह से उपयोग करें (input.toUpperCase() === "अन्य स्ट्रिंग ".toUpperCase()) या toLowerCase() दोनों पर ... – mojjj

0

के मामले आप परिवर्तित करना चाहिए उपेक्षा के रूप में दोनों जावास्क्रिप्ट स्ट्रिंग और डेटाबेस जहां खंड लोअर केस स्ट्रिंग का उपयोग करना।

लेकिन मुझे लगता है कि एसक्यूएल सर्वर और माइस्क्ल जैसे डेटाबेस स्ट्रिंग के मामले में सभी मामले असंवेदनशील हैं।

-1

यदि आप AJAX का उपयोग कर रहे हैं तो आप सर्वर साइड भाषा का उपयोग कर रहे हैं। आप सर्वर साइड स्क्रिप्ट को डेटा को सामान्य क्यों नहीं करते हैं? उचित अपर और लोअर फ़ंक्शंस का उपयोग करके आप इस कार्य को डेटाबेस में भी प्रतिनिधि दे सकते हैं, लेकिन सुरक्षा कारणों से डेटा सामान्यीकरण सर्वर साइड स्क्रिप्ट के लिए एक कार्य होना चाहिए।

आप जेएस का उपयोग लंबाई और वाक्यविन्यास के संदर्भ में डेटा को पूर्व-जांचने के लिए कर सकते हैं, अधिकतर उपयोगकर्ता को गलतियों से बचाने में मदद करने और रोकने के लिए, लेकिन एक चीज जो आपको कभी नहीं करना चाहिए वह पूछताछ नहीं है जेएस डेटा। कोई भी जेएस में हेरफेर कर सकता है और a' OR 1=1; DROP TABLE users;-- क्वेरी कर सकता है, भले ही आप डेटा को मान्य करते हैं।

+2

Obligatory: http://xkcd.com/327/ – MatrixFrog

1

खोज() के बजाय मिलान() का उपयोग करें।

संबंधित मुद्दे