Цитата:
|
Все уже не надо. Решила инкремент делать на javascript, а на php отправлять только результат. Работает.
javascript: <html> <head> <title></title> </head> <body> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.js"></script> <div id="result">0</div> <script type="text/javascript"> $(function(){ var interval = 3000; function doAjax(i) { $.ajax({ type: 'POST', url: 'increment.php', data: "num="+i, dataType: 'json', success: function (response) { if(response.result=="success") { $('#result').html(response.num); } }, complete: function (data) { setTimeout(doAjax, interval,i + 1); } }); } setTimeout(doAjax, interval,1); }); </script> </script> </body> </html> PHP <?php $num = $_POST["num"]; echo json_encode(array( 'result' => 'success', 'num' => $num )); ?> |
Olga27, если это окончательный вид PHP скрипта, то он бесполезен чуть более, чем полностью.
|
Цитата:
|
Olga27,
Цитата:
- не будет задержек при обновлении счетчика на странице, ведь запрос к серверу отправлять не нужно; - серверу не придется заниматься бесполезными действиями такими как получить от клиента число и его же ему же вернуть. Без сервера ваш код может выглядеть так: <html> <head> <title>Counter</title> </head> <body> <div id="result"></div> <script type="text/javascript"> (function tick(counter) { document.getElementById('result').innerHTML = counter; setTimeout(tick, 3000, ++counter); })(0); </script> </body> </html> |
Nexus,
Это не весь код на сервере json документ который открывается. $ourData = file_get_contents("data.json"); $outcls=json_decode($ourData,true); Потом, туда будут вноситься данные и документ будет перезаписываться. Цитата:
|
Часовой пояс GMT +3, время: 20:41. |