ارسال پاسخ 
 
امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
UFT-8 کردن دسته جمعی دیتابییس ها
نویسنده پیام
mparsa آفلاین
او خواهد آمد...
*
کاربر سایت

ارسال‌ها: 62
تاریخ عضویت: فرو ۱۳۹۱
اعتبار: 5
سپاس ها : 147
 سپاس شده 21 بار در 14 ارسال
ارسال: #1
UFT-8 کردن دسته جمعی دیتابییس ها
سلام کاربران زیادی دنبال چنین کد و برنامه ای میگردن که کل دیتابیس رو یک جا UTF-8 کنه این آموزش برای افرادی مفید هست که کل دیتابیسشون Collation اون غیر از UTF-8 باشه و افراد مبتدی.
این کد PHP هستش که باید یک فایل به نام مثلا UTF.php روی هاست خودتون ایجاد کنید و کد زیر رو درون اون بریزید و صفحه رو از روی سایت خودتون اجرا کنید و در عرض کمتر از چند ثانیه کل دیتابیس UFT-8 میشه

این کد:
کد:
<?php

function MysqlError()
{
        if (mysql_errno())
        {
                echo "<b>Mysql Error: " . mysql_error() . "</b>\n";
        }
}

$username = "root";
$password = "";
$db = "mysql";
$host = "localhost";

$target_charset = "utf8";
$target_collate = "utf8_general_ci";

echo "<pre>";

$conn = mysql_connect($host, $username, $password);
mysql_select_db($db, $conn);

$tabs = array();
$res = mysql_query("SHOW TABLES");
MysqlError();
while (($row = mysql_fetch_row($res)) != null)
{
        $tabs[] = $row[0];
}

// now, fix tables
foreach ($tabs as $tab)
{
        $res = mysql_query("show index from {$tab}");
        MysqlError();
        $indicies = array();

        while (($row = mysql_fetch_array($res)) != null)
        {
                if ($row[2] != "PRIMARY")
                {
                        $indicies[] = array("name" => $row[2], "unique" => !($row[1] == "1"), "col" => $row[4]);
                        mysql_query("ALTER TABLE {$tab} DROP INDEX {$row[2]}");
                        MysqlError();
                        echo "Dropped index {$row[2]}. Unique: {$row[1]}\n";
                }
        }

        $res = mysql_query("DESCRIBE {$tab}");
        MysqlError();
        while (($row = mysql_fetch_array($res)) != null)
        {
                $name = $row[0];
                $type = $row[1];
                $set = false;
                if (preg_match("/^varchar\((\d+)\)$/i", $type, $mat))
                {
                        $size = $mat[1];
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} VARBINARY({$size})");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} VARCHAR({$size}) CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "CHAR"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} BINARY(1)");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} VARCHAR(1) CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "TINYTEXT"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} TINYBLOB");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} TINYTEXT CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "MEDIUMTEXT"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} MEDIUMBLOB");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} MEDIUMTEXT CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "LONGTEXT"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} LONGBLOB");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} LONGTEXT CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }
                else if (!strcasecmp($type, "TEXT"))
                {
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} BLOB");
                        MysqlError();
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} TEXT CHARACTER SET {$target_charset}");
                        MysqlError();
                        $set = true;

                        echo "Altered field {$name} on {$tab} from type {$type}\n";
                }

                if ($set)
                        mysql_query("ALTER TABLE {$tab} MODIFY {$name} COLLATE {$target_collate}");
        }

        // re-build indicies..
        foreach ($indicies as $index)
        {
                if ($index["unique"])
                {
                        mysql_query("CREATE UNIQUE INDEX {$index["name"]} ON {$tab} ({$index["col"]})");
                        MysqlError();
                }
                else
                {
                        mysql_query("CREATE INDEX {$index["name"]} ON {$tab} ({$index["col"]})");
                        MysqlError();
                }

                echo "Created index {$index["name"]} on {$tab}. Unique: {$index["unique"]}\n";
        }

        // set default collate
        mysql_query("ALTER TABLE {$tab}  DEFAULT CHARACTER SET {$target_charset} COLLATE {$target_collate}");
}

// set database charset
mysql_query("ALTER DATABASE {$db} DEFAULT CHARACTER SET {$target_charset} COLLATE {$target_collate}");

mysql_close($conn);
echo "</pre>";

توجه داشته باشید این 4 مورد رو به اطلاعات دیتابیس خودتون تغییر بدید:
کد:
$username = "root";
$password = "";
$db = "mysql";
$host = "localhost";

منبع : http://www.gigpa.ir اینم سایت خودمه

یا علی مدد :wub::heart:

یا علی مدد


http://oshagholhosein.ir - انجمن عشاق الحسین
۲۵-۵-۱۳۹۱ ۰۲:۲۷ عصر
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
atashesoozan آفلاین
کاربر سایت
*
کاربر سایت

ارسال‌ها: 72
تاریخ عضویت: فرو ۱۳۹۱
اعتبار: 0
سپاس ها : 59
 سپاس شده 12 بار در 9 ارسال
ارسال: #2
RE: UFT-8 کردن دسته جمعی دیتابییس ها
من انجام دادم ولی تغییری نکرد و هنوز بلوک هام علامت سوال مونده

http://www.atashcloob.ir
(آخرین ویرایش در این ارسال: ۱۰-۶-۱۳۹۱ ۱۰:۵۴ صبح، توسط atashesoozan.)
۱۰-۶-۱۳۹۱ ۱۰:۴۵ صبح
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
mparsa آفلاین
او خواهد آمد...
*
کاربر سایت

ارسال‌ها: 62
تاریخ عضویت: فرو ۱۳۹۱
اعتبار: 5
سپاس ها : 147
 سپاس شده 21 بار در 14 ارسال
ارسال: #3
RE: UFT-8 کردن دسته جمعی دیتابییس ها
شما طبق روش این کار رو انجام بدید و اطلاعات دیتابیس رو توی فایل وارد کنید و صفحه رو ارجرا کنید من خودم امتحان کردم کاملا جواب داده.

هاست شما چیه؟؟
من روی هاست های رایگان هم این کار رو انجام دادم.

یا علی مدد


http://oshagholhosein.ir - انجمن عشاق الحسین
۱۰-۶-۱۳۹۱ ۱۲:۴۳ عصر
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
mparsa آفلاین
او خواهد آمد...
*
کاربر سایت

ارسال‌ها: 62
تاریخ عضویت: فرو ۱۳۹۱
اعتبار: 5
سپاس ها : 147
 سپاس شده 21 بار در 14 ارسال
ارسال: #4
RE: UFT-8 کردن دسته جمعی دیتابییس ها
راستی اول کد ها رو بریز توی نوت پد بعد عوض کن بعد برو توی هاست و اجراش کن.

یا علی مدد


http://oshagholhosein.ir - انجمن عشاق الحسین
۱۰-۶-۱۳۹۱ ۱۲:۴۴ عصر
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
atashesoozan آفلاین
کاربر سایت
*
کاربر سایت

ارسال‌ها: 72
تاریخ عضویت: فرو ۱۳۹۱
اعتبار: 0
سپاس ها : 59
 سپاس شده 12 بار در 9 ارسال
ارسال: #5
RE: UFT-8 کردن دسته جمعی دیتابییس ها
هاستم لینوکسه و سیپنل هستش
منظور از ضفحه رو اجرا کنید چیه؟

http://www.atashcloob.ir
(آخرین ویرایش در این ارسال: ۱۰-۶-۱۳۹۱ ۰۲:۰۶ عصر، توسط atashesoozan.)
۱۰-۶-۱۳۹۱ ۰۱:۵۶ عصر
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
Hossein121 آفلاین
محمدحسین فراهانی
******
معاونت سایت

ارسال‌ها: 1,396
تاریخ عضویت: فرو ۱۳۹۱
اعتبار: 1118
سپاس ها : 1088
 سپاس شده 1451 بار در 389 ارسال
ارسال: #6
RE: UFT-8 کردن دسته جمعی دیتابییس ها
یعنی بعد از اینکه این صفحه رو درست کردی وارد
atashesoozan.org/UTF.php بشی.

[مهم] قوانین مای بی بی اسکین
[ویژه] همکاری با تیم مای بی بی اسکین

ما فراموش شدگانیم جز نعره سلاحی نیست...

لطفا به هیچ وجه از مدیران در پیام خصوصی درخواست کمک نکنید و یا سوال نپرسید.
(آخرین ویرایش در این ارسال: ۱۰-۶-۱۳۹۱ ۰۶:۵۷ عصر، توسط Hossein121.)
۱۰-۶-۱۳۹۱ ۰۵:۰۲ عصر
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
atashesoozan آفلاین
کاربر سایت
*
کاربر سایت

ارسال‌ها: 72
تاریخ عضویت: فرو ۱۳۹۱
اعتبار: 0
سپاس ها : 59
 سپاس شده 12 بار در 9 ارسال
ارسال: #7
RE: UFT-8 کردن دسته جمعی دیتابییس ها
انجام دادم ولی وقتی میخوام وارد بشم صفحه سفید میشه

http://www.atashcloob.ir
(آخرین ویرایش در این ارسال: ۱۰-۶-۱۳۹۱ ۰۶:۲۳ عصر، توسط atashesoozan.)
۱۰-۶-۱۳۹۱ ۰۶:۱۷ عصر
یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
mparsa آفلاین
او خواهد آمد...
*
کاربر سایت

ارسال‌ها: 62
تاریخ عضویت: فرو ۱۳۹۱
اعتبار: 5
سپاس ها : 147
 سپاس شده 21 بار در 14 ارسال
ارسال: #8
RE: UFT-8 کردن دسته جمعی دیتابییس ها
خوب صفحه سفید میشه و چند دقیقه صبر میکنید بعد میری دیتابیس ها رو میبینی که همش UTF-8 شده.

یا علی مدد


http://oshagholhosein.ir - انجمن عشاق الحسین
۱۲-۶-۱۳۹۱ ۱۲:۱۵ عصر
مشاهده‌ی وب‌سایت کاربر یافتن تمامی ارسال‌های این کاربر نقل قول این ارسال در یک پاسخ
ارسال پاسخ 


موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  اموزش تصویری utf-8 کردن تیبل ها در دیتابیس ! Omid StaR ! 22 3,959 ۱۲-۱۱-۱۳۹۲ ۰۱:۴۷ عصر
آخرین ارسال: mostafa mf
  افزایش سرعت با استفاده از gzip کردن sajad7605 8 1,820 ۱۷-۶-۱۳۹۲ ۱۲:۲۰ عصر
آخرین ارسال: Hossein121
  آموزش اضافه کردن محروم سازی آی پی به پروفایل کاربر Hossein121 0 395 ۱۲-۵-۱۳۹۲ ۰۴:۲۱ عصر
آخرین ارسال: Hossein121
  اموزش اسان کردن قسمت ثبت نام (عضویت کوتاه) ! Omid StaR ! 2 949 ۸-۷-۱۳۹۱ ۰۹:۱۶ عصر
آخرین ارسال: Hossein121
  اموزش اضافه کردن کلید میانبر به صورت کشویی ! Omid StaR ! 4 1,279 ۴-۴-۱۳۹۱ ۱۱:۱۴ عصر
آخرین ارسال: tanhatarin
  نحوه ی اضافه کردن دکمه به قسمت ارسال ها SheRvin 0 706 ۲۹-۲-۱۳۹۱ ۰۹:۴۹ عصر
آخرین ارسال: SheRvin
  اضافه کردن حروف الفبا به لیست اعضاء A,B,C,D ,E ,... SheRvin 0 648 ۲۸-۲-۱۳۹۱ ۰۸:۵۰ عصر
آخرین ارسال: SheRvin

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

خانه | بازگشت به بالا | بازگشت به محتوا | نسخه موبایل | پیوند سایتی RSS
اخبار فناوری اطلاعات | نرم افزار املاک | هتل آپارتمان مشهد | نرم افزار رستوران | نرم افزار تاکسی سرویس | نرم افزار رستوران | دانلود نرم افزار مطب | دانلود نرم افزار تاکسی سرویس | مجله پزشکی آسان طب | اتوماسیون پزشکی | نرم افزار دفترچه تلفن نرم افزار چاپ چک نرم افزار رستوران نرم افزار فست فود نرم افزار کافی شاپ نرم افزار تاکسی سرویس نرم افزار نمایشگاه خودرو نرم افزار املاک نرم افزار هتلداری نرم افزار مطب نرم افزار دندانپزشکی نرم افزار انبارداری نرم افزار حسابداری فروشگاه نرم افزار وکالت مجله اینترنتی پارسی وان | مجله اینترنتی زیگیل | خرید بک لینک | خرید رپورتاژ | سینما تئاتر مای استیج | یک مهاجر | دنیای مهاجرت | مجله گردشگری کاروان | وردپرس دانلود | مجله تفریحی تندیس فان | نرم افزار Software | جوک جدید | اخبار هنر | اخبار کامپیوتر | سایت پزشکی | فروشگاه اینترنتی | سایت خبری | دانلود موزیک | اندروید سه | بانک شماره موبایل | پایگاه صالحین | مجله کامپیوتری | جاب لر | نوین ساخت | سهام نت | تکی کو | تم کد | مجله اینترنتی وبدون | پورتال خبری | سایت تفریحی تک لایو | مجله سرگرمی سیب رنک | سایت پزشکی دکتر طب | مدرن بوک | مجله اینترنتی فرتکست | مجله پزشکی نت سلامت | کافه ایرونی | مجله خندانک | مجله اینترنتی فان استار | مجله من | مجله اینترنتی دونیمه | مجله اینترنتی بردیا | فاینال مد | فرهنگیا | نامبروان | جان نو | مگفر | مجله 24 | نیمچه | تک پدیا | آیناز وب | مطالب بیست | میهن اسکای | نیک آنلاین | شینار | وطنی ها | طب جدید | هوای تازه | آاقای گل | برترین مطالب | دایی رضا | فارس پدیا | آجودانیه | چارشنبه | فانیفا | قارپوز | گوهرمند | گل بهار | جهان من | جوان امروز | کالچر | مه آذین | مجله سبز | مگناب | دنیای نت | نیک اندیشه | نیکاندوست | نیک پاتوق | ازبک | پارمینو | پیک آبی | پورتال من | راز آلود | روسپید | رشد نگر | رویای زندگی | شورانگیز | سیمای وب | نتیها | تاپکده | وب دوستان | ویکی وان | یکناز | زرچوب | زردقناری | عصرطلایی | فرتورز | آموزش گیتار | مایادانلود | | دکتر CMS | سایت آموزش گیتار | رایان درمان | پارسیان گشت | ایران کافه | گیتی بوک | مجله فراتوریسم | فراتوریسم | دکتر آسان دنت | آسان دنت | مجله گردشگری افراگشت | افراگشت | هشت گام | فرکافی | میهن تاج | مجله پزشکی رایان درمان | موج سینما | تیزباد | برفانک | کافه داران | کینگ دانلود |
X بستن تبلیغات