@Luchifer

Как отключить сортировку массива?

Привет у мне такое проблема изменяю кол-во товаров с ajaxom все работает но сортируют массива под себе как хочет
я беру товары из сессию по этому orderby для базы не помогло
это первое состояние
5abddad7b0206030808183.jpeg
после изменение кол-во товаров так получается , товар который был на 1 ом месте тепер на 3 ом
5abddafeb022f313245342.jpeg
это кнопки
<div class="input-group">
                            <input id="<?= $id ?>"  type="text" class="form-control input-number quantity" value="<?= $item['qty'] ?>">
                            <a href="cart" data-id="<?= $id ?>" class="btn btn-default addd"><i class="fas fa-sync"></i></a>
                        </div>

это ajax запрос
$('.addd').on('click', function () {
        var id = $(this).data('id');
        qty = $('input[id=' + id + ']').val();
        $.ajax({
            url: '/site/addd',
            data: {id: id , qty: qty},
            type: 'GET'
        });
    });

это функция
public function actionAddd()
    {
        $id = Yii::$app->request->get('id');
        $qty = (int)Yii::$app->request->get('qty');
        $qty = !$qty ? 1 : $qty;
        $product = Products::findOne($id);
        if(empty($product)) return false;
        $session = Yii::$app->session;
        $session->open();
        $cart = new Cart();
        $cart->recalc($id);
        $cart->addToCart($product, $qty);
        return $this->render('cart', compact('session'));
    }


в чем проблема ?(
  • Вопрос задан
  • 307 просмотров
Пригласить эксперта
Ответы на вопрос 2
serginhold
@serginhold
Включив экстрасенсорные способности:

или
если сортировка и вывод нам php, а товары в сессии лежат в каком-то определенном порядке, то
order by field(`id`,7, 12, 4) # твой порядок id

или если вывод списка на js
смотри js массив перед выводом, возможно ключами являются id, по этому надо перед выводом в json применить array_values
Ответ написан
Adamos
@Adamos
Если вы выводите какие-то данные на страницу в JSON - то любые массивы, имеющие числовые ключи, будут отсортированы по этим ключам. Вне зависимости от того, как вы их отсортировали до формирования JSON.
Проще всего не использовать массивы с ключами в принципе. Нужны id - сделайте их свойством, а не ключом. И все будет доходить до страницы в том же порядке, в котором вы его создали. Если они вообще не нужны - выводите в JSON array_values, как уже было сказано.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы