လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> ငွေပေးချေမှုအပြောင်းအလဲနဲ့နေစဉ်အတွင်းပျက်ကွက်အမှတ်ဆုံးဖြတ်ရန် $ errno ကိုအသုံးပြုနည်း

ငွေပေးချေမှုအပြောင်းအလဲနဲ့နေစဉ်အတွင်းပျက်ကွက်အမှတ်ဆုံးဖြတ်ရန် $ errno ကိုအသုံးပြုနည်း

M66 2025-05-29

PHP ပရိုဂရမ်တွင် MySQLI ကို အသုံးပြု. ဒေတာဘေ့စ်အရောင်းအ 0 ယ်ပြုလုပ်ရန်အတွက်အသုံးပြုသောငွေပေးချေမှုတိုင်းတွင်စစ်ဆင်ရေးတိုင်းကိုချောချောမွေ့မွေ့ပြုလုပ်ရန်သေချာစေရန်လိုအပ်သည်။ အကယ်. ဤအဆင့်များမအောင်မြင်ပါကမည်သည့်လင့်ခ်သည်မည်သည့်လင့်ခ်ကိုမျှမမှန်ကန်ကြောင်းကျွန်ုပ်တို့အတိအကျဆုံးဖြတ်နိုင်သင့်သည်။ MySQLI :: $ errno property ကငွေသွင်းငွေလွှဲမှုပျက်ကွက်မှုအကြောင်းအရင်းကိုရှာဖွေရန်ကူညီနိုင်သည်။ ဤဆောင်းပါးသည် MySQLI :: $ errno မှတစ်ဆင့်ဒေတာဘေ့စ်၏အနေဖြင့်မည်သည့်အဆင့်တွင်မည်သည့်အဆင့်တွင်မအောင်မြင်ပါ။

MySQLI :: $ errno ဆိုတာဘာလဲ။

MySQLI တွင် MySQLI :: $ errno သည် နောက်ဆုံးပေါ်စစ်ဆင်ရေးအတွက်အမှားကုဒ်ကိုကိုယ်စားပြုသောပစ္စည်းတစ်ခုဖြစ်သည်။ ဤပိုင်ဆိုင်မှုမှတစ်ဆင့်မှားယွင်းသောဂဏန်းကုဒ်ကိုမှားယွင်းစွာလုပ်ဆောင်သည်သို့မဟုတ်ပျက်ကွက်ခြင်းရှိမရှိဆုံးဖြတ်ရန်ရနိုင်သည်။ အကယ်. စစ်ဆင်ရေးမအောင်မြင်ပါက ERRNO သည် သက်ဆိုင်ရာအမှားကုဒ်ကိုပြန်ပို့လိမ့်မည်။

အရောင်းအ 0 ယ်တွင်ကျရှုံးမည့်အဆင့်များကိုဆုံးဖြတ်ရန် MySQLI :: $ errno ကို အသုံးပြုနည်း။

  1. ငွေပေးငွေယူတစ်ခုစတင်ပါ

    ငွေပေးငွေယူမစခင် MySQLI :: In ငွေပေးငွေယူတစ်ခုစတင်ရန် MySQLI :: စတင်ရန်လိုအပ်သည်။

     $mysqli = new mysqli("localhost", "user", "password", "database");
    
    if ($mysqli->connect_error) {
        die("ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error);
    }
    
    // ငွေပေးငွေယူတစ်ခုစတင်ပါ
    $mysqli->begin_transaction();
    
  2. အရောင်းအ 0 ယ်များတွင် SQL operations များကိုလုပ်ဆောင်ပါ

    ငွေပေးငွေယူတစ်ခုတွင်ကျွန်ုပ်တို့သည် SQL Queries မျိုးစုံကိုအကောင်အထည်ဖော်နိုင်သည်။ ခြေလှမ်းများမအောင်မြင်,

     // ပထမတစ်ခု execute SQL မေးမြန်း
    $result1 = $mysqli->query("UPDATE users SET balance = balance - 100 WHERE id = 1");
    
    // 检查第一个မေးမြန်း是否成功
    if ($mysqli->errno) {
        echo "အမှား:မေးမြန်း 1 ဆုံးရှုံး,အမှား代码:" . $mysqli->errno;
        $mysqli->rollback(); // ပြန်အရောင်းအလှိမ့်
        exit();
    }
    
    // ဒုတိယ execute SQL မေးမြန်း
    $result2 = $mysqli->query("UPDATE users SET balance = balance + 100 WHERE id = 2");
    
    // 检查第二个မေးမြန်း是否成功
    if ($mysqli->errno) {
        echo "အမှား:မေးမြန်း 2 ဆုံးရှုံး,အမှား代码:" . $mysqli->errno;
        $mysqli->rollback(); // ပြန်အရောင်းအလှိမ့်
        exit();
    }
    
    // 如果所有မေးမြန်း都成功,တင်သွင်းမှုတင်သွင်း
    $mysqli->commit();
    

    ဤဥပမာတွင်ကျွန်ုပ်တို့သည်မွမ်းမံမှုနှစ်ခုကိုလုပ်ဆောင်သည်။ ပထမ ဦး ဆုံးအသုံးပြုသူ 1 ၏ချိန်ခွင်လျှာကိုလျော့နည်းစေပြီးဒုတိယအနေဖြင့် user 2 ခု၏ချိန်ခွင်လျှာကိုတိုးပွားစေပါသည်

  3. MySQLI :: errno မှတစ်ဆင့်အမှားများကိုစစ်ဆေးပါ

    MySQLI :: errno ၏တန်ဖိုး :: SQL စစ်ဆင်ရေးတစ်ခုချင်းစီကိုလုပ်ဆောင်ပြီးနောက် $ errno ကို update လုပ်သည်။ အကယ်. စစ်ဆင်ရေးပျက်ကွက်ပါက MySQLI :: $ errno သည် သက်ဆိုင်ရာအမှားကုဒ်ကိုပြန်ပို့လိမ့်မည်။ ဥပမာအားဖြင့်, သင်သည် update ကိုစစ်ဆင်ရေးတစ်ခုပြုလုပ်ပါကအောက်ပါအမှားကုဒ်ပေါ်လာနိုင်သည်။

    • 1062 - ထပ်တူသော့ချက်အမှားကိုဖော်ပြသည်။

    • 1451 - နိုင်ငံခြားအဓိကကန့်သတ်ချက်အမှားကိုဖော်ပြသည်။

    အထက်ပါကုဒ်တွင် errno သည် တန်ဖိုးရှိသည်ရှိမရှိ ($ MySQLI-> ERRNO) ရှိမရှိ စစ်ဆေးသည်။ သို့ဆိုလျှင်၎င်းသည်ရှာဖွေမှုသည်မအောင်မြင်ဟုဆိုလိုသည်, MySQLI :: $ errno မှပေးသောအမှားကုဒ်အပေါ် အခြေခံ. ပြ problem နာကိုထပ်မံလေ့လာသုံးသပ်နိုင်သည်။

  4. အရောင်းအကိုင်တွယ်အတွက်အမှားများ

    ငွေပေးငွေယူတွင်စစ်ဆင်ရေးပျက်ကွက်ပါကငွေပေးငွေယူတစ်ခုလုံးကိုပြန်လှိမ့်ရန်လိုအပ်သည်။ Database သည်တသမတ်တည်းဖြစ်ကြောင်းသေချာစေရန် MySQLI :: ROLLBACK () rollack () ကိုသုံးပါ။ အထက်ပါကုဒ်ပါ 0 ်သည့်ဥပမာတွင် query တစ်ခုစီပျက်ကွက်သောအခါ Rollback () ကို ခေါ်ဆိုပါ။

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

အကျဉ်းချုပ်

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

ဤဆောင်းပါးသည် MySQLI :: PHP တွင် MySQLI :: PHP ရှိ MySQLI :: errno ကို အသုံးပြုရမည်ကိုပိုမိုနားလည်ရန်ကူညီပေးပါ။ သင်၏အမှန်တကယ် application တွင်ပြ problems နာများကြုံတွေ့ရပါက MySQL အမှားကုဒ်စားပွဲကိုရှာဖွေခြင်းအားဖြင့်ပြ the နာကိုထပ်မံလေ့လာသုံးသပ်နိုင်သည်။