Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Приветствую!
Ломаю голову над некоторой проблемой, помогите, если сможете
Мой роут:
Route::group(['middleware' => ['web']], function () {
Route::get('/getEAN13', 'CoreController@getEan13Code');
});
Мой метод getEan13Code:
public function getEan13Code() {
$lastSkipCode = Skipcode::orderBy('id', 'DESC')->first();
$newSkipCode = '';
$newSkipCode = (count($lastSkipCode) == '')? $this->startSkipCode : $lastSkipCode['dec_number'] + 256;
$currentDate = date('Y-m-d H:i:s');
$hexNumber = $this->fromDecToHex($newSkipCode);
$sc = new Skipcode;
$sc->dec_number = $newSkipCode;
$sc->hix_number = $hexNumber;
$sc->created_at = $currentDate;
$sc->updated_at = $currentDate;
$sc->save();
$controlSum = '|4';
return view('pages.result')->with(['x' => $controlSum]);
}
После обращения по адресу http://site.tu/getEan13Code в базу данных заносится почему-то 3 значения
Я голову сломал уже, не могу понять в чем дело. Если у модели Skipcode глянуть конструктор, он тоже вызывается три раза. В чем может быть причина??? Значения заносятся именно с разницей в 256 (это число я прибавляю)
Если сделать значение $newSkipCode статическим (т.е. не прибавлять к нему ничего, а просто назначить один раз значение) в таблицу заносится одно значение.
Спасите пожалуйста
Благодарю за ответы
Не в сети
1. что за тип поля в бд?
2. стринг+стринг+стринг=стринг, не? если таки "не", то сделай dd(gettype($newSkipCode)) и убедись, что стринг.
3. ты серьёзно?!
(count($lastSkipCode) == '')
Не в сети
1. что за тип поля в бд?
Тип varchar
2. стринг+стринг+стринг=стринг, не? если таки "не", то сделай dd(gettype($newSkipCode)) и убедись, что стринг.
Проверил, все стринг
3. ты серьёзно?!
Это невнимательность и это никак не влияет на повторную вставку данных и вызов модели несколько раз
Еще маленькая деталь. Когда просматриваешь вкладку Queries у дебагера отображается так же, что выполнялся только 2 запроса: 1. запрос на получение последнего Skipcode и 2. вставка нового Skipcode только с одной строкой
Изменено Himu (30.05.2016 21:11:31)
Не в сети
Вопрос решился достаточно просто: на firefox'е стояли плагины, которые выполняли свои собственные запросы к странице
Не в сети
Страницы 1