လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> MySQLI_STMMT :: $ insert_id မှတဆင့်နောက်ဆုံးဖြည့်စွက်ထားသောမှတ်တမ်း၏ ID ကိုမည်သို့ရယူရမည်နည်း။

MySQLI_STMMT :: $ insert_id မှတဆင့်နောက်ဆုံးဖြည့်စွက်ထားသောမှတ်တမ်း၏ ID ကိုမည်သို့ရယူရမည်နည်း။

gitbox 2025-08-04

ဒေတာဘေ့စ်စစ်ဆင်ရေးအတွက် PHP ကိုအသုံးပြုသည့်အခါအထူးသဖြင့် MySQLI_STMT ကြေငြာချက် ( MySQLI_STMT ) ကို အသုံးပြု. ဒေတာများကိုထည့်သွင်းပြီးသောအခါနောက်ဆက်တွဲစုံစမ်းမှု, update သို့မဟုတ်အသင်းလုပ်ငန်းများအတွက်ထည့်သွင်းထားသောမှတ်တမ်း၏အလိုအလျောက်တိုးပွားလာသော ID ကိုကျွန်ုပ်တို့ရလေ့ရှိသည်။ ဤဆောင်းပါးသည် MySQLI_STMT :: $ Insert_id မှတဆင့်နောက်ဆုံးဖြည့်စွက်ထားသော ID ကိုမည်သို့ရနိုင်မည်ကိုအသေးစိတ်မိတ်ဆက်ပေးလိမ့်မည်။

1 ။ mysqli_stmt :: $ insert_id က ဘာလဲ

MySQLI_STMT :: $ Insert_id သည် MySQLI_STMT အရာဝတ်ထု၏ attribute တစ်ခုဖြစ်သည်။ သတိပြုသင့်သည်မှာဤအိမ်ခြံမြေသည် Insert စစ်ဆင်ရေးကိုလုပ်ဆောင်သည်နှင့် Auto_incrent field ကို data table တွင်သတ်မှတ်ထားသည့်အခါသာမှန်ကန်သော ID ကိုပြန်ပို့ပေးလိမ့်မည်ဟုမှတ်ချက်ပြုသင့်သည်။

2 ။ ဥပမာကိုသုံးပါ

မှတ်တမ်းတစ်ခုထည့်သွင်းရန်နှင့်ထည့်သွင်းထားသော ID ကိုမည်သို့ရယူရမည်ကိုအပြည့်အဝဥပမာတစ်ခုဖြစ်ပြီးသင်ထည့်လိုက်သောအချက်အလက်များကိုမေးမြန်းရန်ဤ ID ကိုသုံးပါ။

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$mysqli</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">mysqli</span></span><span>(</span><span><span class="hljs-string">"localhost"</span></span><span>, </span><span><span class="hljs-string">"username"</span></span><span>, </span><span><span class="hljs-string">"password"</span></span><span>, </span><span><span class="hljs-string">"test_db"</span></span><span>);

</span><span><span class="hljs-comment">// ဆက်သွယ်မှုကိုစစ်ဆေးပါ</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;connect_errno) {
    </span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"ဆက်သွယ်မှုမအောင်မြင်ပါ: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;connect_error);
}

</span><span><span class="hljs-comment">// ဒေတာထည့်ပါ SQL</span></span><span>
</span><span><span class="hljs-variable">$insert_sql</span></span><span> = </span><span><span class="hljs-string">"INSERT INTO users (username, email) VALUES (?, ?)"</span></span><span>;
</span><span><span class="hljs-variable">$stmt</span></span><span> = </span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">prepare</span></span><span>(</span><span><span class="hljs-variable">$insert_sql</span></span><span>);

</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-variable">$stmt</span></span><span>) {
    </span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"Preprocessing မအောင်မြင်ပါ: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;error);
}

</span><span><span class="hljs-comment">// parameters တွေကို bind နှင့်ထည့်သွင်းပါ</span></span><span>
</span><span><span class="hljs-variable">$username</span></span><span> = </span><span><span class="hljs-string">'john_doe'</span></span><span>;
</span><span><span class="hljs-variable">$email</span></span><span> = </span><span><span class="hljs-string">'[email protected]'</span></span><span>;
</span><span><span class="hljs-variable">$stmt</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">bind_param</span></span><span>(</span><span><span class="hljs-string">"ss"</span></span><span>, </span><span><span class="hljs-variable">$username</span></span><span>, </span><span><span class="hljs-variable">$email</span></span><span>);
</span><span><span class="hljs-variable">$stmt</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">execute</span></span><span>();

</span><span><span class="hljs-comment">// ထည့်သွင်းပါ ID</span></span><span>
</span><span><span class="hljs-variable">$inserted_id</span></span><span> = </span><span><span class="hljs-variable">$stmt</span></span><span>-&gt;insert_id;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"အောင်မြင်စွာထည့်ပါ,ID အတွက်: "</span></span><span> . </span><span><span class="hljs-variable">$inserted_id</span></span><span> . </span><span><span class="hljs-string">"\n"</span></span><span>;

</span><span><span class="hljs-comment">// Insert ကြေညာချက်ကိုပိတ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$stmt</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">close</span></span><span>();

</span><span><span class="hljs-comment">// ထည့်သွင်းပါ ID စုံစမ်းမှုတစ်ခုလုပ်ဆောင်ပါ</span></span><span>
</span><span><span class="hljs-variable">$select_sql</span></span><span> = </span><span><span class="hljs-string">"SELECT * FROM users WHERE id = ?"</span></span><span>;
</span><span><span class="hljs-variable">$stmt</span></span><span> = </span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">prepare</span></span><span>(</span><span><span class="hljs-variable">$select_sql</span></span><span>);

</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-variable">$stmt</span></span><span>) {
    </span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"查询语句Preprocessing မအောင်မြင်ပါ: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;error);
}

</span><span><span class="hljs-variable">$stmt</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">bind_param</span></span><span>(</span><span><span class="hljs-string">"i"</span></span><span>, </span><span><span class="hljs-variable">$inserted_id</span></span><span>);
</span><span><span class="hljs-variable">$stmt</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">execute</span></span><span>();
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-variable">$stmt</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">get_result</span></span><span>();

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$row</span></span><span> = </span><span><span class="hljs-variable">$result</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">fetch_assoc</span></span><span>()) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ရလဒ်များ:\n"</span></span><span>;
    </span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$row</span></span><span>);
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"အဘယ်သူမျှမသက်ဆိုင်ရာစံချိန်ကိုတွေ့ရှိခဲ့ပါတယ်。\n"</span></span><span>;
}

</span><span><span class="hljs-comment">// အရင်းအမြစ်ကိုပိတ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$stmt</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">close</span></span><span>();
</span><span><span class="hljs-variable">$mysqli</span></span><span>-&gt;</span><span><span class="hljs-title function_ invoke__">close</span></span><span>();
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

3 ။ မှတ်စုဖို့အရာ

  1. သင်တူညီသောဒေတာဘေ့စ်ဆက်သွယ်မှုကိုအသုံးပြုနေသည်ကိုသေချာအောင်လုပ်ပါ Insert နှင့် Query သည်မတူညီသောဆက်သွယ်မှုကိုအသုံးပြုပါက Insert_id သည် ဖြည့်စွက်ထားသော ID ကိုမှန်ကန်စွာရောင်ပြန်ဟပ်လိမ့်မည်မဟုတ်ပါ။

  2. စားပွဲတင်တွင် auto_incrent fields တွင်ပါဝင်ရမည် ဒီလိုမှမဟုတ်ရင် insert_id သည် insert အောင်မြင်မှုအောင်မြင်လျှင်ပင်ခိုင်လုံသောတန်ဖိုးကိုပြန်ပို့လိမ့်မည်မဟုတ်ပါ။

  3. Insert_id သည် account object တစ်ခုမဟုတ်ပါ, $ stmt-> insert_id ရရန် ပြင်ဆင် ပြီးနောက် $ stmt ကို သုံးပါ။ ဒီလို mysqli-> Insert_id ကို သုံးသင့်တယ်။

IV ။ လျှောက်လွှာဇာတ်လမ်းတစ်ပုဒ်

  • Orders, အသုံးပြုသူများ, ဆောင်းပါးများစသည်တို့ကိုထည့်သွင်းရန်အမိန့်များ, အသုံးပြုသူများ, ဆောင်းပါးများစသည်တို့ကိုထည့်သွင်းရန်အမိန့်များထည့်သွင်းပြီးနောက်အဓိက Key ID ကိုရယူပါ။

  • အသုံးပြုသူသည်အချက်အလက်များကိုတင်ပြပြီးနောက်အလိုအလျောက်ခုန်ခြင်းသို့မဟုတ်တုံ့ပြန်ချက်စစ်ဆင်ရေးများကိုအကောင်အထည်ဖော်ပါ။

  • စစ်ဆင်ရေးရလဒ်များကိုမှတ်တမ်းတင်ခြင်းသို့မဟုတ်စာရင်းစစ်စနစ်ဖြင့်မှတ်တမ်းတင်ရန်ထူးခြားသောအမှတ်အသား။

5 ။ အကျဉ်းချုပ်

MySQLI_STMT :: $ insert_id မှတဆင့်နောက်ဆုံးဖြည့်စွက်ထားသောစံချိန် ID ကိုအလွယ်တကူရယူနိုင်ပါသည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဤနည်းလမ်းသည်အချက်အလက်များ၏တိကျမှန်ကန်မှုနှင့်ကိုက်ညီမှုရှိစေရန်အထောက်အကူပြုသည်။

  • သက်ဆိုင်သောတက်(ဂ်)များ:

    mysqli_stmt