загрузить карту при отправке, используя ajax без ссылки sh на странице - PullRequest
0 голосов
/ 28 января 2020

Я использую laravel 6.0, и я интегрировал карту Google с помощью API. Теперь я хочу загрузить карту при отправке, используя ajax без ссылки sh. Так что мне нужно знать, как это сделать?

здесь маршрут m используется для формы и просмотра пользователем для загрузки карты Маршрут

Route::get('/map','MapController@index');
Route::view('/form','userview');
Route::post('/userview','MapController@getUserByLatLong');

в просмотре пользователя у меня есть 3 входа 1: широта 2: долгота 3: расстояние userview. blade. php

<!-- Stored in resources/views-->

<html>
    <head>
        <title>App Name - @yield('title')</title>
    </head>
    <body>
        <form method="POST" action="{{ action('MapController@getUserByLatLong') }}">
        @csrf
        <lable>Latitude</lable>
        <input type="text" name="latitude" /><br>
        <lable>Longitude</lable>
        <input type="text" name="longitude" /><br>
        <lable>Distance</lable>
        <input type="text" name="distance" /><br>
        <input type="submit" id="button" /><br>
        </form>
    </body>
</html>

я отображаю контроллер Я получаю данные под расстоянием, на которое пользователь отправляет данные Mapcontroller. php

<?php

namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Mapper;
use DB;
use app\users;
class MapController extends Controller
{
    public function getUserByLatLong(Request $request)
    {
        $this->validate($request, [
            'latitude' => 'required',
            'longitude' => 'required',
            'distance' => 'required',
        ]);
        $latitude = $request->input('latitude');
        $longitude = $request->input('longitude');
        $distance = $request->input('distance');
        $users = DB::table('users')
        ->select(DB::raw('id,name,phone,latitude,longitude, SQRT(POW(69.1 * (latitude - '.$latitude.'), 2) + POW(69.1 * ('.$longitude.'-longitude) * COS(latitude / 57.3), 2)) AS distance'))
        ->havingRaw('distance <'.$distance)
        ->OrderBy('distance')
        ->get();

        if($users == true)
        {
            Mapper::map(24.900224, 67.099992);
            Mapper::marker(53.381128999999990000, -1.470085000000040000, ['draggable' => true]);
                foreach($users as $value)
                {
                Mapper::marker($value->latitude, $value->longitude, ['symbol' => 'circle', 'scale' => 1000]);   
                }
        }
        return view('userview');
    }
}

здесь вид карты index.blade. php

<html>
    <head>
        <title>map - @yield('map')</title>

    </head>
    <body>

    <div id="content" style="width: 100%; height: 100%;">
    {!! Mapper::render() !!}
    </div>
    <script type="text/javascript" src="//maps.googleapis.com/maps/api/js?key=AIzaSyCmZ58VoQ8zlXxR8Ca2Iz2QCwXdm3pcT-w"></script>
    </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...