Size: a a a

Laravel для начинающих

2020 January 29

И

Игорь in Laravel для начинающих
Егор Карась
Действительно, можно попросить Аллаха запомнить
Так сессии сами складываются - туда лишь положить надо товар(ы)
источник

И

Игорь in Laravel для начинающих
Мне нравится вариант - когда пишется один интерфейс Storage (добавить товар, удалить товар(ы), подсчитать стоимость всех товаров)

И разные хранилища, реализующие этот интерфейс -  DBStorage, SessionStorage - implements Storage

И просто, если пользователь не залогинен, то складывать в сессию, а как только залогинится, то смержить товары из БД, с товарами из сессии, а сессию почистить и работать уже только с БДStorage
источник

И

Игорь in Laravel для начинающих
Но вопрос куда луче сохранять товары - в куки или в сессии?
источник

И

Игорь in Laravel для начинающих
Вот в чем вопрос
источник

VY

Vladimir Yefremov in Laravel для начинающих
Игорь
Но вопрос куда луче сохранять товары - в куки или в сессии?
в куки - с долгим периодом хранения, сессия ведь и так существует, пока юзер на сайте;
а когда он придет в следующий раз - ты ему "оп!" напоминание - "ты выбирал эти товары, хочешь их купить сейчас?"
источник

И

Игорь in Laravel для начинающих
Vladimir Yefremov
есть такой эффект-дефект:
для фильтра на странице есть элемент
<select name="status" id="status">
   <option value="">All</option>
       @foreach($statuses as $key => $value)
           <option value="{{ $key }}" {{ (!empty($key)) && $key == request()->input('status') ? 'selected' : '' }}>
              {{ $value }} </option>
       @endforeach
</select>

ключи в массиве - целые числа: 0,1,-1 - взяты из БД,

когда страница загружается - все ОК,
когда выбираю в селекте любой элемент, кроме 1-го - все ОК, при перезагрузке страницы параметры попадают в ГЕТ, можно делиться ссылкой, все по ТЗ;

если же выбрать 1-й элемент списка, у которого ключ равен = 0 , то при перезагрузке страницы в гет параметрах - норм =0, а в селекте выбирается элемент <option value="">All</option>,
т.е. браузер считает , что пустое значение и 0 - это одно и то же?

Вопрос - как побороть эту граблю?
а если == заменить на ===?
источник

VY

Vladimir Yefremov in Laravel для начинающих
Игорь
а если == заменить на ===?
не помогает
источник

И

Игорь in Laravel для начинающих
Vladimir Yefremov
не помогает
ну тут что-то с приведением типов, или код отформатируй, чтобы понятнее было
источник

MR

Maxim Rebitskiy in Laravel для начинающих
Vladimir Yefremov
есть такой эффект-дефект:
для фильтра на странице есть элемент
<select name="status" id="status">
   <option value="">All</option>
       @foreach($statuses as $key => $value)
           <option value="{{ $key }}" {{ (!empty($key)) && $key == request()->input('status') ? 'selected' : '' }}>
              {{ $value }} </option>
       @endforeach
</select>

ключи в массиве - целые числа: 0,1,-1 - взяты из БД,

когда страница загружается - все ОК,
когда выбираю в селекте любой элемент, кроме 1-го - все ОК, при перезагрузке страницы параметры попадают в ГЕТ, можно делиться ссылкой, все по ТЗ;

если же выбрать 1-й элемент списка, у которого ключ равен = 0 , то при перезагрузке страницы в гет параметрах - норм =0, а в селекте выбирается элемент <option value="">All</option>,
т.е. браузер считает , что пустое значение и 0 - это одно и то же?

Вопрос - как побороть эту граблю?
Эту часть когда обернуть в ()
((!empty($key)) && $key == request()->input('status’))
источник

И

Игорь in Laravel для начинающих
Vladimir Yefremov
есть такой эффект-дефект:
для фильтра на странице есть элемент
<select name="status" id="status">
   <option value="">All</option>
       @foreach($statuses as $key => $value)
           <option value="{{ $key }}" {{ (!empty($key)) && $key == request()->input('status') ? 'selected' : '' }}>
              {{ $value }} </option>
       @endforeach
</select>

ключи в массиве - целые числа: 0,1,-1 - взяты из БД,

когда страница загружается - все ОК,
когда выбираю в селекте любой элемент, кроме 1-го - все ОК, при перезагрузке страницы параметры попадают в ГЕТ, можно делиться ссылкой, все по ТЗ;

если же выбрать 1-й элемент списка, у которого ключ равен = 0 , то при перезагрузке страницы в гет параметрах - норм =0, а в селекте выбирается элемент <option value="">All</option>,
т.е. браузер считает , что пустое значение и 0 - это одно и то же?

Вопрос - как побороть эту граблю?
а утебя первый элемент списка - это какой считается? У тебяч же еще "All" там есть
источник

И

Игорь in Laravel для начинающих
Maxim Rebitskiy
Эту часть когда обернуть в ()
((!empty($key)) && $key == request()->input('status’))
хм, вполне
источник

AB

Alexandr Bezuglov in Laravel для начинающих
всем привет, не подскажите почему последний ключ делается ссылкой при
foreach($array as &$item)
источник

И

Игорь in Laravel для начинающих
Alexandr Bezuglov
всем привет, не подскажите почему последний ключ делается ссылкой при
foreach($array as &$item)
а это "&$item" обязательно? что за кейс такой
источник

AB

Alexandr Bezuglov in Laravel для начинающих
нужно модифицировать элементы в массиве
источник

И

Игорь in Laravel для начинающих
Alexandr Bezuglov
нужно модифицировать элементы в массиве
источник

И

Игорь in Laravel для начинающих
или какая тебе модификация нужна
источник

AB

Alexandr Bezuglov in Laravel для начинающих
сейчас гляну, постоянно за map() забываю, спасибо
источник

S

Success in Laravel для начинающих
Michael
Эта штука называется "программист", который пишет проверку, чтобы у последнего элемента не выводить палку. Или не выводить её перед первым элементом.
Разве такое можно на пхп сделать?
источник

SS

Serg Serdyuk in Laravel для начинающих
Alexandr Bezuglov
всем привет, не подскажите почему последний ключ делается ссылкой при
foreach($array as &$item)
потому что нужно после цикла сделать unset($item)
источник

AB

Alexandr Bezuglov in Laravel для начинающих
Serg Serdyuk
потому что нужно после цикла сделать unset($item)
не знал. спасибо
источник