How to store existing data in database by using a session

Step 1: Get data from the blade Page and data send to the Store function.

Step 2: In the Controller, Create a store function { store() name as per your choice }.

public function pay(Request $request)
    {
        try {
            Log::info("pay success m kya aa rha h" . $request);

            $response = $this->gateway->purchase(array(
                'amount' => $request->amount,
                'org_slug' => $request->org_slug,
                'admin_email' => $request->admin_email,
                'user_name' => $request->user_name,
                'admin_id' => $request->admin_id,
                'slug' => $request->slug,
                'currency' => env('PAYPAL_CURRENCY'),
                'returnUrl' => url('success'),
                'cancelUrl' => url('error')
            ))->send();

            if ($response->isRedirect()) {
                $response->redirect();
                $request->session()->put('admin_id', $request->admin_id); 
                $request->session()->put('org_slug', $request->org_slug); 
                $request->session()->put('admin_email', $request->admin_email); 
                $request->session()->put('user_name', $request->user_name); 
                $request->session()->put('slug', $request->slug); 
            } else {
                return $response->getMessage();
            }
        } catch (\Throwable $th) {
            return $th->getMessage();
        }
    }

    public function success(Request $request)

    {

        Log::info("paypal success m kya aa rha h" . $request);
        if ($request->input('paymentId') && $request->input('PayerID')) {

            Log::info("paypal request m kya aa rha h" . $request);
            $transaction = $this->gateway->completePurchase(
                array(
                    'payer_id' => $request->input('PayerID'),
                    'admin_id' => $request->input('admin_id'),
                    'user_name' => $request->input('user_name'),
                    'slug' => $request->input('slug'),
                    'admin_email' => $request->input('admin_email'),
                    'org_slug' => $request->input('org_slug'),
                    'transactionReference' => $request->input('paymentId'),
                )
            );


            $response = $transaction->send();
           


            if ($response->isSuccessful()) {

                Log::info("response paypal success m kya aa rha h");

                $arr = $response->getData();

                $payment = new paypal();
                $payment->payment_id = $arr['id'];
                $payment->payer_id = $arr['payer']['payer_info']['payer_id'];
                $payment->payer_email = $arr['payer']['payer_info']['email'];
                $payment->amount = $arr['transactions'][0]['amount']['total'];
                $payment->currency = env('PAYPAL_CURRENCY');
                $payment->payment_status = $arr['state'];
                $payment->admin_id = $request->session()->get('admin_id');
                $payment->user_name = $request->session()->get('user_name');
                $payment->slug = $request->session()->get('slug');
                $payment->admin_email = $request->session()->get('admin_email');
                $payment->org_slug = $request->session()->get('org_slug');
                $payment->save();
                // Store the admin_id in the session
                // $request->session()->put('admin_id', $request->input('admin_id'));
                // return "Payment is Successfull. Your Transaction Id is : " . $arr['id'];
                return back()->with("success", "Payment is Successfull. Your Transaction Id is : " . $arr['id']);
            } else {
                return $response->getMessage();
            }
        } else {
            return back()->with("danger", "Payment declined!!");
        }
    }

Related Posts

Stop Data Breakdowns Using Simple IT Operations Habits

Your morning coffee is still warm when the Slack alerts start to ping. The sales dashboard shows zero revenue for the past six hours. Your analytics team…

Read More

Renting a Bike, Scooter, or Car in Japan: A Rider’s Honest Guide to Roads, Rules, and Fleet Tools

Introduction Ask any rider about Japan, and their eyes light up. The roads feel almost unfair. Smooth surfaces. Sharp markings. Drivers who actually follow the rules. Add…

Read More

How Long Does Pilot Training Take? Real Timelines for Every License

Introduction Most people who dream of flying never start. Not because they lack talent. Not because they lack passion. They simply never find a clear answer to…

Read More

Free Blogging Platform Guide: Create a Blog for Free, Publish Articles Online, and Join a Writing Community

Introduction You have ideas worth sharing. Maybe you want to write about technology. Maybe you want to document your travels. Or maybe your business needs a place…

Read More

Offer Letter Management Software: How to Speed Up Candidate Acceptance

Hiring a talented person feels great. The interview went well, and the team said yes to you. Everyone smiles and waits for day one. But then the…

Read More

How TheDataOps Explains Predictive Maintenance in Pipelines

Your data pipelines break down at the worst possible time. You wake up to angry texts from your team because morning reports are blank. You spend hours…

Read More