Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
发送请求时出错。请再试一次laravel_Laravel_Dictionary - Fatal编程技术网

发送请求时出错。请再试一次laravel

发送请求时出错。请再试一次laravel,laravel,dictionary,Laravel,Dictionary,我很难让我的Laravel项目正常工作 无法使距离计算正常工作,同时请求按钮给出发送请求时出错的错误信息。请再试一次。 有什么问题吗 提前谢谢 这是我的密码 公共功能发送请求(请求$request){ $this->validate($request[ 's_latitude'=>'必需|数字', “d_纬度”=>“必需”|数字”, “s_经度”=>“必需”|数字”, “d_经度”=>“必需”|数字”, “服务类型”=>“必需”|数字|存在:服务类型,id', '促销代码'=>'存在:促销代码

我很难让我的Laravel项目正常工作 无法使距离计算正常工作,同时请求按钮给出发送请求时出错的错误信息。请再试一次。 有什么问题吗

提前谢谢

这是我的密码

公共功能发送请求(请求$request){

$this->validate($request[
's_latitude'=>'必需|数字',
“d_纬度”=>“必需”|数字”,
“s_经度”=>“必需”|数字”,
“d_经度”=>“必需”|数字”,
“服务类型”=>“必需”|数字|存在:服务类型,id',
'促销代码'=>'存在:促销代码,促销代码',
“距离”=>“必需|数字”,
“使用钱包”=>“数字”,
“付款方式”=>“必需”|输入:现金、卡、贝宝”,
'card_id'=>['required_if:payment_mode,card','exists:cards,card_id,user_id',.Auth::user()->id],
]);
Log::info('来自用户的新请求:'.Auth::User()->id);
日志::信息('Request Details:',$Request->all());
$ActiveRequests=UserRequests::PendingRequest(Auth::user()->id)->count();
如果($ActiveRequests>0){
如果($request->ajax()){
return response()->json(['error'=>trans('api.ride.request_inprogress')),500);
}否则{
return redirect('dashboard')->带有('flash_error','ready request in progress.稍后再试');
}
}
如果($request->has('schedule\u date')&&$request->has('schedule\u time')){
$beforeschedule\u time=(新碳(“$request->schedule\u date$request->schedule\u time”)->subHour(1);
$afterschedule\u time=(新碳(“$request->schedule\u date$request->schedule\u time”)->addHour(1);
$CheckScheduling=UserRequests::where('status','SCHEDULED')
->其中('user_id',Auth::user()->id)
->两者之间('schedule_at',[$before schedule_time,$after schedule_time])
->计数();
如果($CheckScheduling>0){
如果($request->ajax()){
return response()->json(['error'=>trans('api.ride.request_scheduled')),500);
}否则{
return redirect('dashboard')->带有('flash_error','ready request Scheduled on this time');
}
}
}
$distance=设置::get('provider\u search\u radius','10');
$latitude=$request->s\u latitude;
$longitude=$request->s_经度;
$service\u type=$request->service\u type;
$Providers=Provider::with('service')
->选择(DB::Raw(((6371*acos(弧度('$latitude'))*cos(弧度(纬度))*cos(弧度(经度)-弧度('$latitude'))+sin(弧度('$latitude')))*sin(弧度(纬度))作为距离”),'id'))
->其中(‘状态’、‘已批准’)
->其中,((6371*acos(弧度('$latitude'))*cos(弧度('$latitude'))*cos(弧度(经度)-弧度('$latitude'))+sin(弧度('$latitude'))*sin(弧度(latitude)))计划日期$请求->计划时间);
}
$UserRequest->save();
日志::信息('New Request id:'.$UserRequest->id.'Assigned to provider:'.$UserRequest->current_provider_id.);
//更新付款方式
用户::其中('id',Auth::User()->id)->更新(['payment_mode'=>$request->payment_mode]);
如果($request->has('card_id')){
卡片::其中('user_id',Auth::user()->id)->更新(['is_default'=>0]);
卡片::其中('Card_id',$request->Card_id)->更新(['is_default'=>1]);
}
(新SendPushNotification)->IncomingRequest($Providers[0]->id);
foreach($key=>$Provider的提供程序){
$Filter=新请求过滤器;
//向第一个提供程序发送推送通知
//传入请求推送到提供程序
$Filter->request\u id=$UserRequest->id;
$Filter->provider\u id=$provider->id;
$Filter->save();
}
如果($request->ajax()){
返回响应()->json([
'消息'=>'已创建新请求!',
'request_id'=>$UserRequest->id,
“当前\u提供者”=>$UserRequest->当前\u提供者\u id,
]);
}否则{
返回重定向(“仪表板”);
}
}捕获(例外$e){
如果($request->ajax()){
return response()->json(['error'=>trans('api.something\u出错')),500);
}否则{
return back()->带有('flash_error','发送请求时出错。请重试');
}
}
}

您应该安装Xdebug来逐行调试应用程序。我们只知道try{}块中的某个地方发生了错误。如果您将catch(){}块中的响应消息设置为$e->getMessage(),则对于错误和flash_错误也会有所帮助。免责声明:仅用于开发目的。但当然,您需要检查如何安装Xdebug并使用它进行更好的开发和调试。查看控制台中的errorDevTools未能加载SourceMap:无法加载以下内容:HTTP错误:状态代码404,net::ERR_HTTP_RESPONSE_代码_FAILURE@Adeola尝试禁用所有验证。。然后逐个打开验证。您应该安装Xdebug来逐行调试应用程序。我们只知道try{}块中的某个地方发生了错误。如果将catch(){}块中的响应消息设置为$e->getMessage(),则会有助于错误和闪存错误。免责声明:仅用于开发目的。但当然,您需要检查如何安装X
        $this->validate($request, [



                's_latitude' => 'required|numeric',



                'd_latitude' => 'required|numeric',



                's_longitude' => 'required|numeric',



                'd_longitude' => 'required|numeric',



                'service_type' => 'required|numeric|exists:service_types,id',



                'promo_code' => 'exists:promocodes,promo_code',



                'distance' => 'required|numeric',



                'use_wallet' => 'numeric',



                'payment_mode' => 'required|in:CASH,CARD,PAYPAL',



                'card_id' => ['required_if:payment_mode,CARD','exists:cards,card_id,user_id,'.Auth::user()->id],



            ]);







        Log::info('New Request from User: '.Auth::user()->id);



        Log::info('Request Details:', $request->all());







        $ActiveRequests = UserRequests::PendingRequest(Auth::user()->id)->count();







        if($ActiveRequests > 0) {



            if($request->ajax()) {



                return response()->json(['error' => trans('api.ride.request_inprogress')], 500);



            } else {



                return redirect('dashboard')->with('flash_error', 'Already request is in progress. Try again later');



            }



        }







        if($request->has('schedule_date') && $request->has('schedule_time')){



            $beforeschedule_time = (new Carbon("$request->schedule_date $request->schedule_time"))->subHour(1);



            $afterschedule_time = (new Carbon("$request->schedule_date $request->schedule_time"))->addHour(1);







            $CheckScheduling = UserRequests::where('status','SCHEDULED')



                            ->where('user_id', Auth::user()->id)



                            ->whereBetween('schedule_at',[$beforeschedule_time,$afterschedule_time])



                            ->count();











            if($CheckScheduling > 0){



                if($request->ajax()) {



                    return response()->json(['error' => trans('api.ride.request_scheduled')], 500);



                }else{



                    return redirect('dashboard')->with('flash_error', 'Already request is Scheduled on this time.');



                }



            }







        }







        $distance = Setting::get('provider_search_radius', '10');



        $latitude = $request->s_latitude;



        $longitude = $request->s_longitude;



        $service_type = $request->service_type;







        $Providers = Provider::with('service')



            ->select(DB::Raw("(6371 * acos( cos( radians('$latitude') ) * cos( radians(latitude) ) * cos( radians(longitude) - radians('$longitude') ) + sin( radians('$latitude') ) * sin( radians(latitude) ) ) ) AS distance"),'id')



            ->where('status', 'approved')



            ->whereRaw("(6371 * acos( cos( radians('$latitude') ) * cos( radians(latitude) ) * cos( radians(longitude) - radians('$longitude') ) + sin( radians('$latitude') ) * sin( radians(latitude) ) ) ) <= $distance")



            ->whereHas('service', function($query) use ($service_type){



                        $query->where('status','active');



                        $query->where('service_type_id',$service_type);



                    })



            ->orderBy('distance')



            ->get();







        // List Providers who are currently busy and add them to the filter list.







        if(count($Providers) == 0) {



            if($request->ajax()) {



                // Push Notification to User



                return response()->json(['message' => trans('api.ride.no_providers_found')]); 



            }else{



                return back()->with('flash_success', 'No Providers Found! Please try again.');



            }



        }







        try{







            $details = "https://maps.googleapis.com/maps/api/directions/json?origin=".$request->s_latitude.",".$request->s_longitude."&destination=".$request->d_latitude.",".$request->d_longitude."&mode=driving&key=".Setting::get('map_key');







            $json = curl($details);







            $details = json_decode($json, TRUE);







            $route_key = $details['routes'][0]['overview_polyline']['points'];







            $UserRequest = new UserRequests;



            $UserRequest->booking_id = Helper::generate_booking_id();



            $UserRequest->user_id = Auth::user()->id;



            $UserRequest->current_provider_id = $Providers[0]->id;



            $UserRequest->service_type_id = $request->service_type;



            $UserRequest->payment_mode = $request->payment_mode;







            $UserRequest->status = 'SEARCHING';







            $UserRequest->s_address = $request->s_address ? : "";



            $UserRequest->d_address = $request->d_address ? : "";







            $UserRequest->s_latitude = $request->s_latitude;



            $UserRequest->s_longitude = $request->s_longitude;







            $UserRequest->d_latitude = $request->d_latitude;



            $UserRequest->d_longitude = $request->d_longitude;



            $UserRequest->distance = $request->distance;







            if(Auth::user()->wallet_balance > 0){



                $UserRequest->use_wallet = $request->use_wallet ? : 0;



            }







            $UserRequest->assigned_at = Carbon::now();



            $UserRequest->route_key = $route_key;







            if($Providers->count() <= Setting::get('surge_trigger') && $Providers->count() > 0){



                $UserRequest->surge = 1;



            }







            if($request->has('schedule_date') && $request->has('schedule_time')){



                $UserRequest->schedule_at = date("Y-m-d H:i:s",strtotime("$request->schedule_date $request->schedule_time"));



            }







            $UserRequest->save();







            Log::info('New Request id : '. $UserRequest->id .' Assigned to provider : '. $UserRequest->current_provider_id);











            // update payment mode 







            User::where('id',Auth::user()->id)->update(['payment_mode' => $request->payment_mode]);







            if($request->has('card_id')){







                Card::where('user_id',Auth::user()->id)->update(['is_default' => 0]);



                Card::where('card_id',$request->card_id)->update(['is_default' => 1]);



            }







            (new SendPushNotification)->IncomingRequest($Providers[0]->id);







            foreach ($Providers as $key => $Provider) {







                $Filter = new RequestFilter;



                // Send push notifications to the first provider



                // incoming request push to provider



                $Filter->request_id = $UserRequest->id;



                $Filter->provider_id = $Provider->id; 



                $Filter->save();



            }







            if($request->ajax()) {



                return response()->json([



                        'message' => 'New request Created!',



                        'request_id' => $UserRequest->id,



                        'current_provider' => $UserRequest->current_provider_id,



                    ]);



            }else{



                return redirect('dashboard');



            }







        } catch (Exception $e) {



            if($request->ajax()) {



                return response()->json(['error' => trans('api.something_went_wrong')], 500);



            }else{



                return back()->with('flash_error', 'Something went wrong while sending request. Please try again.');



            }



        }



    }