PHP और MySQL के बीच कनेक्शन की एन्कोडिंग सेट करना PHP का काम है; मुझे नहीं लगता कि MySQL सेटिंग इसे प्रभावित करेगी।
कनेक्शन वर्ण सेट को यूटीएफ -8 पर सेट करने के लिए मैं वास्तव में एप्लिकेशन में कुछ कोड रखने की अनुशंसा करता हूं। एप्लिकेशन को यह सुनिश्चित करने की आवश्यकता है कि एन्कोडिंग UTF-8 है, क्योंकि यह संभवतः वेब ब्राउज़र को बता रहा होगा कि इसके पृष्ठ UTF-8 हैं, और यदि वे मेल नहीं खाते हैं तो आपको समस्याएँ हैं।
चूंकि यह पहले से ही वर्णसेट तय करने के लिए एप्लिकेशन की ज़िम्मेदारी का हिस्सा है, इसलिए आप एप्लिकेशन को डेटाबेस कनेक्शन कैरेक्टर सेट निर्दिष्ट करने के लिए भी बना सकते हैं, बजाय इसे एक परिनियोजन समस्या के रूप में छोड़ दें और ऐप इंस्टॉल करते समय गलत होने के लिए एक और चीज एक नया सर्वर।
हालांकि मैं व्यक्तिगत रूप से mysql_set_charset
का उपयोग करूंगा। ऐसा करने के बजाय SET NAMES
।
इसी तरह, यदि एप्लिकेशन में स्कीमा बनाने के लिए कोड है, तो सुनिश्चित करें कि कोड MySQL को टेबल UTF-8 बनाने के लिए कहता है, न कि इसे डेटाबेस की डिफ़ॉल्ट सेटिंग्स पर छोड़ने और चिंता करने के लिए खुद को एक और परिनियोजन समस्या देने के लिए।पी>