Laravel5: изменить сеанс PHP на laravel

Измените код сеанса PHP на сеанс laravel.

Я хочу поместить item_code, переданный в GET, в сеанс корзины, когда значение статуса будет превышено корзиной.

Было бы легко представить себе эту логику как логику покупки в торговом центре. Когда пользователь делает 4 элемента фаворитом, значение item_code, переданное в сеанс корзины, возвращается в виде количества элемента. Если пользователь щелкает закладку с количеством товаров, установленным на 1, значение item_code, переданное в сеанс корзины, вставляется немедленно.

Я пробовал, но за сеансами не успеваю. Помощь.

switch (trim($_GET['status'])) {
    case "":
        break;
    case "basket":
        if ($_GET['amount'] > 1) {
            for ($i = 1; $i <= $_POST['amount']; $i++) {
                $_SESSION['basket'][] = $_GET['item_code'];
            }
        } else {
            $_SESSION['basket'][] = $_GET['item_code'];
        }
        break;
}

Что на самом деле означает «когда стоимость статуса превышает корзину»? Пожалуйста, простыми словами объясните, что вы хотите сделать. Почему amount отправляется пользователем в переменной GET? Также каковы возможные значения status?

Mongoose 23.03.2018 15:42

@Mongoose Было бы легко думать о логике как о логике покупки в торговом центре. Когда пользователь делает 4 элемента фаворитом, значение item_code, переданное в сеанс корзины, возвращается в виде количества элемента. Если пользователь щелкает закладку с количеством товаров, установленным на 1, значение item_code, переданное в сеанс корзины, вставляется немедленно.

Mingeun Kim 23.03.2018 15:50

Извините, но для меня фраза «значение item_code, переданное в сеанс корзины, возвращается количеством товара» не имеет смысла. Как сумма товара (то есть цена?) Может вернуть код товара? Из того, что я вижу в коде, «сумма» является одновременно переменной $ _GET и $ _POST, в чем разница между ними? Я понимаю, что вы хотите добавить код товара в корзину на основании какого-то условия, но я не знаю, какое условие вы хотите.

Mongoose 23.03.2018 16:14

@MingeunKim Я не думаю, что ясно, с какой частью у вас проблемы. Название сообщения подразумевает, что вам нужна помощь в изменении сеанса PHP на Laravel (я не уверен, что это вообще имеет смысл, но я не использовал Laravel). Но ваш настоящий вопрос, похоже, требует помощи с условием и обработкой переменных $_GET, $_POST и $_SESSION.

WOUNDEDStevenJones 23.03.2018 16:18

@Mongoose Нет разницы в суммах _GET, _POST. Если переданное значение amount больше 1, то цикл выполняется в соответствии со значением amount. Для каждой суммы есть item_code в формате значения ключа. Я хочу изменить свой PHP-код на laravel. Пример 1) 'amount' => 1, 'item_code' => 123213 Пример 2) 'amount' => 2, 'item_code' => 100231

Mingeun Kim 23.03.2018 16:21

Я объясню простой код. for($i=1;$i <= 3; $ i ++) {      $_SESSION['basket'][] = $i; } Код сохраняет 1, 2 и 3 в сеансе корзины. Пожалуйста, измените код на laravel.

Mingeun Kim 23.03.2018 16:25
laravel.com/docs/5.6/session в разделе «Хранение данных» - это все, что вы ищете? «Пожалуйста, измените код на laravel». - Обратите внимание, что SO - это не служба кодирования, но мы можем помочь вам указать правильное направление.
WOUNDEDStevenJones 23.03.2018 16:30

@WOUNDEDStevenJones Спасибо, что направили меня в правильном направлении. Я видел документацию, но не знаю, как ее реализовать. TT

Mingeun Kim 23.03.2018 16:33

Меня смутило название «сумма». Я думал, что это означает «цену» продукта, но вы используете его для «количества» товара. например добавить 3х продукт в корзину. Я не думаю, что у вас должны быть одновременно $ _POST ['amount'] и $ _GET ['amount'] с одним и тем же именем. Кроме того, данные, полученные из данных $ _GET и $ _POST, нельзя доверять для бизнес-логики. Если кто-то просто изменит сумму с 0 на 1 в своем браузере, он сможет ввести ее в корзину.

Mongoose 23.03.2018 16:33

Согласно документации, нельзя просто сделать session(['key' => 'value']);? Другими словами, создайте массив элементов для добавления в корзину, а затем установите переменную сеанса, например session(['basket' => $items]);.

WOUNDEDStevenJones 23.03.2018 16:36

Простите. Я вроде перепутал код. Мне любопытен код без методов GET и POST.

Mingeun Kim 23.03.2018 16:36

@WOUNDEDStevenJones Я хочу постоянно хранить несколько значений в сеансе корзины. В настоящее время в этом коде есть только одно значение.

Mingeun Kim 23.03.2018 16:39
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
12
44
0

Другие вопросы по теме