PHP application များဖွံ့ဖြိုးသည့်အခါဒေတာဘေ့စ်လုပ်ငန်းများကိုမလွှဲမရှောင်သာဖြစ်သည်။ သင့်တော်သောအမှားကိုင်တွယ်သည့်ယန္တရားမရှိပါက၎င်းနောက်ကွယ်မှဝှက်ထားသောအမှားများကြောင့်ကျွန်ုပ်တို့မကြာခဏဒုက္ခရောက်လိမ့်မည်။ ပိုမိုကောင်းမွန်သောပြ troubl နာဖြေရှင်း ခြင်း , ဤဆောင်းပါးသည် MySQLI_STMT ကိုအသုံးပြုနည်း :: Database စစ်ဆင်ရေးများတွင်အမှားအယွင်းများအတွက်အမှားအယွင်းများကိုရှာဖွေရန်နှင့်အမှားအယွင်းများကိုရှာဖွေရန်အတွက်ဒေါ်လာအမှားများကို အသုံးပြုရမည်။
MySQLI_STMT :: $ အမှား သည် MySQLI extension တွင် SQL ကြေငြာချက်ပြင်ဆင်ခြင်းလုပ်ငန်းစဉ်နှင့်သက်ဆိုင်သောနောက်ဆုံးအမှားမက်ဆေ့ခ်ျကိုရရှိရန်အသုံးပြုသောပစ္စည်းတစ်ခုဖြစ်သည်။ များသောအားဖြင့် SQL Execution သည်ဒေတာဘေ့စ်လုပ်ငန်းစဉ်အတွင်း $ error attribute သည်အမှားအယွင်းတစ်ခုသို့ပြန်လာလိမ့်မည်။
PHP တွင် MySQLI_STMT အရာဝတ်ထုသည်ပြင်ဆင်ထားသောထုတ်ပြန်ချက်များကိုကိုယ်စားပြုရန်အသုံးပြုသည်။ Preprocessing ထုတ်ပြန်ချက်များသည် SQL Injection ကိုထိရောက်စွာကာကွယ်နိုင်ပြီး SQL Query ၏စွမ်းဆောင်ရည်ကိုတိုးတက်စေသည်။ ဒေတာဘေ့စ်စစ်ဆင်ရေးတစ်ခုပြုလုပ်သောအခါတိုင်းကျွန်ုပ်၏ရှာဖွေမှုသည် MySQLI_STMT :: $ အမှားကို စစ်ဆေးခြင်းဖြင့်အောင်မြင်မှုရရှိရန်သေချာစေနိုင်သည်။
MySQLI_STMT ကို အသုံးပြု. အမှားအယွင်းများကိုမည်သို့ဖြေရှင်းရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုကိုကြည့်ကြပါစို့။ PHP ရှိ $ error ::
<?php
// ဒေတာဘေ့စ်ကိုဆက်သွယ်ပါ
$mysqli = new mysqli("localhost", "username", "password", "database");
// ဒေတာဘေ့စ်ဆက်သွယ်မှုများကိုစစ်ဆေးပါ
if ($mysqli->connect_error) {
die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
// ပြင်ဆင်ထား SQL မေးမြန်း
$query = "INSERT INTO users (username, email) VALUES (?, ?)";
$stmt = $mysqli->prepare($query);
// စစ်ဆေးကြည့်ရှု SQL 语句是否ပြင်ဆင်ထား成功
if ($stmt === false) {
die('ပြင်ဆင်ထား语句失败: ' . $mysqli->error);
}
// parameters တွေကိုချည်ထား
$username = "testuser";
$email = "[email protected]";
$stmt->bind_param("ss", $username, $email);
// Execution ကြေငြာချက်
if (!$stmt->execute()) {
echo "Execution မအောင်မြင်ပါ: " . $stmt->error; // အသုံးပြု mysqli_stmt::$error အမှားသတင်းအချက်အလက်ရရန်
} else {
echo "ဒေတာသွင်းအောင်မြင်စွာ!";
}
// အနီးကပ်ထုတ်ပြန်ချက်များနှင့်ဆက်သွယ်မှု
$stmt->close();
$mysqli->close();
?>
ဒေတာဘေ့စ်ကိုချိတ်ဆက်ပါ ။ MySQLI () အသစ် () အသစ်သော MySQL ဒေတာဘေ့စ်ကိုပထမ ဦး ဆုံးဆက်သွယ်ပြီးဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ။
SQL ထုတ်ပြန်ချက်များကိုပြင်ဆင်ပါ - SQL ထုတ်ပြန်ချက်များကို MySQLi-> ပြင်ဆင်ရန် () နည်းလမ်းဖြင့်ပြင်ဆင်ပါ။ အကယ်. ပြင်ဆင်မှုပျက်ကွက်ပါကအမှားအယွင်းကို MySQLi-> အမှား မှတဆင့်ရရှိသည်။
Commonameters များ - ကျွန်ုပ်တို့သည်လုံခြုံရေးကိုသေချာစေရန် Proprocessing Proprocessing လုပ်ရန် variable များကိုအသုံးပြုရန် Bind_param () နည်းလမ်းကိုအသုံးပြုသည်။
ထုတ်ပြန်ကြေငြာချက် - ကြေငြာချက်ကို $ stmt-> execute () မှတစ်ဆင့် Execute လုပ်ပါ။ အကယ်. ကွပ်မျက်မှုမအောင်မြင်ပါက,
MySQLI_STMT :: $ အမှား မှတစ်ဆင့်စစ်ဆင်ရေးပျက်ကွက်မှုအတွက်အကြောင်းပြချက်ကိုကျွန်ုပ်တို့ရှင်းရှင်းလင်းလင်းသိနိုင်သည်။ ရှုပ်ထွေးသောဒေတာဘေ့စ်မေးမြန်းချက်များအတွက်ဤပိုင်ဆိုင်မှု၏ဆင်ခြင်တုံတရားအသုံးပြုခြင်းကပြ problems နာများကိုထိရောက်စွာရှာဖွေရန်ကူညီနိုင်သည်။
ဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်အတွင်းကျွန်ုပ်တို့သည်ဒေတာဘေ့စ်စစ်ဆင်ရေးအမှားများကိုမကြာခဏကြုံတွေ့ရလေ့ရှိသည်။ သင့်တော်သောအမှားကိုင်တွယ်ခြင်းမရှိဘဲပြ the နာကိုလျင်မြန်စွာရှာဖွေနိုင်စွမ်းမရှိခြင်းကိုဖြစ်ပေါ်စေနိုင်သည်။ MySQLI_STMT :: $ အမှားက ကျွန်ုပ်တို့ကိုကူညီနိုင်သည်။
အမှားအယွင်းများကိုလျင်မြန်စွာရှာဖွေတွေ့ရှိပါ - အမှားအယွင်းကိုကြည့်ခြင်းအားဖြင့်အမှား၏အကြောင်းရင်းကိုလျင်မြန်စွာနားလည်ပါ။
ကုဒ်ကြံ့ခိုင်မှုကိုတိုးမြှင့်ခြင်း - အမှားအယွင်းများကိုလုပ်ဆောင်ခြင်းဖြင့်ဒေတာဘေ့စ်လုပ်ငန်းများကျရှုံးခြင်းကိုရှောင်ရှားသည့်အခါပရိုဂရမ်ပျက်ခြင်းအန္တရာယ်
Debugging နှင့် Testing : ဖွံ့ဖြိုးတိုးတက်မှုလုပ်ငန်းစဉ်အတွင်းအချိန်မီဖမ်းမိသောအမှားအချက်အလက်များကိုအရှိန်မြှင့်နိုင်ပြီးဖွံ့ဖြိုးမှုစွမ်းရည်ကိုတိုးတက်စေနိုင်သည်။
MySQLI_STMT ၏ဥပမာအချို့ကိုဤတွင်ဖော်ပြထားသည်။ : $ အမှား အမှားအယွင်းများ:
"မိတ္တူပွားခြင်း" - ထပ်တူအချက်အလက်များကိုထည့်သွင်းသောအခါ၎င်းသည်များသောအားဖြင့်အဓိကသော့ချက်သို့မဟုတ်ထူးခြားသောအညွှန်းကိန်းပ conflict ိပက်ခဖြစ်သည်။
"အမည်မသိကော်လံ" - မတည်ရှိသောကော်လံကိုရှာဖွေမှုတွင်ရည်ညွှန်းသည်။
"Syntax Error" : SQL syntax အမှား။
ဤဘုံအမှားအယွင်းများကိုနားလည်ခြင်းသည်ပြ problems နာများကိုကြုံတွေ့ရသောအခါပြ problem နာအမျိုးအစားကိုလျင်မြန်စွာဆုံးဖြတ်ရန်ကူညီနိုင်သည်။
MySQLI_STMT :: $ အမှားသည် ထိရောက်သောဒေတာဘေ့စ်အမှားပြ troubl နာဖြေရှင်းခြင်းနည်းလမ်းဖြစ်သည်။ SQL ကွပ်မျက်မှုတွင်အမှားအယွင်းများကိုစစ်ဆေးခြင်းအားဖြင့်စတင်သူများသည်ပြ problems နာများကိုပိုမိုလျင်မြန်စွာရှာဖွေ။ ဖြေရှင်းနိုင်သည်။ ဤကိရိယာကိုကျွမ်းကျင်ပြီးနောက်ကျွန်ုပ်တို့သည်ဖွံ့ဖြိုးတိုးတက်မှုဆိုင်ရာစွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်သာမကကျွန်ုပ်တို့၏ PHP အစီအစဉ်များကိုအားကောင်းစေပြီးတည်ငြိမ်စေသည်။