ဒေတာဘေ့စ်မေးမြန်းချက်များကိုအကောင်အထည်ဖော်သည့်အခါအမှားများကိုအကောင်အထည်ဖော်သည့်အခါအမှားအယွင်းများဖြစ်ပေါ်လာသောအခါ PHP ၏ MySQLI Extension ကိုအသုံးပြုသောအခါအမှားအယွင်းများသည်မလွှဲမရှောင်သာဖြစ်သည်။ အထူးသဖြင့် MySQLI_STMTT_Execute () ကိုအသုံးပြုသောအခါ preprocessing ထုတ်ပြန်ချက်များကိုအကောင်အထည်ဖော်ရန်အတွက်အမှားအယွင်းများသည်အမှားအယွင်းများ၏သတ်သတ်မှတ်မှတ်အကြောင်းရင်းကိုတိုက်ရိုက်မရှင်းပြပါ။ ဤအချိန်တွင်ကျွန်ုပ်တို့သည်အမှားကိုရှာဖွေရန် MySQLI :: $ errno attribute ကိုသုံးရန်လိုအပ်သည်။
MySQLI :: $ errno သည် PHP တွင် MySQLI တိုးချဲ့ခြင်း၏ပိုင်ဆိုင်မှုဖြစ်သည်။ PHP တွင် MySQLI တိုးချဲ့မှု၏ပိုင်ဆိုင်မှုဖြစ်သည်။ နောက်ဆုံး MySQL စစ်ဆင်ရေးတွင်ဖြစ်ပွားခဲ့သောအမှားကုဒ်ကိုညွှန်ပြသည်။ MySQLI_STMT_Execute () ကို ကွပ်မျက်သည့်အခါအမှားတစ်ခုဖြစ်ပေါ်သည့်အခါ MySQLI :: $ errno မှတစ်ဆင့်အသေးစိတ်အမှားကုဒ်များကိုသင်ရရှိနိုင်ပါသည်။
MySQLI :: $ errno နှင့် mySqli :: $ အမှားက MySQL ဒေတာဘေ့စ်လုပ်ငန်းများ၌ခြွင်းချက်များပိုမိုနားလည်ရန်ကျွန်ုပ်တို့အားကူညီနိုင်သည်။
အမှားများ၏အကြောင်း ရင်း များတွင် -
SQL ကြေညာချက်တွင် syntax အမှား။
Mismatched ဒေတာအမျိုးအစားများ၏စည်းနှောင်ခြင်းကဲ့သို့သော parameter ချည်အမှား။
ဒေတာဘေ့စ်ဆက်သွယ်မှုပြ issues နာများ။
ဒေတာဘေ့စ်ဝင်ရောက်ခွင့်ခွင့်ပြုချက်မလုံလောက်ပါ။
ဤအမှားများကို boolean value or MySQLI :: MySQLI :: MySQLI :: MySqli :: အမှားအယွင်းများကိုပေါင်းစပ်ရန်ကျွန်ုပ်တို့ပေါင်းစပ်နိုင်သည့်ပြ erration နာကို ဆွဲဆောင်နိုင်သည့်အတွက်ဤအမှားများကိုတခါတရံဖြစ်ပေါ်စေနိုင်သည်။
MySQLI_STMTT_Execute () မှပြန်လာသော Boolean တန်ဖိုးကိုအသုံးပြုခြင်းအားဖြင့်ကွပ်မျက်သည်အောင်မြင်မှုရှိမရှိကိုကျွန်ုပ်တို့ဆုံးဖြတ်နိုင်သည်။ အကယ်. မှားယွင်းသော ပြန်လာလျှင်ကွပ်မျက်မှုမအောင်မြင်ဟုဆိုလိုသည်။ ဤအချိန်တွင် MySQLI :: MySQLI :: MySQLI :: MySQLI ::
<?php
// ဒေတာဘေ့စ် connection တစ်ခုဖန်တီးပါ
$mysqli = new mysqli("localhost", "username", "password", "database");
// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($mysqli->connect_error) {
die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
// ပြင်ဆင်ထား SQL အသေအချာပေြာဆိုချက်
$stmt = $mysqli->prepare("INSERT INTO users (username, email) VALUES (?, ?)");
// parameters တွေကိုချည်ထား
$username = 'testuser';
$email = 'testuser@m66.net';
$stmt->bind_param("ss", $username, $email);
// 执行အသေအချာပေြာဆိုချက်
if (!$stmt->execute()) {
echo "အမှားကုဒ်: " . $stmt->errno . "<br>";
echo "အမှားသတင်းစကား: " . $stmt->error . "<br>";
} else {
echo "အောင်မြင်စွာထည့်ပါ!<br>";
}
// 关闭အသေအချာပေြာဆိုချက်和连接
$stmt->close();
$mysqli->close();
?>
ဒေတာဘေ့စ်ဆက်သွယ်မှု - ပထမ ဦး စွာ MySQLI () အသစ် () အသစ်ကို database connection တစ်ခုကိုဖန်တီးပြီးဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ။
SQL ကြေငြာချက်ကိုပြင်ဆင်ပါ ။ အသုံးပြုသူအချက်အလက်များကိုထည့်သွင်းရန် SQL Insert Statement တစ်ခုကိုပြင်ဆင်ရန် ပြင်ဆင်ခြင်း () နည်းလမ်းကိုအသုံးပြုသည်။
Commonameters : မှန်ကန်သောဒေတာအမျိုးအစားကိုသေချာစေရန် bind_param () နည်းလမ်းဖြင့်ဖြည့်စွက်ထားသော parameters များကိုချည်နှောင်ခြင်း။
ကြေညာချက်ကို Execute လုပ်ပြီးအမှားများကိုစစ်ဆေးပါ ။ MySQLI_STMTT_Execute () နည်းလမ်းကိုကွပ်မျက်သည့်အခါ မှားယွင်းသော အမှားများကိုဆိုလိုသည်ဆိုပါစို့။ ကျွန်ုပ်တို့သည်အမှားကုဒ်ကို $ stmt-> errno မှတဆင့်ရနိုင်သည် ။
အထက်ဖော်ပြပါကုဒ်များတွင်အမှားအယွင်းတစ်ခုတွင်အမှားတစ်ခုရှိပါကကျွန်ုပ်တို့အမှားကုဒ်ကိုလျင်မြန်စွာရှာဖွေရန်အမှားကုဒ်နှင့်အမှားအယွင်းများကိုထုတ်ပေးလိမ့်မည်။
ဆက်သွယ်မှုကိုပိတ်ပါ ။ နောက်ဆုံးအနေဖြင့်ကျွန်ုပ်တို့သည်ကြိုတင်သတ်မှတ်ထားသောကြေညာချက်နှင့်ဒေတာဘေ့စ်ဆက်သွယ်မှုကိုပိတ်လိုက်သည်။
MySQLI :: $ errno မှရရှိသောအမှားကုဒ်သည် MySQL ဒေတာဘေ့စ်မှပြန်လာသောစံအမှားကုဒ်ဖြစ်သည်။ ဤတွင်အချို့သောဘုံအမှားကုဒ်များကိုဒီမှာ:
1045 : သုံးစွဲသူအတွက်ဝင်ရောက်ခွင့် - ဒေတာဘေ့စ်ကိုမလုံလောက်ပါ။
1064 - သင်၏ SQL syntax - SQL syntax အမှားတွင်အမှားတစ်ခုရှိသည် ။
1062 : ထပ်ရေး entry - မိတ္တူပွားများကိုထည့်ပါ။
2002 - ဒေသခံ MySQL server နှင့် ချိတ်ဆက်. မရပါ ။ MySQL server နှင့် ဆက်သွယ်. မရပါ။
ဤအမှားကုဒ်များသည်ဒေတာဘေ့စ်စစ်ဆင်ရေးပျက်ကွက်မှုအတွက်အကြောင်းပြချက်များကိုရှင်းလင်းရန်ကူညီသည်။
MySQLI :: $ errno property မှတစ်ဆင့်ဒေတာဘေ့စ်လုပ်ငန်းများ၌အမှားကုဒ်များကိုကျွန်ုပ်တို့လျင်မြန်စွာရယူနိုင်ပြီး MySQLI :: $ အမှားအယွင်းများ နှင့်ပေါင်းစပ်နိုင်သည်။ MySQLI_STMTT_Execute () အမှားတစ်ခုဖြစ်သောအခါ, Reward Value ကိုပထမ ဦး ဆုံးစစ်ဆေးပါ။ ပြ the နာကိုပြ the နာကိုဖြေရှင်းရန်သေချာအောင်လုပ်ပါ။