У меня возникают проблемы с обновлением и печатью текущего значения переменной с помощью функции JavaScript.
У меня есть текстовый файл, который постоянно обновляется данными датчиков из последовательного интерфейса USB, и использовал его, чтобы просмотреть последнюю строку журнала и сохранить его для печати на локальном сервере:
<h1 id="piecesCounter" style = "font-size: 120;">
<?php
$line = '';
$f = fopen('...\counter.txt', 'r');
$cursor = -1;
fseek($f, $cursor, SEEK_END);
$char = fgetc($f);
while ($char === "\n" || $char === "\r") {
fseek($f, $cursor--, SEEK_END);
$char = fgetc($f);
}
while ($char !== false && $char !== "\n" && $char !== "\r") {
$line = $char . $line;
fseek($f, $cursor--, SEEK_END);
$char = fgetc($f);
}
?>
</h1>
это работает хорошо, после получения последнего значения я написал этот скрипт для печати и обновления значения без перезагрузки всей страницы:
<script>
var line = <?php echo $line ?>;
setInterval(updateCounter, 150);
function updateCounter () {
document.getElementById("piecesCounter").innerHTML = line;
}
</script>
Значение показывает, но оно не обновляется, мне нужно перезагрузить всю страницу, чтобы увидеть изменения в значении, я искал, есть ли способ напрямую прочитать последнюю строку текстового файла с помощью JavaScript, но не нашел конкретных решений.
Задача ещё не решена.
Других решений пока нет …