فرزاد هاشمی
2 سال پیش توسط فرزاد هاشمی مطرح شد
2 پاسخ

راهنمایی در مورد اتصال به درگاه و آپدیت اطلاعات دیتابیس بر اساس تراکنش

با سلام و عرض ادب
بنده میخام یک فرم بسازم و پس از پر کردن فرم کاربر به درگاه پرداخت هدایت بشه و برگرده و نتیجه پرداخت ( وضعیت - شماره پیگیری پرداخت - ساعت و تاریخ ) در همون ورودی آپدیت بشه
درگاه پرداخت اطلاعات رو در قالب POST برمیگردونه
اگر امکانش هست مراحلش رو بفرمایید که چطوری باید انجام بدم


ثبت پرسش جدید
امین
تخصص : برنامه‌نویس php
@aminakbari 12 ماه پیش مطرح شد
1

سلام فرزاد جان اگه بتونی این کار رو انجام بدی اوکیه.
مرحله اول: باید اون صفحه php خودت رو به دیتابیست متصل کنی با استفاده از کد زیر

function c_config(){
    $servername = "localhost";
    $username = "نام کاربر که متصل به دیتابیست هست وارد کن";
    $password = "رمز کاربر رو وارد کن";
    $dbname = "نام دیتابیست رو وارد کن";
    $conn = new mysqli($servername, $username, $password,$dbname);
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
    mysqli_set_charset($conn,"utf8");
    return $conn;
}

حالا در مرحله دوم بیا و یک فانکشن به صورت زیر درست کن که بگرده ببینه آیا همچین پرداختی قبلا صورت گرفته یا نه؟ اگه نگرفته بسازه
حالا شاید بگی خوب چرا بگرده چون شاید قبلا ناموفق بوده ولی الان مجدد میخواد پرداخت کنه پس
مرحله دوم: ساخت فانکشن اضافه کردن مقادیر و گشتن اینکه آیا همچین پرداختی قبلا صورت گرفته یا نه؟

function pay($code , $time , $status){
    $conn = c_config();
    $sql = "SELECT * FROM tbl_pay  WHERE p_code ='".$code."'";
    $result = $conn->query($sql);
    if(!empty($result->num_rows) && ($result->num_rows > 0)) {
        $sql = "UPDATE tbl_pay SET 'status'='".$status."' , 'time'='".$time."'  WHERE 'code'='".$code."'";
        if ($conn->query($sql) === TRUE) {
            return 'ok';
        }else{
            return 'err in update !';
        }
    }else{
        $sql = "INSERT INTO c_user ('code', 'time', 'status') VALUES ( '". $code ."' , '".$time."' , '".$status."' )";
        if ($conn->query($sql) === TRUE) {
          return 'ok';
        } else {
          return 'err in insert !';
        }
    }
}

مرحله سوم: درخواست دستور

pay($_POST['code'],$_POST['time'],$_POST['status']);

این از بخش ثبت در پایگاه داده اما
برای بخش فرم و ارسال به درگاه لطفا بفرمایید از چه درگاه پرداختی استفاده میکنین تا بیشتر راهنماییتون کنم
با تشکر امین


میکائیل
تخصص : برنامه نویسی سمت سرور و کلاینت
@FullStack 12 ماه پیش مطرح شد
0

سلام وقت بخیر
اول بفرمایید از کدوم درگاه استفاده میکنید و اینکه از پکیج خاصی استفاده میکنید مثل shetabit اطلاعات تکمیل تری بده تا راهنماییت کنم


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام