phpBB2 --> vB چگونگی تغییر charset

Shabbak

New Member
سلام خدمت همه ی دوستان امیدوارم بتونم جوابم رو از شما بگیرم.
من انجمنی دارم که مدتی فعال هست و کاربرها و پست های زیادی داره و میخوام به vB منتقلش کنم.
از لحاظ خرید vB مشکلی ندارم اما مشکلم اونجاست که انجمن phpBB رو خودم فارسی کرده بودم و متاسفانه charsetش windows-1256 بوده. میخواستم که کاربرها و پست ها رو به vB منتقل کنم اما از اونجایی که میخوام سیستم vB رو utf-8 کنم مسلما" در دیتابیس مشکل بوجود میاره. (به عنوان مثال اسم کاربر ها یا پست ها ؟؟؟؟؟ میشه. البته هنوز این کار و نکردم ولی خوب طبیعتا" باید اینطور بشه)
میخواستم ببینم راه درست انتقال phpbb با windows-1256 به vB با کدینگ utf-8 چی هست؟

و یا اینکه انجمن فارسی حتما" باید با utf-8 باشه و ضروریه که آدم این همه مراحل رو بره. بخاطره اینکه در غیر این صورت انتقال داده ها به صورت عادی و فقط تغییر charset به windows-1256 توی vB خیلی راحته!.

ممنون میشم کمک کنید.
 

IranPardakht

Well-Known Member
شما تنها مشکلی که پیدا میکنی اینکه که محتوای index شده در جستجو، کار نخواهد کرد. که البته با تغییر نوع جستجو از full text به default حل خواهد شد.

اگر فایل زبان Vbulletin هم arabic windows کنی دیگه نیازی به utf-8 نداری.

آسانترین راه همینه، که نیازی به انجام کار خاصی نباشه. روی چند انجمن تست کردم و ok بود.

راه دیگه هم اینه که دیتابیس phpbb رو تبدیل کنی به utf-8 بعد دوباره آپلود کنی روی سرور. بعد تبدیل رو انجام بدی به vbulletin با utf-8.


درضمن امکان تبدیل دیتابیس با impex ، از phpbb به vbulletin - همراه با تغییر encoding - وجود نداره.

سوالی بود تماس بگیر.
 
آخرین ویرایش:

Shabbak

New Member
بسم الله الرحمن الرحيم
با سلام
دوست عزيز ابتدا با ويرايشگر Emeditor انجمن خود را به utf تبديل بكنيد و سپس انجمنتان را انتقال بدهيد .
آموزشي درباره تبديل به utf در لينك زير است:
http://phpbb.parsvpn.net/u-o-o-u-u-o-o-u-o-u-u-emeditor-t33.html
با تشكر

تبدیل کردنه دیتا بیس برای من معقول تره و به نظر اجرایی تر میاد.

ببین من این رو درست فهمیدم یا نه:
-من دیتابیسم رو از طریق myphpadmin اکسپورت میکنم.
-میریزمش توی این برنامه Emeditor
-تبدیلش میکنم به utf-8
-فایل جدید .sql رو آپلودش میکنم روی هاستم
-لینکش رو میدم به impex برای دیتابیس ( ImpEx این کار رو انجام میده دیگه نه؟ حتما" قرار نیست دیتابیس در حال کار کردن باشه میتونه بصورت فایل آپلود شده باشه. من این رو جایی خوندم شاید اشتباه باشه)
-بعد انتقالات رو انجام میده...
-برای عوض کردن language هم از اونجایی که خودم میخوام customizeش کنم یا از phrase manager استفاده میکنم یا از xml فایل language.

بعد وقتی که از phrase manager استفاده میکنیم برای تغییر زبان، کلمه هایی که ذخیره میشه کدینگش چیه؟ آیا اونها هم utf-8 ذخیره میشند؟ اگه نیست باید چی کار کنم که utf-8 ذخیره بشه. و اینکه تغییر coding توی vB از طریق فایل های سورس vB هست یا فایل های قالب.

دمتون گرم بچه ها
 

IranPardakht

Well-Known Member
-لینکش رو میدم به impex برای دیتابیس ( ImpEx این کار رو انجام میده دیگه نه؟ حتما" قرار نیست دیتابیس در حال کار کردن باشه میتونه بصورت فایل آپلود شده باشه. من این رو جایی خوندم شاید اشتباه باشه)

باید یک دیتابیس جدید بسازی و توی اون export کنی.

-برای عوض کردن language هم از اونجایی که خودم میخوام customizeش کنم یا از phrase manager استفاده میکنم یا از xml فایل language.

وقتی دیتابیس شما utf-8 هست دیگه نیازی به کار خاصی نداری. یک فایل language فارسی import کن دربخش زبانها و در قسمت settings اش utf-8 بذار برای Encoding.
 

Shabbak

New Member
من همیشه توی آپلود کردن دیتابیس های با حجم بالا مشکل داشتم، فکر میکنید ایمپورت کردن دیتابیسه 100 یا 200 مگی مشکلی پیدا نمیکنه؟ ایشالله که نکنه!

دمتون گرم.
 

sunrise

Member
من همیشه توی آپلود کردن دیتابیس های با حجم بالا مشکل داشتم، فکر میکنید ایمپورت کردن دیتابیسه 100 یا 200 مگی مشکلی پیدا نمیکنه؟ ایشالله که نکنه!

دمتون گرم.
در مورد حجم بالاي ديتابيس اين ديگه بستگي به تنظيمات هاست داره که تا چه مقدار مي تونه براي يک فايل پست داشته باشه که معمولاً در هاست هاي معمولي از 50 بيشتر نيست.
 

Shabbak

New Member
سلام خدمت دوستان...
والله ما با Emeditor دیتابیسمون رو utf8 کردیم و بعد restore کردیمش روی سرور و charset دیتابیس و تمام table ها رو هم گذاشتیم utf8_general_ci و حالا که از impex استفاده میکنم برای import کردن،userها یوزرهای فارسی با ????? روبرو میشن ولی توی خود دیتابیسی که فایل restore شده حروف یونیکد دیده میشه...

به عنوان مثل اسم شهاب توی دیتابیس restore شده اینطور نمایش داده میشه:
کد:
ÔåÇÈ
ولی موقع ایمپورت کردن میشه:

؟؟؟؟

میشه بگین مشکل کجاست ؟

درضمن من تنها تغییری که به فایل config دادم همینه نمیدونم کاره درستی کردم یا نه:
از این
کد:
	//	****** MySQLI OPTIONS *****
	// When using MySQL 4.1+, MySQLi should be used to connect to the database.
	// If you need to set the default connection charset because your database
	// is using a charset other than latin1, you can set the charset here.
	// If you don't set the charset to be the same as your database, you
	// may receive collation errors.  Ignore this setting unless you
	// are sure you need to use it.
[B][COLOR="SeaGreen"]// $config['Mysqli']['charset'] = 'utf8';[/COLOR][/B]
تغییر دادم به این
کد:
	//	****** MySQLI OPTIONS *****
	// When using MySQL 4.1+, MySQLi should be used to connect to the database.
	// If you need to set the default connection charset because your database
	// is using a charset other than latin1, you can set the charset here.
	// If you don't set the charset to be the same as your database, you
	// may receive collation errors.  Ignore this setting unless you
	// are sure you need to use it.
[B][COLOR="SeaGreen"]$config['Mysqli']['charset'] = 'utf8';[/COLOR][/B]
یعنی // (کامنت) کد رو برداشتم که فعال باشه...

اگه چیزی به ذهنتون میرسه بهم بگین...
این database ساختن هم مصیبتی هست هرچی میسازی به صورت latin1_swedish میسازی باید دوساعت کامندهای sql بدی برگردونیش utf8

کسی در مورد vCharset Converter چیزی میدونه بگه و اصلا" برای چی هست و به درد کار من میخوره؟
 

IranPardakht

Well-Known Member
شما در فایل

ImpexCnfig.php

خط آخرش که نوشته
کد:
define('use_utf8_encode', false);

رو باید true کنی.

اگر جواب نداد false درسته.


در حالت کلی برای تبدیل دیتابیسی مثل ماله شما باید false باشه.

درضمن موردی که بالا نوشتی نیازی نیست... به حالت اولیه خودش برگردون!
 
سلام خدمت دوستان...
والله ما با Emeditor دیتابیسمون رو utf8 کردیم و بعد restore کردیمش روی سرور و charset دیتابیس و تمام table ها رو هم گذاشتیم utf8_general_ci و حالا که از impex استفاده میکنم برای import کردن،userها یوزرهای فارسی با ????? روبرو میشن ولی توی خود دیتابیسی که فایل restore شده حروف یونیکد دیده میشه...

به عنوان مثل اسم شهاب توی دیتابیس restore شده اینطور نمایش داده میشه:
کد:
ÔåÇÈ
ولی موقع ایمپورت کردن میشه:

؟؟؟؟

میشه بگین مشکل کجاست ؟

درضمن من تنها تغییری که به فایل config دادم همینه نمیدونم کاره درستی کردم یا نه:
از این
کد:
	//	****** MySQLI OPTIONS *****
	// When using MySQL 4.1+, MySQLi should be used to connect to the database.
	// If you need to set the default connection charset because your database
	// is using a charset other than latin1, you can set the charset here.
	// If you don't set the charset to be the same as your database, you
	// may receive collation errors.  Ignore this setting unless you
	// are sure you need to use it.
[B][COLOR="SeaGreen"]// $config['Mysqli']['charset'] = 'utf8';[/COLOR][/B]
تغییر دادم به این
کد:
	//	****** MySQLI OPTIONS *****
	// When using MySQL 4.1+, MySQLi should be used to connect to the database.
	// If you need to set the default connection charset because your database
	// is using a charset other than latin1, you can set the charset here.
	// If you don't set the charset to be the same as your database, you
	// may receive collation errors.  Ignore this setting unless you
	// are sure you need to use it.
[B][COLOR="SeaGreen"]$config['Mysqli']['charset'] = 'utf8';[/COLOR][/B]
یعنی // (کامنت) کد رو برداشتم که فعال باشه...

اگه چیزی به ذهنتون میرسه بهم بگین...
این database ساختن هم مصیبتی هست هرچی میسازی به صورت latin1_swedish میسازی باید دوساعت کامندهای sql بدی برگردونیش utf8

کسی در مورد vCharset Converter چیزی میدونه بگه و اصلا" برای چی هست و به درد کار من میخوره؟

بسم الله الرحمن الرحيم
با سلام
آنطور كه من اطلاع دارم بايد بعد از تبديل كردن ديتابيس به UTF همه چيز فارسي باشد و به صورت ÔåÇÈ نباشد ، اگر اينگونه اشت شايد در تبديل اشتباه كرده ايد!
 

IranPardakht

Well-Known Member
به نظر من تبدیل به این شکل کار جالبی نیست! پست اول من در این تاپیک رو بخون.
 

جدیدترین ارسال ها

بالا