MySQL extension သည် MySQL databases များကိုအသုံးချရန် PHP ကိုအသုံးပြုသောအခါဘုံရွေးချယ်မှုတစ်ခုဖြစ်သည်။ စုံစမ်းမှုတစ်ခုပြုလုပ်ပြီးနောက် MySQLI_RESULT OFF ကိုသင်ရလေ့ရှိသည်။ သို့သော် developer များစွာသည်အရေးကြီးသော link ကိုလျစ်လျူရှုထားသည်။ ဤဆောင်းပါးသည်စုံစမ်းမှုရလဒ်သည်အချည်းနှီးဖြစ်သောအခြေအနေကိုမည်သို့ဆုံးဖြတ်ရမည်ကိုအသေးစိတ်ရှင်းပြပါလိမ့်မည်။
ရိုးရှင်းသောမေးမြန်းချက်ဥပမာတစ်ခုကိုအရင်ကြည့်ကြစို့။
<?php
$mysqli = new mysqli("localhost", "username", "password", "database");
if ($mysqli->connect_errno) {
die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
$sql = "SELECT * FROM users WHERE status = 'active'";
$result = $mysqli->query($sql);
if (!$result) {
die("စုံစမ်းမှုမအောင်မြင်ပါ: " . $mysqli->error);
}
// ဒီမှာသော့ချက်အပိုင်းဖြစ်ပါတယ်:ရလဒ်ရှိမရှိစစ်ဆေးပါ
if ($result->num_rows === 0) {
echo "စံသတ်မှတ်ချက်များနှင့်ကိုက်ညီသောအသုံးပြုသူမရှိပါ。";
} else {
while ($row = $result->fetch_assoc()) {
echo "အသုံးပြုသူ: " . htmlspecialchars($row['username']) . "<br>";
}
}
$result->free();
$mysqli->close();
?>
1 ?? $ ရလဒ် မှားယွင်းနေ လျှင်စစ်ဆေးပါ
SQL query stred route တွင်အမှားတစ်ခုဖြစ်ပွားခြင်းသို့မဟုတ်စားပွဲ၌မတည်ရှိပါ။ အသုံးပြုပါ
if (!$result) {
// စုံစမ်းမှုမအောင်မြင်ပါ,အမှားများကိုကိုင်တွယ်
}
2 ?? $ ရလဒ် -> Num_rows စစ်ဆေးပါ
အကယ်. မေးမြန်းမှုသည်အောင်မြင်သော်လည်းကိုက်ညီသောအတန်းများနှင့်မယှဉ်ပြိုင်နိုင်သည့်အခါ Num_Rows သည် 0 ဖြစ်သည်။ အသုံးပြုပါ
if ($result->num_rows === 0) {
// စုံစမ်းမှုသည်ဗလာဖြစ်သည်,ရလဒ်များကိုကိုင်တွယ်ပါ
}
3 ?? အချည်းနှီးသောရလဒ်များကိုဆုံးဖြတ်ရန် FETC_AssoC () ကို တိုက်ရိုက်ရှောင်ကြဉ်ပါ။ <br> လူအများစုက၎င်းကိုတိုက်ရိုက်အသုံးပြုကြသည်။
if ($row = $result->fetch_assoc()) { ... }
ဤနည်းလမ်းသည်ကွင်းဆက်ကိုရလဒ်မရရှိဘဲမထည့်နိုင်ပါ, num_rows ကို ရှင်းလင်းစွာစစ်ဆေးရန်အကြံပြုသည်။
အမှန်တကယ်စီမံကိန်းများတွင် "ရလဒ်မရှိပါ" ကိုတိုက်ရိုက်ထုတ်လွှင့်ရန်မလုံလောက်ပါ။ မြင်ကွင်းအရသင်ပိုမိုကောင်းမွန်အောင်လုပ်နိုင်သည်။
ဖော်ရွေသောချက်ချင်းစာမျက်နှာသို့ပြန်သွားရန်,
Post-analysis ကိုလွယ်ကူချောမွေ့စေရန်မှတ်တမ်းများမှတ်တမ်းများ,
အခြားစာမျက်နှာများသို့ခုန်:
if ($result->num_rows === 0) {
header("Location: https://m66.net/no-results.html");
exit;
}