 Laravel по-русски
Laravel по-русски
      
      
    Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Метод с длинным, но однозначным названием abortRequestIfAnotherOneWithSameIdExistsInDatabase() должен прервать выполнение скрипта, если в БД будет зайдена запись с таким же ID визита сайта (то есть два запроса подряд за один визит сайта не позволено). return redirect() к прерыванию не приводит, и все методы после abortRequestIfAnotherOneWithSameIdExistsInDatabase() выполняются, чего быть не должно. Естественно, я не могу вставить exit; после return, так как всё, что после return, не будет выполнено.
Что можно сделать в качестве альтернативы?
<?php
    public function submitConsultationRequest(){
        $this -> abortRequestIfAnotherOneWithSameIdExistsInDatabase();
        // другие методы
    }
    private function abortRequestIfAnotherOneWithSameIdExistsInDatabase(){
        $queryResult = DB::table('requests') ->
            where( 'visitId' => request() -> session() -> get('visitId'),
        ]) -> first();
        if (!is_null($queryResult)) {
            return redirect() -> route('top');
        }
    }
Изменено Gleb2708 (04.02.2018 04:50:50)
Не в сети
Не в сети
Не в сети
должен прервать выполнение скрипта, если в БД будет зайдена запись с таким же ID визита сайта
Не в сети