Есть ли лучший способ проверить, нажал ли пользователь ссылку из папки входящих сообщений (Laravel url $ param to controller) - PullRequest
0 голосов
/ 26 ноября 2018

Я хочу знать, нажал ли мой клиент ссылку, отправленную на его электронную почту.

Итак, я сделал это:

Мой маршрут:

Route::get('/audit/{email}/{from?}', 'ProspectPageController@show');

Этот маршрутделает эту ссылку: mysite.com/audit/jhon@mail.com/inbox

Я отправлю эту ссылку на электронную почту Проспекта, и если он нажмет на нее, моя колонка обновится.

Мой контроллер:

public function show($email, $stats = null)
{
     if($stats == 'inbox'){
        $prospected= Prospect::where('email', $email)->first();
        $prospected->stats = '1';
        $prospected->save();
     }
    $prospect= Prospect::where('email', $email)->first();
    return view('prospect.show')->with('prospect', $prospect);

}

Не думаю, что это хороший способ сделать это, есть ли лучший способ сделать это?

Могу ли я улучшитьэта функция?

1 Ответ

0 голосов
/ 26 ноября 2018

Сначала сгенерируйте уникальный токен для каждого письма и сохраните в таблице, затем отправьте ссылку с токеном:

Пример

token is : 123-456-789

ссылка

mysite.com/audit?token=123-456-789

В контроллере вы можете проверить с токеном, вы также можете проверить с пользователем, если в таблице вы храните токен и идентификатор пользователя.мой английский не очень хорошНадеюсь, вы ответите ниже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...