Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.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
Php 如何附加到textarea?_Php_Javascript_Ajax - Fatal编程技术网

Php 如何附加到textarea?

Php 如何附加到textarea?,php,javascript,ajax,Php,Javascript,Ajax,如何使用PHP附加到textarea,然后刷新textarea 多谢各位 编辑: 它应该是由PHP代码触发的服务器最简单的方法是使用javascript函数使用ajax轮询PHP脚本,比如说每10秒轮询一次。您可以将时间戳作为参数添加到php函数中,使其只返回最新的日志条目 当ajax调用返回时,可以使用javascript将结果文本附加到textarea 如果你愿意,我可以找到一些示例代码 这是一个HTML文件,它有一个函数,可以对脚本log.php进行AJAX调用,返回一些内容(在本例中,

如何使用PHP附加到textarea,然后刷新textarea

多谢各位

编辑:
它应该是由PHP代码触发的服务器

最简单的方法是使用javascript函数使用ajax轮询PHP脚本,比如说每10秒轮询一次。您可以将时间戳作为参数添加到php函数中,使其只返回最新的日志条目

当ajax调用返回时,可以使用javascript将结果文本附加到textarea

如果你愿意,我可以找到一些示例代码

这是一个HTML文件,它有一个函数,可以对脚本log.php进行AJAX调用,返回一些内容(在本例中,它是一行非常简单的文本),然后将其附加到文本区域

当脚本加载时,我们设置了一个计时器,每1000毫秒触发一次(显然根据您的需要进行更改)

我们还有一个“取消更新”功能和一个“启动更新”

因此,将html文件和php文件(需要调用log.php,或者随意调用并更改代码)放在web服务器上的同一目录中,看看会发生什么

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

        <script type="text/javascript">
            var http = createRequestObject();
            var updateInt=self.setInterval("updateLog()",1000);


            function startAutoUpdate(){

                if(updateInt==""){
                    updateInt=window.setInterval("updateLog()",1000)
                }else{
                    stop_Int()
                }
            }
            function stopAutoUpdate(){

                if(updateInt!=""){
                    window.clearInterval(updateInt)
                    updateInt=""

                }
            }
            function createRequestObject() {
                var objAjax;
                var browser = navigator.appName;
                if(browser == "Microsoft Internet Explorer"){
                    objAjax = new ActiveXObject("Microsoft.XMLHTTP");
                }else{
                    objAjax = new XMLHttpRequest();
                }
                return objAjax;
            }

            function updateLog(){
                http.open('get','log.php');
                http.onreadystatechange = updateNewContent;
                http.send(null);
                return false;
            }

            function updateNewContent(){
                if(http.readyState == 4){

                    document.getElementById('log').innerHTML = document.getElementById('log').innerHTML + http.responseText;

                }
            }
        </script>
    </head>
    <body>
        <h2>Log</h2>
        <textarea cols="80" rows="10" name="log" id="log"></textarea>

        <span onclick="updateLog()">Update</span><br>
        <span onclick="stopAutoUpdate()">Cancel Auto Update</span><br>
        <span onclick="startAutoUpdate()">Start Auto Update</span><br>

    </body>
</html>

var http=createRequestObject();
var updateInt=self.setInterval(“updateLog()”,1000);
函数startAutoUpdate(){
如果(updateInt==“”){
updateInt=window.setInterval(“updateLog()”,1000)
}否则{
stop_Int()
}
}
函数stopAutoUpdate(){
如果(updateInt!=“”){
window.clearInterval(updateInt)
updateInt=“”
}
}
函数createRequestObject(){
var objAjax;
var browser=navigator.appName;
如果(浏览器==“Microsoft Internet Explorer”){
objAjax=newActiveXObject(“Microsoft.XMLHTTP”);
}否则{
objAjax=newXMLHttpRequest();
}
返回objax;
}
函数updateLog(){
open('get','log.php');
http.onreadystatechange=updateNewContent;
http.send(空);
返回false;
}
函数updateNewContent(){
如果(http.readyState==4){
document.getElementById('log').innerHTML=document.getElementById('log').innerHTML+http.responseText;
}
}
日志
更新
取消自动更新
启动自动更新
下面是php脚本(非常简单)



你能说得更准确些吗?这应该由用户触发还是由服务器触发?你能添加一些代码吗?目前你的问题有点不具体。你好。我不知道你在找什么。您是希望在运行php脚本时填充文本区域,然后将其呈现给用户,还是希望执行更“ajaxy”的操作并动态附加到文本区域?您无法仅使用php从服务器更改客户端上的内容。基本上,使用http根本不可能做到这一点,因为该协议实际上并不适用于这种类型的通信。但是您应该看看一些ajax功能,它们可以做类似的事情。更多ajaxy。PHP做了一些事情,应该附加到作为日志的textarea。Textarea位于单独的html-file.Thx中,用于澄清,但我们还需要更多。从用户看到的页面开始,告诉我们您希望发生什么?
    <?PHP
/* Log responder script
 *
 * When invoked this script returns log entries
 * as this is a sample it just returns a couple of random items
 *
 */

echo "Log Entry ".date("d/m/y h:i:s")."\n";


?>