Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
以html实时显示txt内容(我的web服务器不支持php)_Php_Jquery_Html - Fatal编程技术网

以html实时显示txt内容(我的web服务器不支持php)

以html实时显示txt内容(我的web服务器不支持php),php,jquery,html,Php,Jquery,Html,我有一个名为log.txt的文件,它总是由另一个进程写入新内容(这里是pexpect的telnet会话),我想在页面中显示整个内容,当新内容出现时,页面内容也会显示新内容,这有点像tail-f,但有点不同,因为我想显示除新内容之外的所有内容,最简单(可能也是最糟糕)的方法是每次使用ajax请求下载全部内容。例如,使用jQuery的一种可能实现是: var logDownloader = { fileContents:"", init: function () {

我有一个名为log.txt的文件,它总是由另一个进程写入新内容(这里是pexpect的telnet会话),我想在页面中显示整个内容,当新内容出现时,页面内容也会显示新内容,这有点像tail-f,但有点不同,因为我想显示除新内容之外的所有内容,最简单(可能也是最糟糕)的方法是每次使用ajax请求下载全部内容。例如,使用jQuery的一种可能实现是:

var logDownloader = {

    fileContents:"",

    init: function () {
        $.ajax({
            url: "./logfile.txt",
            async: false,
            success: function (data){
                pageExecute.fileContents = data;
            }
        });
    }
};
另一种方法是调用php脚本,它只返回日志文件中文本的“新鲜”部分。对于逐行读取文件,您可以使用例如:

if ($file = fopen("file.txt", "r")) {
    while(!feof($file)) {
        $line = fgets($file);
        //send your line
    }
    fclose($file);
}
您还应该发送上次发送的行数,以避免每次发送整个文件


另一方面,如果您不限于PHP,我建议使用nodeJS和socket.io或一些python脚本。我认为这样会更有效。

什么命令?什么数据的日志?HTML是表示文档的标记,而不是以线性方式运行的程序。嗨,Luke,你能在这里发布整个jqurey代码吗?我对jqurey知之甚少,我不知道如何使用它,如果我使用python脚本,我的起点在哪里?如果我使用socket.io,我需要安装一些东西才能让它工作吗?一个很好的开始是教程和文档,比如我不会提供完整的代码,因为堆栈溢出并不存在。我们正在帮助您获得一个想法,而不是完整的拷贝粘贴解决方案。