首页 > 解决方案 > 我想使用 eloquent 将值存储到我的变量中

问题描述

我想检查推荐模型的价值,当价值与我的输入匹配时,我必须支付 350 卢比,否则我必须支付 375 卢比。但即使我输入了无效代码,我也会每次都重定向到支付 350

我试过这个逻辑,但没有奏效

use App\Theme_User;
use App\Theme;
use App\activity_users;
use Illuminate\Http\Request;
use App\User;
use App\Referal;
use Illuminate\Support\Facades\Auth;
public function pay(Request $request){

        $api = new \Instamojo\Instamojo(
               config('services.instamojo.api_key'),
               config('services.instamojo.auth_token'),
               config('services.instamojo.url')
        );
        $referral = $request->input('refer');
        $valid_referral = Referal::select('referal_code')->where('referal_code', $referral)->get();
        Theme_User::where('Payment_id', '=', 'Dummy')->delete();

        $sale_rel = new Theme_User;
        $sale_rel->User_id = Auth::user()->id;
        if($request->input('purpose') === "Gratitude Theme")
            $sale_rel->Theme_id = 1;
        $sale_rel->Payment_id = "Dummy"; //$response['payments'][0]['payment_id'];
        $sale_rel->Address = $request->input('address');
        $sale_rel->Unlock_key = \Uuid::generate()->string;
        $sale_rel->referal_id = $referral;
        $sale_rel->Unlocked = 0;
        $sale_rel->save();
    if($referral == $valid_referral){
       try {
           $response = $api->paymentRequestCreate(array(
                    "purpose" => $request->input('purpose'),
                    "amount" =>  350,
                    "buyer_name" => Auth::user()->name,
                    "send_email" => true,
                    "email" => Auth::user()->email,
                    "redirect_url" => "http://127.0.0.1:8000/pay-success"
            ));

            header('Location: ' . $response['longurl']);
            exit();
        }catch (Exception $e) {
            print('Error: ' . $e->getMessage());
        }
    }
    else{
        try {
            $response = $api->paymentRequestCreate(array(
                     "purpose" => $request->input('purpose'),
                     "amount" =>  375,
                     "buyer_name" => Auth::user()->name,
                     "send_email" => true,
                     "email" => Auth::user()->email,
                     "redirect_url" => "http://127.0.0.1:8000/pay-success"
             ));

             header('Location: ' . $response['longurl']);
             exit();
         }catch (Exception $e) {
             print('Error: ' . $e->getMessage());
         }
    }


}

当我有有效的推荐代码时,我想支付 350 卢比,否则我必须支付 375

标签: laravel

解决方案


尝试一下。

use App\Theme_User;
use App\Theme;
use App\activity_users;
use Illuminate\Http\Request;
use App\User;
use App\Referal;
use Illuminate\Support\Facades\Auth;
public function pay(Request $request){

        $api = new \Instamojo\Instamojo(
               config('services.instamojo.api_key'),
               config('services.instamojo.auth_token'),
               config('services.instamojo.url')
        );


        Theme_User::where('Payment_id', '=', 'Dummy')->delete();

        $sale_rel = new Theme_User;
        $sale_rel->User_id = Auth::user()->id;
        if($request->input('purpose') === "Gratitude Theme")
            $sale_rel->Theme_id = 1;
        $sale_rel->Payment_id = "Dummy"; //$response['payments'][0]['payment_id'];
        $sale_rel->Address = $request->input('address');
        $sale_rel->Unlock_key = \Uuid::generate()->string;
        $sale_rel->referal_id = $referral;
        $sale_rel->Unlocked = 0;
        $sale_rel->save();



    $amount = 375;
    $valid_referral = Referal::select('referal_code')->where('referal_code', $request->input('refer'))->first();
    if(!empty($valid_referral)){
        $amount = 350;
    }

    try {
            $response = $api->paymentRequestCreate(array(
                     "purpose" => $request->input('purpose'),
                     "amount" =>  $amount,
                     "buyer_name" => Auth::user()->name,
                     "send_email" => true,
                     "email" => Auth::user()->email,
                     "redirect_url" => "http://127.0.0.1:8000/pay-success"
             ));

             header('Location: ' . $response['longurl']);
             exit();
         }catch (Exception $e) {
             print('Error: ' . $e->getMessage());
         }


}

推荐阅读