Как изменить данные в json по клику на ссылку с использованием php и мб нужен js или jquery ajax?

Задача такая: Из json файла php выводит контент. Нужно сделать так, чтобы при клике на ссылку увеличивалось значение viewed и измененные данные записывались в json. И есть некоторые условия:

  1. Для увеличения количества просмотров использовать только get-параметр с ИД новости. Запрещено использовать порядковый номер новости внутри массива.
  2. После перехода по ссылке и обновлении этой же страницы в браузере, не должно происходить повторного увеличения счетчика viewed
[
    {
        "id": "0001",
        "viewed": 0,
        "name": "News 1",
        "text": "Preview text"
    },
    
    {
        "id": "0005",
        "viewed": 0,
        "name": "News 2",
        "text": "Preview text"
    },
    
    {
        "id": "0010",
        "viewed": 0,
        "name": "News 3",
        "text": "Preview text"
    }
]

    <?php

$filename = __DIR__ . "/data.json";
$result = [];
if (file_exists($filename))
    $result = json_decode (file_get_contents ($filename), true);

?>

<? foreach ($result as $item): ?>
<div>
    <b><?=$item['name']?></b><br>
    <small>Viewed: <?=$item['viewed']?></small><br>
    <?=$item['text']?><br><br>
    <a href="?set_viewed=<?=$item['id']?>">I watched</a>
    <hr>
</div>
<? endforeach; ?>


Ответы (0 шт):