php - What's wrong with this query? -


कोई मेरी मदद करता है:

  $ query = "tbl_users (उपयोगकर्ता, पासवर्ड, मूल्य ('$ उपयोगकर्ता नाम', sha1 ('$ password'), sha1 ('$ password'), '$ userid', '0', अब (), अब (पासवर्ड) ), '$ ईमेल'); ";  

$ userid एक ramdon md5 id है।

यह मुझे यह त्रुटि देता है:

  posttokenError : खाता नहीं बनाया गया है आपकी एसक्यूएल वाक्यविन्यास में कोई त्रुटि है; निकटतम '\' esck21 \ ', sha1 (\' password \ '), sha1 (\' password \ '),' 14bd25cbe111c2975232b33ee8c2 'लाइन 1 पर उपयोग करने के लिए सही सिंटैक्स के लिए आपके MySQL सर्वर संस्करण से संबंधित मैन्युअल की जांच करें < / कोड>  

मुझे लगता है कि मुझे दिल का दौरा पड़ने वाला हूँ धन्यवाद।

त्रुटि संदेश से देखते हुए, ऐसा लगता है कि आप किसी प्रकार का बचने के फ़ंक्शन पर कॉल कर सकते हैं संपूर्ण क्वेरी , जैसे addslashes ($ query) या mysql_real_escape_string ($ query) । यह क्वेरी में हर उद्धरण से बच जाएगा , जब वास्तव में आप क्या करना चाहते हैं केवल वे उद्धरणों से बच जाते हैं जो आपके चर के अंदर हैं।

यदि यह मामला है, तो आप चाहते हैं इसके बजाय कुछ ऐसा करने के लिए:

  $ query = "tbl_users (उपयोगकर्ता, पासवर्ड, password_def, userid, स्तर, regdate, अंतिम तिथि, ईमेल) में डालें मूल्य ('"। Mysql_real_escape_string ($ उपयोगकर्ता नाम)। '', Sha1 (''। Mysql_real_escape_string ($ पासवर्ड)। "'), Sha1 ('। Mysql_real_escape_string ($ password)। ''), '' .mysql_real_escape_string ($ userid)। '', '0 ', अब (), अब (),' '। Mysql_real_escape_string ($ ईमेल)। "' ')";  

यह आपके डेटा को सही तरीके से बचने के बिना शेष क्वेरी से बचें। एक बार जब आप यह कर लें, तो बचने के अन्य रूपों के माध्यम से पूरे कोड के रूप में $ query को नहीं चलाएं।


Comments

Popular posts from this blog

oracle - The fastest way to check if some records in a database table? -

php - multilevel menu with multilevel array -

jQuery UI: Datepicker month format -