2009-12-25 12 views
7

मेरे डेटाबेस में ऐसे नाम रिकॉर्ड हैं जिनमें कभी-कभी एस्ट्रोफ़ेस होते हैं, जैसे Joe's Bar और मैंने PHP में एक क्वेरी स्क्रिप्ट को कोड किया है जो उस फ़ील्ड को पकड़ता है और इसे सामान्य $query = "SELECT address FROM restaurants WHERE name='$name'"; के साथ एक चुनिंदा कथन में चिपकाता है और कुछ रेस्तरां नामों में एस्ट्रोफ़े लव ट्रेन को हटा देता है।एस्ट्रोफ़ेस PHP में मेरे mysql क्वेरी को तोड़ रहे हैं

मैं इसे कैसे होने से रोकूं?

स्नैड उत्तर - उसी तकनीक का उपयोग करें जब आपने उन्हें PHP के माध्यम से डेटाबेस में डाला था।
Rebuttal - मुझे वही समस्या हो रही थी और धोखा दिया और परेशान लोगों को सीधे PHPMyAdmin का उपयोग करके दर्ज किया गया लेकिन इसे अब अनदेखा नहीं किया जा सकता है।

छुट्टियों के दौरान इसका उत्तर देने के लिए समय निकालने के लिए धन्यवाद।

उत्तर

17

आपको लगता है कि लाइन से पहले $name = mysql_real_escape_string($name); करने के लिए है है।

आप SQL Injections पर भी पढ़ना चाहेंगे, क्योंकि आपके इनपुट स्पष्ट रूप से अनुचित हैं।