先谢谢所有看这个提问的人。
我是一个PHP小白。
是这样的,我想做一个站点数据统计的脚本。
于是我写了一个PHP文件,名字叫做resp.php,放在和html同一级文件夹中,resp.php的代码如下:---------
<?php
//用来记录网站访客信息
$brand = $_SERVER['HTTP_USER_AGENT'];
$ip = $_SERVER["REMOTE_ADDR"];
$nowtime = date("Y-m-d H:i:s");
$fkmsg = "{\r\n时间:    ".$nowtime.";\r\n    ip:".$ip.";\r\n    设备信息:".$brand.";\r\n},"; //得到访客信息
if(!file_exists("./weblog.txt")){ //如果log文件不存在
    $fp = fopen("./weblog.txt",'w')//创建文件
    fwrite($fp,$fkmsg); //将得到的访客信息写入文件
    fclose($fp); //关闭文件
} else{ //如果文件存在
    file_put_contents("./weblog.txt", $fkmsg); //将访客信息写入文件尾部
}$line = count(file("./weblog.txt")); //得到处理后的文件行数
$file = file("./weblog.txt");
while ($line > 50000){ //如果行数大于50000,则循环执行
    unset($file[0]); //删除第一行
    $line--;
}
?>
----------然后,我在html文件body标签下面加入了这行代码:----------
<script src="./resp.php"></script>
----------但是我浏览我的网页之后,我的网站服务器上并没有生成一个weblog.txt文件。有哪位知道怎么回事吗?

解决方案 »

  1.   

    嗯,也就是说我的代码可以用来操作远程文件?
    我在检查时,浏览器报错是没有权限打开文件,就是在我PHP文件的第十行创建文件那里,因为我的是新浪云sae应用,他的资源目录权限好像不能用户自行改,唉,这个代码白想了一下午,没权限是硬伤。。
    新浪云他也有生成日志,但是他的日志要自己下载,很麻烦,而且下载下来是一天一个文件,如果要解析的话得自己一个个解析。
    所以我就想自己写个脚本生成日志,但是现在看来好像不允许
    这也是没办法的,弄了一天,最后还是看了用户文档,才发现新浪为了文件安全取消了PHP里的很多函数,比如那个修改文件的函数。
    略坑。。
      

  2.   

    多麻烦 nginx配置下就可以
      

  3.   

    https://blog.csdn.net/yt_php/article/details/87900871
      

  4.   

    php文件加载 不是你这样搞的  你需要include 文件名 才行。。一般现在的网站都是单入口模式,你把你的统计脚本放在入口文件里面就行了。
      

  5.   

    包括script的资源引用也一并去掉尝试一下喔,还不可以的话记得留言联系喔
      

  6.   

    谢谢您,现在已经弄好了,在本地服务器可以用,就是放在新浪云sae上不能用,提工单问客服她说我的是标准环境不支持本地写入,所以要运行的话得换成云空间环境,但是我。。这个小项目而已,就要我花原来标准环境的三倍价格换成云空间环境哈哈哈哈嗝
    还是不换了吧。。
      

  7.   

    额,我不太懂什么是入口文件
    不过我现在用Ajax方法引用PHP脚本,在本地能用,
    在云端因为没有权限写入,所以这个想法还是泡汤了。。