Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103068806
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Mysql/postgreSQL

2008-03-23 23:25:42

来源:赛迪网    作者:30193

在使用MySQL数据库做站点时,肯定会有不知道的错误发生,怎么记录呢?以下是具体解决方法:

class.method

    //建立错误日志
    function error(){
        $fp=@fopen("error.dat","a+");
        $time=date("Y-m-d H:i:s");
        $msg="{VisitedTime:$time}\t
{VisiterIP:$_SERVER[REMOTE_ADDR]}\t
{Errormsg:".MySQL_error()."}\t
{File:->$_SERVER[PHP_SELF]}\t
{User:$_SESSION[user]}\r\n";
        @fputs($fp,$msg);
        @fclose($fp);
    }

上面的代码是我使用的一个类中的错误记录方法。

在您的使用了MySQL连接的页面内这样调用。

下面的代码直接在你的目录下建立错误日志。

if(MySQL_error()){
       $classname->error();
}

________________________

如果你的页面发生错误,在页面内只要你屏蔽够隐蔽,就不会泄露信息,相对在这个目录内就建立了

error.dat内容为(eg.)

{VisitedTime:2002-05-09 14:43:56}    
{VisiterIP:127.0.0.1}    
{Errormsg:Duplicate entry '0' for key 1}    
{File:->/path/path/errorfilename.PHP}    
{User:sports98}

这样的记录对于分析页面肯定是有好处的。

如果您是 include请不要加__LINE__

如果您是 require 建议加入__LINE__ 这样更好的帮您迅速找到错误所在位置,以方便解决问题。

阅读(344) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~