လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> နှင့် တွဲဖက်. Conjuntion အတွက် stmt_init နှင့် fetch () ၏အသုံးပြုမှု၏အသေးစိတ်ရှင်းပြချက်

နှင့် တွဲဖက်. Conjuntion အတွက် stmt_init နှင့် fetch () ၏အသုံးပြုမှု၏အသေးစိတ်ရှင်းပြချက်

M66 2025-05-16

MySQL ဒေတာဘေ့စ်ကို MySQL database ကိုလည်ပတ်ရန် PHP ကိုအသုံးပြုသောအခါ MySQLI extension သည်အရာဝတ်ထု ဦး တည်ရာ interface ကိုထောက်ပံ့ပေးသည်။ အထူးသဖြင့်ပြင်ဆင်ထားသည့်ထုတ်ပြန်ချက်များ, MySQLI :: stmt_init နှင့် fetch () သည်အလွန်အရေးပါသောလုပ်ဆောင်ချက်များဖြစ်သည်။

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

1 ။ MySQLI :: stmt_init ဆိုတာဘာလဲ။

MySQLI :: stmt_init () သည် MySQLI အတန်းအစား၏နည်းလမ်းဖြစ်သည် ထို့နောက်ဤအရာဝတ်ထုသည် ပြင်ဆင်ခြင်း () နည်းလမ်းဖြင့် SQL ထုတ်ပြန်ချက်များကိုပြင်ဆင်နိုင်သည်။ ဤအရာ၏အားသာချက်မှာ၎င်းသည်စည်းမျဉ်းစည်းကမ်းများကိုပြန်လည်သုံးသပ်ခြင်းနှင့် code ၏လုံခြုံရေးနှင့်ထိရောက်မှုကိုတိုးတက်စေရန် parameters တွေကိုသုံးနိုင်သည်။

ဥပမာ -

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

if ($mysqli->connect_errno) {
    die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}

$stmt = $mysqli->stmt_init();

2 ။ SQL ထုတ်ပြန်ချက်များကိုပြင်ဆင်ပါ

stmtt_init နှင့်အတူဖော်ပြချက်အရအရာဝတ်ထုတစ်ခုကိုဖန်တီးပြီးနောက်, ပြင်ဆင်ခြင်းကို သုံး. စုံစမ်းမှုကြေညာချက်ကိုပြင်ဆင်ပါ () bind_param သုံး. parameters တွေကိုချည်ထားပါ။

 $query = "SELECT id, name, email FROM users WHERE status = ?";
if ($stmt->prepare($query)) {
    $status = 'active';
    $stmt->bind_param("s", $status);
    $stmt->execute();
}

ထိပ်ဖျား: bind_param ၏ပထမဆုံး parameter "s" ကိုဆိုလိုသည်မှာ parameter type type သည် string ( string ) ဖြစ်သည်ဟုဆိုလိုသည်။

3 ။ ရလဒ်များကိုဖြည့်စွက်ရန် ရရှိသော ရလဒ်များကိုဖြည့်ပါ

ကြေညာချက်ကိုအကောင်အထည်ဖော်ပြီးနောက်ကျွန်ုပ်တို့သည် query query () ကို သုံးရန်လိုအပ်သည်။

 $stmt->bind_result($id, $name, $email);

while ($stmt->fetch()) {
    echo "အသုံးပြုသူID: $id<br>";
    echo "အသုံးပြုသူ名: $name<br>";
    echo "စာပို့: $email<br><br>";
}

4 ။ ပြီးပြည့်စုံသောဥပမာ

ဤတွင် PHP နမူနာအစီအစဉ်ပြည့်စုံသည်။

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

if ($mysqli->connect_errno) {
    die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
}

$stmt = $mysqli->stmt_init();
$query = "SELECT id, name, email FROM users WHERE status = ?";

if ($stmt->prepare($query)) {
    $status = 'active';
    $stmt->bind_param("s", $status);
    $stmt->execute();
    $stmt->bind_result($id, $name, $email);

    echo "<h2>活跃အသုံးပြုသူ列表:</h2>";
    while ($stmt->fetch()) {
        echo "<div>";
        echo "<strong>ID:</strong> $id<br>";
        echo "<strong>နံမယ်:</strong> $name<br>";
        echo "<strong>စာပို့:</strong> <a href='mailto:$email'>$email</a><br>";
        echo "<a href='https://m66.net/user/profile.php?id=$id'>အသေးစိတ်ကိုစစ်ဆေးပါ</a>";
        echo "</div><hr>";
    }

    $stmt->close();
} else {
    echo "SQL Preprocessing မအောင်မြင်ပါ: " . $stmt->error;
}

$mysqli->close();
?>