تبلیغات بنری ویکیوز

ارسال پاسخ 
 
امتیاز موضوع:
  • 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 2,770 ۱۲-۱۱-۱۳۹۲ ۰۱:۴۷ عصر
آخرین ارسال: mostafa mf
  افزایش سرعت با استفاده از gzip کردن sajad7605 8 1,295 ۱۷-۶-۱۳۹۲ ۱۲:۲۰ عصر
آخرین ارسال: Hossein121
  آموزش اضافه کردن محروم سازی آی پی به پروفایل کاربر Hossein121 0 244 ۱۲-۵-۱۳۹۲ ۰۴:۲۱ عصر
آخرین ارسال: Hossein121
  اموزش اسان کردن قسمت ثبت نام (عضویت کوتاه) ! Omid StaR ! 2 564 ۸-۷-۱۳۹۱ ۰۹:۱۶ عصر
آخرین ارسال: Hossein121
  اموزش اضافه کردن کلید میانبر به صورت کشویی ! Omid StaR ! 4 966 ۴-۴-۱۳۹۱ ۱۱:۱۴ عصر
آخرین ارسال: tanhatarin
  نحوه ی اضافه کردن دکمه به قسمت ارسال ها SheRvin 0 585 ۲۹-۲-۱۳۹۱ ۰۹:۴۹ عصر
آخرین ارسال: SheRvin
  اضافه کردن حروف الفبا به لیست اعضاء A,B,C,D ,E ,... SheRvin 0 498 ۲۸-۲-۱۳۹۱ ۰۸:۵۰ عصر
آخرین ارسال: SheRvin

پرش به انجمن:


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

اخبار فناوری اطلاعات | نرم افزار املاک | نرم افزار دامپزشکی | هتل آپارتمان مشهد | نرم افزار داروخانه | نرم افزار رستوران | نرم افزار تاکسی سرویس | نرم افزار رستوران | دانلود نرم افزار مطب | دانلود نرم افزار تاکسی سرویس | مجله پزشکی آسان طب | دکتر آسان طب | نرم افزار مطب | نرم افزار دفترچه تلفن نرم افزار چاپ چک نرم افزار رستوران نرم افزار فست فود نرم افزار کافی شاپ نرم افزار تاکسی سرویس نرم افزار نمایشگاه خودرو نرم افزار املاک نرم افزار هتلداری نرم افزار مطب نرم افزار دندانپزشکی نرم افزار انبارداری نرم افزار حسابداری فروشگاه نرم افزار وکالت مجله اینترنتی پارسی وان | مجله اینترنتی زیگیل | خرید بک لینک | خرید رپورتاژ | سینما تئاتر مای استیج | یک مهاجر | دنیای مهاجرت | مجله گردشگری کاروان | وردپرس دانلود | مجله تفریحی تندیس فان | نرم افزار | جوک جدید | ماشین آلات بسته بندی | رژیم لاغری | شلوارک لاغری هات شیپر فروشگاه اينترنتي لوازم آرايشي | اخبار هنر | اخبار کامپیوتر | سایت پزشکی | فروشگاه اینترنتی | سایت خبری | دانلود موزیک | اندروید سه | بانک شماره موبایل | پایگاه صالحین | مجله کامپیوتری | جاب لر | سهام نت | تکی کو | تم کد | شرکت تبلیغاتی | مجله خانواده | جراحی بینی | فروش جوجه بوقلمون | مجله اینترنتی وبدون | پورتال خبری | سایت تفریحی تک لایو | مجله سرگرمی سیب رنک | تولید کننده روغن زیتون | سایت پزشکی دکتر طب | باربری تهران | خرید هاست | مبل | مدرن بوک | طراحی بنر | ماشین آلات بسته بندی |
خرید vpn

برای درج تبلیغات متنی، بنری و یا رپرتاژ آگهی در این وب سایت با شماره 09370888727 تماس حاصل فرمائید