देखें पूर्ण संस्करण: हल प्रदर्शित सही ढंग से नहीं एक्सेंट ...
freddie3218
07-03-11, 16:09
हाय.
मैं 4.08 vBulletin का उपयोग कर रहा हूँ.
मैं मुख्य रूप से दो भाषाओं के लिए vbet का उपयोग करें ... अंग्रेजी और फ्रेंच. मैं मंच के डिफ़ॉल्ट सेट अंग्रेजी भाषा है. हालांकि, जब भी एक फ्रांसीसी उपयोगकर्ता प्रविष्टियाँ, अंग्रेजी में अनुवाद सही ढंग से प्रदर्शित. हालांकि, फ्रेंच लहजे प्रदर्शित नहीं करते. इसके बजाय, यह इस तरह प्रदर्शित करता है:
Dans quelle langue vous allez & #233;crire vos messages. Forum traduira automatiquement vos messages & #224; d'autres utilisateurs langues. En outre, il se traduira par des postes dans d'autres langues & #224; votre langue par d& #233;faut.
यह इस तरह से प्रदर्शित करना चाहिए:
Dans quelle langue vous allez écrire vos messages. Forum traduira automatiquement vos messages à d'autres utilisateurs langues.
मेरा मंच सेट कर दिया जाता है ISO-8859-1 के रूप में दोनों भाषाओं को प्रदर्शित करने के लिए. इसलिए, मैं UTF-8 का उपयोग नहीं कर रहा हूँ
इसके अलावा, मैं अधिष्ठापन निर्देश बहुत बारीकी से पीछा किया.
केवल संशोधन मैं vBet बनाया है कि मैं डिफ़ॉल्ट सीएसएस - स्प्राइट का उपयोग झंडे बदल. हालांकि, मैं कोड को देखा, और मैं कुछ किया जिस तरह से है कि चीजें प्रदर्शित किया जा रहा है प्रभाव चाहिए.
क्या मैं UTF-8 करने के लिए मेरे db कन्वर्ट करने के लिए इस समस्या को हल है?
किसी भी सलाह की सराहना की जाएगी. धन्यवाद. :)
freddie3218
08-03-11, 17:56
खैर .... मैं हर दूसरे प्लगइन निष्क्रिय है, और मैं अभी भी एक ही समस्या है. Vbet में एक बग की तरह लगता है
kamilkurczak
08-03-11, 19:35
हैलो, आप UTF-8 के मंच और डेटाबेस का उपयोग करते हैं या नहीं?
अगर नहीं - मैं तुम्हारे लिए एक समाधान होना चाहिए. मैं इसे तैयार करने और यहाँ लिखने wil.
यदि आप कर सकते हैं - कृपया यहाँ पेस्ट इस मुद्दे के साथ धागा करने के लिए एक यूआरएल.
धन्यवाद
freddie3218
09-03-11, 00:15
हैलो, आप UTF-8 के मंच और डेटाबेस का उपयोग करते हैं या नहीं?
अगर नहीं - मैं तुम्हारे लिए एक समाधान होना चाहिए. मैं इसे तैयार करने और यहाँ लिखने wil.
यदि आप कर सकते हैं - कृपया यहाँ पेस्ट इस मुद्दे के साथ धागा करने के लिए एक यूआरएल.
ThanksNo, मैं एक UTF-8 के मंच या डेटाबेस का उपयोग नहीं करते. मैं आईएसओ-8859-1 का उपयोग करें.
आप देख सकते हैं कि समस्या इस धागे को देखने के द्वारा रहते हैं:
$ 1 यह एक परीक्षण (http://kokoku.ca/forums/showthread.php?t=418)
धन्यवाद. :)
freddie3218
10-03-11, 01:05
यह क्या कारण है पर कोई खबर?
kamilkurczak
10-03-11, 10:04
हैलो,
मैं इसे अपने परीक्षण मंच पर परीक्षण कर रहा हूँ (UTF-नहीं) और मैं यह reproduce नहीं कर सकते, लेकिन आप इस समाधान की कोशिश कर सकते हैं.
मैं तुम्हारे लिए कुछ है:
1. खोलने के लिए, एक प्रतिलिपि बनाने के लिए और इस फ़ाइल को संपादित करें:
मंच जड़ / / vbenterprisetranslator_functions_utils.php शामिल
2. इस समारोह में मिल:
function vbet_encodeToSafeUTF8(&$string) {
//TODO how to check does utf-8 is involved? how often this function is used?
// if (! ereg('[\200-\237]', $string) and ! ereg('[\241-\377]', $string))
// if (!preg_match('/[\200-\237]/', $string) and !preg_match('/[\241-\377]/', $string))
// if (!preg_match('/[\200-\237\241-\377]/e', $string))
// return $string;
// decode three byte unicode characters
$string = preg_replace('/([\340-\357])([\200-\277])([\200-\277])/e',
'\'&#\'.((ord(\'\\1\')-224)*4096 + (ord(\'\\2\')-128)*64 + (ord(\'\\3\')-128)).\';\'',
$string);
//decode two byte unicode characters
$string = preg_replace('/([\300-\337])([\200-\277])/e',
'\'&#\'.((ord(\'\\1\')-192)*64+(ord(\'\\2\')-128)).\';\'',
$string);
return $string;
}
3. और यह एक तरह वापसी के बिना सभी लाइनों टिप्पणी:
function vbet_encodeToSafeUTF8(&$string) {
//TODO how to check does utf-8 is involved? how often this function is used?
// if (! ereg('[\200-\237]', $string) and ! ereg('[\241-\377]', $string))
// if (!preg_match('/[\200-\237]/', $string) and !preg_match('/[\241-\377]/', $string))
// if (!preg_match('/[\200-\237\241-\377]/e', $string))
// return $string;
// decode three byte unicode characters
// $string = preg_replace('/([\340-\357])([\200-\277])([\200-\277])/e',
// '\'&#\'.((ord(\'\\1\')-224)*4096 + (ord(\'\\2\')-128)*64 + (ord(\'\\3\')-128)).\';\'',
// $string);
//decode two byte unicode characters
//$string = preg_replace('/([\300-\337])([\200-\277])/e',
// '\'&#\'.((ord(\'\\1\')-192)*64+(ord(\'\\2\')-128)).\';\'',
// $string);
return $string;
}
4. बचाने के लिए और परीक्षण!
यह केवल नए पदों के लिए काम करना चाहिए. सभी मौजूदा पदों आप हाथ से संपादित करना चाहिए.
लेकिन मैं shure नहीं है कि आप एक आईएसओ मंच है आप इसे परीक्षण कर सकते हैं. अच्छा नहीं यदि - कृपया इन परिवर्तनों बू पुराने फ़ाइल अधिलेखित
freddie3218
10-03-11, 15:30
हाय,
यह एक अच्छी कोशिश थी. हालांकि, यह काम नहीं करता.
उत्पादन अब पता चलता है: "सीसी स्था संयुक्त राष्ट्र परीक्षण S'il Vous plaà ® टी ignorer CE के संदेश है."
सही उत्पादन किया जाना चाहिए: "सीसी स्था संयुक्त राष्ट्र परीक्षण S'il Vous चोटी ignorer CE के संदेश."
इसलिए, मैं वापस लौट.
यहाँ एक बात मैंने देखा है:
जब पोस्टिंग और संपादन, यह सही ढंग से प्रदर्शित नहीं करता है है. हालांकि, अगर मैं WYSIWYG संपादक बटन "बुनियादी" मोड में जाने के मारा, तो इसे सही ढंग से WYSIWYG संपादक में प्रदर्शित करेगा. हालांकि, जब मैं इसे बचाने की कोशिश करते हैं, यह गलत तरीके से फिर दिखा करने के लिए reverts. ऐसा लगता है कि WYSIWYG संपादक से पहले जब मैं एक विदेशी भाषा में VBET का उपयोग कर रहा हूँ, बचत, या जब मैं [lang =] टैग का उपयोग कर रहा हूँ बातें नहीं पार्स करने है सही ढंग से. हालांकि, अगर मैं [lang = fr] टैग का उपयोग कर के बिना एक विदेशी वाक्यांश के बाद, तो इसे सही ढंग से प्रदर्शित की बचत करेंगे. तो यह लगता है कि VBET WYSIWYG संपादक सही ढंग से सहेजने से पहले पार्स करने के लिए अनुमति नहीं है ... अगर है कि किसी भी समझ में आता है.
kamilkurczak
10-03-11, 23:41
आप इस मुद्दे पर है जब आप अनुवाद पृष्ठ या नहीं पर पोस्ट करना चाहते हैं? कृपया वर्णन मैं क्या मेरी परीक्षा मंच पर एक ही परिणाम है करना चाहिए.
freddie3218
11-03-11, 07:19
आप इस मुद्दे पर है जब आप अनुवाद पृष्ठ या नहीं पर पोस्ट करना चाहते हैं? वर्णन क्या मैं अपने परीक्षण forum.I पर एक ही परिणाम है पता है अगर आप अपने मंच या नहीं पर यह पुन: पेश कर सकते हैं नहीं करना चाहिए. बहरहाल, यह है क्या होता है:
VBulletin 4.08 संस्करण
अंग्रेजी और फ्रेंच: मैं अपनी साइट पर दो भाषाओं. मैं सभी अन्य भाषाओं में अक्षम है, और अन्य सभी झंडे.
सभी अंग्रेजी और फ्रेंच साइट भर में अनुवादित है ठीक से उचित लहजे के साथ. केवल समय है लहजे ठीक से प्रदर्शित नहीं है अगर किसी फ्रेंच भाषा और फ्रेंच में पदों का उपयोग कर रहा है ... "फ्रेंच भाषा" अपने उपयोगकर्ता प्रोफ़ाइल में चुना है. इस मामले में, VBET उचित BBCode टैग स्वचालित रूप से असाइन करने के लिए जब वे पोस्ट करेंगे. IE: "[lang = fr]" हालांकि, एक बार वे अपनी पोस्ट सबमिट करने के बाद, अपने पोस्ट पर लहजे ठीक नहीं दिखाई देगा. अगर वे "संपादित पोस्ट" बटन दबाएँ करने के लिए, वे अनुचित तरीके से प्रदर्शित (मैं सभी स्थापित WYSIWYG संपादक का उपयोग करने के लिए खातों है, त्वरित उत्तर में भी, डिफ़ॉल्ट रूप से इतना है कि सभी उपयोगकर्ताओं को चित्रों से संलग्न कर सकते हैं उन्नत WYSIWYG संपादक में अपनी पोस्ट देखेंगे उनके हार्ड ड्राइव). हालांकि, अगर वे "स्विच संपादक मोड" बटन के आगे और पीछे टॉगल, वे देख अपने पोस्ट को ठीक से दिखाई. फिर भी, जब वे अपनी पोस्ट करने के लिए परिवर्तन सहेजने का प्रयास करें, यह एक बार फिर से अनुचित तरीके से प्रदर्शित जब वे अपने पद बचाने.
यह समस्या केवल होता है जब उपयोगकर्ता अपने उपयोगकर्ता प्रोफ़ाइल सेटिंग्स में "फ्रेंच भाषा का उपयोग कर रहा है और फ्रेंच भाषा में पोस्ट ... इस प्रकार बनाने vbet एक पोस्ट [lang = fr] स्वचालित रूप से जोड़ने.
मेरा मंच डिफ़ॉल्ट भाषा अंग्रेजी है.
यदि आप के लिए चारों ओर मेरे मंच पर एक नज़र रखना चाहिए ... बजे मुझे, और मैं आप आवश्यक जानकारी भेजने के लिए अपने व्यवस्थापक पैनल सेटअप की जाँच करेगा.
मुझे आशा है कि इस जानकारी को उपयोगी है.
धन्यवाद.
kamilkurczak
11-03-11, 10:06
हां. मैं यह मेरे परीक्षण मंच पर पुष्टि कर सकते हैं!
यह एक vBET बग है तो मैं बग रिपोर्टिंग अनुभाग में इस धागे को स्थानांतरित की जरूरत है.
मैंने देखा कि वहाँ ASCII कोड के साथ पत्र के साथ एक कूटबन्धन मुद्दा तहत एक
मैं इसे अपने परीक्षण मंच पर पुन: पेश है तो मैं इसे अपने मंच का उपयोग करने के बिना ठीक कर सकते हैं कर सकते हैं:)
मैं तुम्हारे लिए सबसे अच्छा समाधान खोजने की कोशिश करेंगे.
freddie3218
12-03-11, 06:02
हां. मैं यह मेरे परीक्षण मंच पर पुष्टि कर सकते हैं!
यह एक vBET बग है तो मैं बग रिपोर्टिंग अनुभाग में इस धागे को स्थानांतरित की जरूरत है.
मैंने देखा कि वहाँ ASCII कोड के साथ पत्र के साथ एक कूटबन्धन मुद्दा तहत एक
मैं इसे अपने परीक्षण मंच पर पुन: पेश है तो मैं इसे अपने मंच का उपयोग करने के बिना ठीक कर सकते हैं कर सकते हैं:)
मैं तुम्हारे लिए सबसे अच्छा समाधान खोजने की कोशिश करेंगे.
खैर अच्छी खबर यह है कि मैं समस्या खुद तय है. बुरी खबर यह है कि मैं पुष्टि नहीं कर सकता कि यह समाधान एक प्रतिस्थापन समारोह के रूप में काम करेंगे ... के रूप में यह केवल मेरे मंचों पर काम करता है.
बावजूद, यहाँ नया समारोह है:
function vbet_encodeToSafeUTF8(&$string) {
$string = utf8_decode($string);
return $string;
}
इस समारोह में ISO-8859-1 को UTF-8 धर्मान्तरित
kamilkurczak
12-03-11, 13:31
इस अच्छी खबर के लिए धन्यवाद. मैं इसे परीक्षण और पुष्टि करेगा
kamilkurczak
13-03-11, 13:15
हैलो,
आपका समाधान आम तौर पर में अच्छा नहीं है. क्यों? यह ASCII कोड के साथ पत्र के साथ 256 (परिवर्तित और अच्छा प्रदर्शित) के तहत काम कर रहे है, लेकिन? "" ASCII कोड के साथ पत्र मैं 256 से अधिक है संकेत.
तो हम एक में हमारे दो समाधान के गठबंधन की जरूरत है;)
उदाहरण के लिए:
function vbet_encodeToSafeUTF8(&$string) {
$string = preg_replace('/([\340-\357])([\200-\277])([\200-\277])/e',
'\'&#\'.((ord(\'\\1\')-224)*4096 + (ord(\'\\2\')-128)*64 + (ord(\'\\3\')-128)).\';\'',
$string);
//decode two byte unicode characters
$string = preg_replace('/([\304-\337])([\200-\277])/e',
'\'&#\'.((ord(\'\\1\')-192)*64+(ord(\'\\2\')-128)).\';\'',
$string);
$string = utf8_decode($string);
return $string;
}
इस लाइन:
[\304-\337] ASCII कोड के साथ 256 के तहत पत्र की तुलना में परिभाषित मेरे समारोह के द्वारा, लेकिन केवल द्वारा decoded नहीं किया जाएगा
utf8_decode
मैं यह परीक्षण कर रहा हूँ still.I के पूरी तरह यकीन है कि सब कुछ सही ढंग से अब काम करता है नहीं कर रहा हूँ.
आप यह भी परीक्षण कर सकते हैं!
freddie3218
14-03-11, 05:10
मेरी प्रयोजनों के लिए, समाधान ठीक काम करता है ... के रूप में मैं केवल दो langauges में अनुवाद कर रहा हूँ ... अंग्रेजी और फ्रेंच. दोनों आईएसओ-8859-1 भाषाओं (latin1) कर रहे हैं. इसलिए "utf_decode" समारोह ठीक काम करता है.
हालांकि, देखने में एक वैश्विक गुंजाइश के साथ, utf_decode समारोह शायद "latin1" के बाहर अन्य भाषाओं के लिए काम नहीं करेंगे.
मैं एक vBulletin प्रोग्रामर की ज्यादा नहीं हूँ. हालांकि, मैं एक सुझाव की पेशकश करेगा:
शायद का उपयोग कर एक "अगर" बयान अपने उद्देश्यों के बेहतर सूट हो सकता है अगर अपने समाधान नहीं काम करता है. नीचे दिए गए उदाहरण में, "translated_language_var" गंतव्य भाषा में अनुवाद होगा.
IE:
$latin1 = array(English,French,Spanish,Italian....etc);
if (in_array(translated_language_var,$latin1)){
$string = utf_decode($string);
}else{
original solution;
}
return $string;
शायद कुछ इस तरह सब कुछ सुरक्षित रखने के लिए एक यकीन है कि विधि का उपयोग होगा ...??? मुझे यकीन है कि आप आसानी से इस छद्म कोड का उपयोग सकता है और यह vBulletin के लिए काम कर रहा हूँ. :)
kamilkurczak
27-03-11, 22:30
हल - अगले relase में शामिल किया जाएगा
Automatic Translations (Powered by Google, Microsoft®,
Yandex, SDL Language Cloud, IBM Watson and Apertium):
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions Inc. All rights reserved.