Я хочу обновлять значение play_count в массиве $ games всякий раз, когда кто-то переходит по ссылке на игры.

$games[] = array(
"title" => 'Accurate Boy',
"link_name" => 'accurate-boy',
"id" => 2,
"desc" => 'Use a plunger-gun to help a boy recover a pirate ship toy from a series of sewers in this unique physics-based puzzle.',
"cat" => 'Puzzle',
"img_src" => 'img/accurate_boy.png',
"play_count" => 0
);

Например, если кто-то переходит в игру «точный мальчик», ключ play_count получает добавление 1 к предыдущему значению.

Я могу добавить его к ключу play_count, но он всегда сбрасывается после того, как я покидаю страницу.

Кто-нибудь может мне помочь с этой проблемой?

Благодарность

0
John McDonald 1 Сен 2013 в 01:08
Вы сохраняете этот массив? (База данных, простой текст и т. Д.)
 – 
Dave Chen
1 Сен 2013 в 01:10
У меня есть файл data.php. Это то место, где находится массив.
 – 
John McDonald
1 Сен 2013 в 01:11
Если на ваш вопрос дан ответ, отметьте это как таковое
 – 
lollercoaster
1 Сен 2013 в 02:26

1 ответ

Лучший ответ

Если кто-то перейдет на другую страницу, скажем other.php и вернется, этого массива не будет. Вы должны как-то настаивать на этом.

Для краткосрочного сохранения (т. Е. Пользователь перемещается между страницами на вашем сервере) можно использовать массив $_SESSION, например,

$_SESSION[$user_id] = $games_array;

А затем, зная user_id, вы всегда можете получить этот массив и при необходимости изменить значения из других скриптов в том же приложении.

Для реальной настойчивости вам понадобится какая-то база данных.

0
lollercoaster 1 Сен 2013 в 01:18
Если массив хранится в собственном файле с именем data.php, может ли массив не сохраниться в этом файле?
 – 
John McDonald
1 Сен 2013 в 01:23
Нет. Если вы не отредактируете data.php, что крайне не рекомендуется. Взгляните, пожалуйста, на базы данных. (Файлы тоже работают, но медленнее, и вам может потребоваться заблокировать файл, чтобы предотвратить одновременный доступ к data.php)
 – 
Dave Chen
1 Сен 2013 в 01:29
Да, данные в PHP не сохраняются автоматически.
 – 
Dave Chen
1 Сен 2013 в 01:36
Ах, хорошо, спасибо, что прояснили это для меня. Будет ли работать база данных только для хранения play_counts? Сохранить все статические данные в массиве $ games?
 – 
John McDonald
1 Сен 2013 в 01:44
Существует бесконечное количество способов хранить и упорядочивать данные. предписанный способ - использование базы данных отношений и организация ваших данных в нормализованном формате: en.wikipedia.org/wiki/ Нормализация базы данных
 – 
lollercoaster
1 Сен 2013 в 02:08