လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> MySQLI :: Get_charset က False Value ကိုပြန်ပေးရတဲ့အကြောင်းရင်းကဘာလဲ။

MySQLI :: Get_charset က False Value ကိုပြန်ပေးရတဲ့အကြောင်းရင်းကဘာလဲ။

M66 2025-05-18

MySQL extension သည် PHP ကို ​​အသုံးပြု. MySQL ဒေတာဘေ့စ်နှင့်အပြန်အလှန်ဆက်သွယ်သောအခါအလွန်အသုံးများသောရွေးချယ်မှုဖြစ်သည်။ MySQLI သည် MySQLI :: Get_charet သည်လက်ရှိဒေတာဘေ့စ် connection connection contract connect ကိုရရှိရန်အသုံးပြုသော database နှင့်အလုပ်လုပ်ရန်လုပ်ငန်းဆောင်တာများစွာကိုအသုံးပြုသည်။

MySQLI :: Get_charset ဟုခေါ်သည့်အခါ developer များစွာက Fless ကို ပြန်ပို့သည်ဟုတွေ့ရှိရသည်။ သို့ဖြစ်လျှင်အဘယ်ကြောင့်ဤသို့ဖြစ်ပျက်သနည်း ဤဆောင်းပါးတွင် MySQLI :: Get_charet မှ မှားယွင်းသော ပြန်လာရသည့်အကြောင်းရင်းအချို့ကိုလေ့လာမည်။

1 ။ ဆက်သွယ်မှုကိုမှန်ကန်စွာမတည်ထောင်ပါ

ပထမအချက်မှာအသုံးအများဆုံးအကြောင်းပြချက်များထဲမှတစ်ခုမှာဒေတာဘေ့စ်ဆက်သွယ်မှုကိုအောင်မြင်စွာမဖွင့်နိုင်ခြင်းဖြစ်သည်။ MySQLI :: Get_charset သည် ခိုင်လုံသောဒေတာဘေ့စ်၏ဆက်သွယ်မှုအရင်းအမြစ်လိုအပ်သည်။ ဆက်သွယ်မှုသည်မအောင်မြင်ပါကအောင်မြင်စွာမတည်ထောင်ထားပါက Get_charset နည်းလမ်းကိုခေါ်သည့်အခါ မှားယွင်းသောအယူမှား ပြန်လာသည်။

ဖြေရှင်းချက် -

MySQLI_Connect သို့မဟုတ် MySQLI မှ MySQLI :: Get_charset ကို မခေါ်မီဆက်သွယ်မှုကိုအောင်မြင်စွာတည်ထောင်ရန်သေချာအောင်လုပ်ပါ။ အမှားအယွင်းများမရှိပါ။

 $mysqli = new mysqli("localhost", "username", "password", "database");

if ($mysqli->connect_error) {
    die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
$charset = $mysqli->get_charset();
echo "လက်ရှိဇာတ်ကောင်အစုံ: " . $charset->charset;

အကယ်. Connect_ERRORR သည် အမှားအယွင်းတစ်ခုပြန်ပို့ပါကဒေတာဘေ့စ်ဆက်သွယ်မှုမအောင်မြင်ဟုဆိုလိုသည်။

2 ။ ဒေတာဘေ့စ်ဇာတ်ကောင်အစုံသည်မမှန်မကန်သို့မဟုတ် configured မပေးပါ

ဒေတာဘေ့စ်ဆက်သွယ်မှုကိုယ်နှိုက်သည်ပြ problem နာမဟုတ်သော်လည်း, စရိုက် လက်ခဏာကိုမသတ်မှတ်ထားပါ အထူးသဖြင့်ဒေတာဘေ့စ်ဆက်သွယ်မှုသည်ပုံမှန်အက္ခရာများကိုအသုံးပြုသည်နှင့်ဇာတ်ကောင် set ကို MySQLI နှင့်မှန်ကန်စွာအသိအမှတ်မပြုပါ။ Get_charet ကျရှုံးလိမ့်မည်။

ဖြေရှင်းချက် -

Connection character set ကို MySQLI :: SET_CHARSet Method မှတဆင့်အတိအလင်းသတ်မှတ်နိုင်သည်။ ဒေတာဘေ့စ်ဆက်သွယ်မှုသည်မှန်ကန်သောဇာတ်ကောင်ကိုအသုံးပြုသည်။

 $mysqli->set_charset("utf8");

$charset = $mysqli->get_charset();
if ($charset === false) {
    die("ဇာတ်ကောင်အစုံရရန်ပျက်ကွက်");
}

echo "လက်ရှိဇာတ်ကောင်အစုံ: " . $charset->charset;

သင်ရွေးချယ်သောဇာတ်ကောင်သတ်မှတ်ချက်ကို UTF8 သို့မဟုတ် UTF8MB4 ကဲ့သို့သောဒေတာဘေ့စ်ကထောက်ပံ့သည်ကိုသေချာအောင်လုပ်ပါ။

3 ။ ဇာတ်ကောင် set Query ကို MySQL ဆာဗာတွင်မထောက်ပံ့ပါ

Get_charset မှတစ်ဆင့် character_charset မှတဆင့် set ကိုရယူခြင်း MySQL ဗားရှင်းသို့မဟုတ် configurations အချို့တွင်မထောက်ပံ့နိုင်ပါ။ MySQL ၏ခေတ်သစ်ဗားရှင်းအများစုသည်ဤစစ်ဆင်ရေးကိုထောက်ခံသော်လည်း MySQL ၏အချို့သော configurations (သို့) MySQL ၏အဟောင်းများဗားရှင်းများသည်ဤနည်းလမ်းကို မှားယွင်းစွာ ပြန်ပို့နိုင်သည်။

ဖြေရှင်းချက် -

ပထမ ဦး စွာဇာတ်ကောင် Set Query ကိုထောက်ပံ့သည်ကိုအတည်ပြုရန် MySQL ၏မူကွဲကိုစစ်ဆေးပါ။ အကယ်. သင်၏ MySQL ဗားရှင်းသည်သက်ကြီးရွယ်အိုဖြစ်ပါက MySQL ကိုတည်ငြိမ်သောဗားရှင်းသို့အဆင့်မြှင့်တင်ရန်အကြံပြုသည်။

ဒေတာဘေ့စ်ဇာတ်ကောင်အစုံသည်အောက်ပါ SQL ကြေငြာချက်ကိုအကောင်အထည်ဖော်ခြင်းဖြင့်အတည်ပြုနိုင်သည်။

 SHOW VARIABLES LIKE 'character_set_%';

4 ။ သဟဇာတဒေတာဘေ့စ်ယာဉ်မောင်းများသို့မဟုတ် PHP configuration ကို အသုံးပြု. ပြ issues နာများ

သဟဇာတဖြစ်သော MySQLI driver ကိုအသုံးပြုပါက PHP configuration တွင်မှန်ကန်သော MySQLI extension ကိုမဖွင့်ပါက MySQLI :: Get_charset ကို ပြန်ပို့ရန် လည်းဖြစ်နိုင်သည်။ MySQLI extension ကိုသင်၏ PHP တပ်ဆင်မှုတွင်ဖွင့်ထားပြီး PHP.ini configuration file တွင်သက်ဆိုင်ရာအင်္ဂါရပ်များကိုပိတ်ထားသည်ကိုသေချာအောင်လုပ်ပါ။

ဖြေရှင်းချက် -

MySQLI extension ကိုဖွင့်ထားကြောင်းသေချာစေရန် PHP configuration ကိုစစ်ဆေးပါ။ အောက်ပါ command ကိုကွပ်မျက်ခြင်းဖြင့် MySQLI extension ကိုဖွင့်ထားခြင်းရှိမရှိစစ်ဆေးနိုင်သည်။

 phpinfo();

MySQLI သတင်းအချက်အလက်များသည် output တွင်သတင်းအချက်အလက်များရှိကြောင်းအတည်ပြုပါ။ မရရှိလျှင် extension ကို enable လုပ်ရန် PHP.ini ၏ extension ကို enable လုပ်ရန်လိုအပ်နိုင်သည်။

5 ။ ဒေတာဘေ့စ်ဆက်သွယ်မှုမမျှော်လင့်ဘဲပိတ်ထားခဲ့သည်

အကယ်. MySQLI :: Get_chariSet ဟုခေါ်သောအခါဒေတာဘေ့စ်ဆက်သွယ်မှုကိုပိတ်ထားပါကပြန်လာသောတန်ဖိုးသည်လည်း အတုအယောင် ဖြစ်နိုင်သည်။ Get_charet မခေါ်မီ connection သည်မှန်ကန်နေဆဲဖြစ်ကြောင်းသေချာစေရန်လိုအပ်သည်။

ဖြေရှင်းချက် -

get_charet ကို မခေါ်မီဆက်သွယ်မှုကိုမပိတ်ပါနှင့်သို့မဟုတ်မှန်ကန်သောဇာတ်ကောင်သတ်မှတ်ချက်ကိုရရှိရန်သေချာစေရန်ဆက်သွယ်မှုကိုပြန်လည်တည်ဆောက်ခြင်းကိုရှောင်ပါ။

 $mysqli->close();  // ဆက်သွယ်မှုကိုပိတ်ပါ
$charset = $mysqli->get_charset();  // ခေါ်သည့်အခါပြန်လာ false

သက်ဆိုင်ရာနည်းလမ်းကိုခေါ်သည်အထိဒေတာဘေ့စ်ဆက်သွယ်မှုကိုဖွင့်နေဆဲဖြစ်ကြောင်းသေချာပါစေ။

အကျဉ်းချုပ်

MySQLI :: Get_charset သည် Database connections ပြ problems နာ များ, စရိုက်များ setturations များ, php configuration ပြ problems နာများ ,

ဒေတာဘေ့စ် connection သည်ပုံမှန်အတိုင်းဖြစ်စေသည်ဟုဇာတ်ကောင်သတ်မှတ်ချက်ကိုမှန်ကန်စွာပြုပြင်ထားပြီး PHP ပတ်ဝန်းကျင်နှင့်ပြ problems နာမရှိပါကဤပြ problem နာကိုဖြေရှင်းရန်သော့ချက်ဖြစ်သည်။