2012-12-28 11 views
11

संभव डुप्लिकेट:
UTF-8 all the way throughPHP MySQL चारसेट UTF8 समस्याओं

मैं एक वेबसाइट है कि किसी और को पहले से ही विकसित किया पर कुछ नई सुविधाओं का विकास कर रहा हूँ।

मुझे क्रिससेट में कोई समस्या है।

मैंने देखा कि डेटाबेस latin1

में UTF8 और कुछ में कुछ तालिकाओं था तो मैं UTF8 में सभी तालिकाओं कन्वर्ट करने के लिए कोशिश कर रहा हूँ।

मैंने इसे एक टेबल के लिए किया (यह तालिका अब भी utf8 हैं), लेकिन सफल नहीं था।

मैं सामान्य mysql कनेक्ट का उपयोग कर रहा हूं। मुझे यह कहने के लिए कोई कॉन्फ़िगर करना होगा कि इसे utf8 से डीबी में कनेक्ट करना होगा? यदि हां एक चुड़ैल है?

मेरी एचटीएमएल में मेरे पास है:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

ऐसा लगता है कि कुछ अक्षरों से काम करता है और दूसरों के प्रश्न चिह्न प्रदर्शित की तरह। उदाहरण के लिए यह सक्षम नहीं प्रदर्शित करने के लिए इस 'है कि इस का अलग है:'

+0

कौन सा वर्ण डीबी में प्रश्न चिह्न के रूप में प्रदर्शित कर रहे हैं ? –

+0

पागल मत बनो। तो फिर से अपना प्रश्न जांचें, इसे संपादित करें और वास्तव में एक प्रश्न पूछें। * "ऐसा लगता है कि कुछ अक्षरों का काम होता है और अन्य प्रश्न चिह्न प्रदर्शित करते हैं।" * - ऐसे वाक्यों में मददगार नहीं है। मैं आपके लिए शर्त लगाता हूं कि वे भी सहायक नहीं हैं। – hakre

+0

दस्तावेज के लिए कोड प्राप्त करने वाले व्यक्ति से भी संपर्क करें। अपने प्रश्न के लिए भी खोजें। जैसे mysql वर्ण विन्यास के बारे में हिस्सा पहले से पूछा गया है और उत्तर दिया गया है - आपको फिर से पूछने की आवश्यकता नहीं है, आप बस खोज सकते हैं। जैसे [क्या "सेट नाम" का उपयोग करना है] (http://stackoverflow.com/q/1650591/367456) और [MySQL में SET NAMES utf8?] (Http://stackoverflow.com/q/2159434/367456)। – hakre

उत्तर

29

संबंध में प्रयास करें इस

<?php 

    header('Content-Type: text/html; charset=utf-8'); 
?> 

और फिर

<?php 
$dbLink = mysql_connect($argHost, $argUsername, $argPassword); 
    mysql_query("SET character_set_results=utf8", $dbLink); 
    mb_language('uni'); 
    mb_internal_encoding('UTF-8'); 
    mysql_select_db($argDB, $dbLink); 
    mysql_query("set names 'utf8'",$dbLink); 
?> 
+0

मैंने ऐसा किया और मुझे भी सभी HTMLentities() और utf8_encode() फ़ंक्शंस को निकालना पड़ा जो उपयोग किए गए थे। धन्यवाद – Samuele