ဒေတာဘေ့စ်လုပ်ငန်းများအတွက် PHP ကိုအသုံးပြုသောအခါတစ်ခါတစ်ရံကျွန်ုပ်တို့သည်အချို့သောစုံစမ်းမှုများကိုအကောင်အထည်ဖော်ရန်နှင့်ဤမေးမြန်းချက်များ၏ရလဒ်များကိုလုပ်ဆောင်ရန်လိုအပ်သည်။ ရှုပ်ထွေးသောမေးမြန်းချက်အချို့အတွက်ကျွန်ုပ်တို့သည်မေးမြန်းခြင်းများစွာဖြင့်ပြန်လာသည့် paging ယုတ္တိဗေဒကိုအသုံးပြုရန်လိုအပ်နိုင်သည်။ နောက် function သည်ဤကဲ့သို့သောမြင်ကွင်းတွင်အလွန်အသုံးဝင်သည်။ အထူးသဖြင့်စာနာထောက်ထားမှုလိုအပ်သည့်အခါမေးမြန်းချက်မျိုးစုံ၏ရလဒ်များကိုထိရောက်စွာလုပ်ဆောင်ရန်၎င်းသည်ကျွန်ုပ်တို့အားကူညီသည်။
Next_Result () PHP ၏ MySQLI extension တွင် function တစ်ခုဖြစ်သည်။ မေးမြန်းချက်မျိုးစုံကိုကွပ်မျက်ခံရသည့်အခါတစ်ခုချင်းစီ၏ရလဒ်များကိုတစ်ခုစီ၏ရလဒ်များကိုရရန်ခွင့်ပြုသည်။ MySQLI_Multi_Query () function ကိုသုံးသောအခါ, query မျိုးစုံကို execute လုပ်သည့် function ကိုအသုံးပြုသောအခါ Next_result () သည် စုံစမ်းမှုတစ်ခုစီ၏ရလဒ်များကိုဖြတ်သန်းရန်ခွင့်ပြုသည်။
ပုံမှန်အားဖြင့် mysqli_multi_query () ကို SQL Query လုပ်ရန်အသုံးပြုသည်။ Next_result () သည် တစ်ခုချင်းစီ၏ရလဒ်များကိုတစ်ခုချင်းစီဖြင့်ရယူရန်နှင့်စာရင်းတစ်ခုစီတွင်အချက်အလက်များကိုရယူရန်ခွင့်ပြုသည်။
ကျွန်ုပ်တို့သည်စုံစမ်းမှုရလဒ်များမျိုးစုံကိုလုပ်ဆောင်သောအခါကျွန်ုပ်တို့သည် Pagination function ကိုလိုအပ်နိုင်သည်။ ဥပမာအားဖြင့်, paging query ရလဒ်များစွာရှိသည့်အခါ, ယခုအချိန်တွင် Next_result () သည် လာမည့်စုံစမ်းမှု၏ရလဒ်အစုကိုထိရောက်စွာခုန်ချခြင်းနှင့်ရှုပ်ထွေးမှုများနှင့်ပုံတူကူးယူခြင်းကိုရှောင်ရှားနိုင်သည်။
ကျွန်ုပ်တို့တွင်စာတိုအလိုက်ရှာဖွေမှုရလဒ်များစွာပါ 0 င်သောဒေတာဘေ့စ်ရှိသည်ဆိုပါစို့။
<?php
// ဒေတာဘေ့စ်ဆက်သွယ်မှု
$mysqli = new mysqli("localhost", "username", "password", "database");
// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($mysqli->connect_error) {
die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
// စုံစမ်းမှုများကိုမျိုးစုံလုပ်ဆောင်ပါ
$query = "SELECT * FROM table1 LIMIT 10;
SELECT * FROM table2 LIMIT 10;
SELECT * FROM table3 LIMIT 10;";
if ($mysqli->multi_query($query)) {
do {
// ရလဒ်ကိုရယူပါ
if ($result = $mysqli->store_result()) {
// loop output ရလဒ်
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row['id'] . " - Name: " . $row['name'] . "<br>";
}
// ရလဒ်ကိုလွှတ်ပေးရန်
$result->free();
}
// နောက်ရလဒ်ကိုရယူပါ
} while ($mysqli->next_result());
}
// 关闭ဒေတာဘေ့စ်ဆက်သွယ်မှု
$mysqli->close();
?>
ဒေတာဘေ့စ် connection : ပထမအချက်မှာ MySQLI () မှတဆင့်ဒေတာဘေ့စ်ဆက်သွယ်မှုအရာဝတ်ထု $ MySQLI ကိုဖန်တီးပြီးဒေသဆိုင်ရာဒေတာဘေ့စ်ကိုဆက်သွယ်ပါ။
စုံစမ်းမှုပေါင်းသင်းဆက်ဆံရေး - စုံစမ်းမှုများကိုအကောင်အထည်ဖော်ရန် Multi_query () function ကိုသုံးပါ။ ဤနေရာတွင်ကျွန်ုပ်တို့သည် (10) ခုကိုကန့်သတ်ချက် 10 ခုကိုကန့်သတ်ထားသည်။
ရလဒ်တစ်ခုချင်းစီကိုရခြင်းတစ်ခုချင်းစီကို process : store_result () မှတစ်ဆင့် မေးမြန်းမှုတစ်ခုစီ၏ရလဒ်အစုကိုရယူပါ။
Next_result () ကို သုံးပါ () - စုံစမ်းမှုရလဒ်တစ်ခုစီကိုနောက်ဆက်တွဲစုံစမ်းမှုရလဒ်ကိုခုန်ရန် နောက်ဆက်တွဲ () ကို ဆက်လုပ်ပါ။
Close Database Connection : စစ်ဆင်ရေးပြီးစီးပြီးနောက်ဒေတာဘေ့စ်ဆက်သွယ်မှုကိုပိတ်ပါ။
အကယ်. ကျွန်ုပ်တို့သည်မေးမြန်းချက်မျိုးစုံ၏ရလဒ်များကိုရလဒ်များနှင့် ပတ်သက်. စာနာမှုဆိုင်ရာယုတ္တိဗေဒကိုအကောင်အထည်ဖော်လိုပါက Next_result () ပြီးနောက်စုံစမ်းမှုတစ်ခုစီ၏ရလဒ်များကိုကျွန်ုပ်တို့လုပ်ဆောင်နိုင်သည်။ ဥပမာအားဖြင့်, စုံစမ်းမှုတစ်ခုချင်းစီသည်မှတ်တမ်း 10 ခုကိုပြန်လည်ရောက်ရှိပါကအောက်ပါကုဒ်နှင့်ဆင်တူသောအချက်အလက်များကိုစာမျက်နှာဖြင့်ဖော်ပြနိုင်သည်။
<?php
$perPage = 10; // စာမျက်နှာတစ်ခုအတွက်မှတ်တမ်းအရေအတွက်
$currentPage = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$offset = ($currentPage - 1) * $perPage;
// ဒေတာဘေ့စ်ဆက်သွယ်မှု
$mysqli = new mysqli("localhost", "username", "password", "database");
// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ
if ($mysqli->connect_error) {
die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}
// တစ် ဦး Pagination query ကိုလုပ်ဆောင်ပါ
$query = "SELECT * FROM table1 LIMIT $offset, $perPage;
SELECT * FROM table2 LIMIT $offset, $perPage;
SELECT * FROM table3 LIMIT $offset, $perPage;";
if ($mysqli->multi_query($query)) {
do {
// ရလဒ်ကိုရယူပါ
if ($result = $mysqli->store_result()) {
// loop output ရလဒ်
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row['id'] . " - Name: " . $row['name'] . "<br>";
}
// ရလဒ်ကိုလွှတ်ပေးရန်
$result->free();
}
// နောက်ရလဒ်ကိုရယူပါ
} while ($mysqli->next_result());
}
// 关闭ဒေတာဘေ့စ်ဆက်သွယ်မှု
$mysqli->close();
?>
ဤဥပမာတွင်ကျွန်ုပ်တို့သည် offset ကိုပုံမှန်တွက်ချက်သည်, လက်ရှိစာမျက်နှာအရေအတွက်အရ,
Querial order : Next_result () ကို သုံးတဲ့အခါ () ကိုသုံးတဲ့အခါ, စုံစမ်းမှုအစဉ်အလာကအရမ်းအရေးကြီးတယ်။ သင်တစ် ဦး ချင်းစီစုံစမ်းမှု၏ရလဒ်များကိုမှန်ကန်သောနိုင်ရန်အတွက်လုပ်ဆောင်ရန်သေချာအောင်လုပ်ပါ။
အရင်းအမြစ်စီမံခန့်ခွဲမှု - စုံစမ်းမှုရလဒ်တစ်ခုချင်းစီကိုလုပ်ဆောင်ပြီးနောက်အရင်းအမြစ်ကိုထုတ်လွှတ်ရန် အခမဲ့ () ကိုဖုန်းဆက်ရန်သတိရပါ။
စွမ်းဆောင်ရည်စဉ်းစားတွေးခေါ်မှုများ - အချက်အလက်အမြောက်အများကိုအကောင်အထည်ဖော်ရန် Multi_query () ကို အသုံးပြုသောအခါအချက်အလက်ပမာဏသည်ကြီးမားလျှင်စွမ်းဆောင်ရည်ကိုအကျိုးသက်ရောက်နိုင်သည်။ ကျိုးကြောင်းဆီလျော်စွာအသုံးပြုခြင်းနှင့်တစ်ချိန်တည်းတွင်အချက်အလက်များစွာရှာဖွေခြင်းကိုရှောင်ရှားရန်သေချာပါစေ။
Next_result () function ကိုမှတစ်ဆင့်ကျွန်ုပ်တို့သည်စုံစမ်းမှုရလဒ်များ၏အကောင်အထည်ဖော်မှုကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။ ၎င်းသည်အခြေအနေအမျိုးမျိုးကိုကွပ်မျက်ရန်လိုအပ်သည့်အခြေအနေမျိုးစုံနှင့်စုံစမ်းမှုရလဒ်ကိုဖောက်ပြန်ရန်လိုအပ်သည်။ ဒီဆောင်းပါးမှာဖော်ပြထားတဲ့နမူနာကုဒ်ကဒီ function ကိုပိုကောင်းအောင်လုပ်ဖို့,