Firefox (10.0.2) портит данные массива - PullRequest
0 голосов
/ 07 марта 2012

Я пытаюсь обслуживать пользователя с помощью кнопки браузера в обратном направлении для доступа к странице, которая содержит несколько раскрывающихся списков (некоторые отображаются при выборе других с помощью jQuery). Когда пользователь делает выбор комнаты, переходит на следующую страницу, возвращается с помощью кнопки возврата браузера и делает другой выбор, я сбрасываю раскрывающиеся списки при загрузке страницы. Когда пользователь снова продвигается, используя Chrome и IE, я получаю следующую правильную структуру массива:

Array
(
    [15] => Array
        (
            [12] => Array
                (
                    [num_rooms] => 0
                    [price] => 39.5
                )

            [15] => Array
                (
                    [num_rooms] => 1
                    [adults] => Array
                        (
                            [0] => 2
                        )

                    [prices] => Array
                        (
                            [0] => 49.5
                        )

                    [roomTotalPrice] => Array
                        (
                            [0] => 49.5
                        )

                    [price] => 99
                )

            [14] => Array
                (
                    [num_rooms] => 0
                    [price] => 49
                )

            [16] => Array
                (
                    [num_rooms] => 0
                    [price] => 39.5
                )

            [13] => Array
                (
                    [num_rooms] => 0
                    [price] => 39.5
                )

        )

Это правильно показывает количество «взрослых» для выбранной комбинации номер / ставка, комната 15 и ставка 15. Когда я запускаю точно такой же код в Firefox, массив искажается следующим образом:

Array
(
    [15] => Array
        (
            [12] => Array
                (
                    [num_rooms] => 0
                    [price] => 39.5
                )

            [15] => Array
                (
                    [num_rooms] => 1
                    [price] => 99
                )

            [79] => Array
                (
                    [adults] => Array
                        (
                            [0] => 2
                        )

                    [prices] => Array
                        (
                            [0] => 49.5
                        )

                    [roomTotalPrice] => Array
                        (
                            [0] => 49.5
                        )

                )


        )

Вместо добавления «данных для взрослых» в комнату / тариф 15 он добавляется к несуществующему тарифу «79».

Какой-нибудь совет, почему Firefox может делать это?

1 Ответ

1 голос
/ 12 марта 2012

Добавление следующего кода на страницу не позволило Firefox кэшировать данные и решило проблему:

<?php
header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
header('Pragma: no-cache'); // HTTP 1.0.
header('Expires: 0'); // Proxies.
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...