php写日志
❶ php后台操作日志怎么做
配置log4j
最常用的log方法
很多log可以利用它输出
且配置简单
❷ 怎么在PHP脚本里面加上日志记录语句
很简单,你把写日志的写成个类就ok
每次发送成功就调用一下:
class
Userlog
{
//
instance
vars
var
$userName;
var
$logTime;
var
$operate;
/*********************************************************************
**
constructor
**/
function
Userlog()
{
}
/**
**
*********************************************************************/
function
writeLog()
{
global
$config;
$query
=
"insert
into
".$config['user_log']."
(user,
time,
operate,
opt_ip)
values('".$this
->
userName."','".$this->logTime."','".$this->operate."','".$_SESSION["UserIP"]."')";
mysql_query($query);
}
/*********************************************************************
**
public
methods
**/
}
当然你在调用前要连接数据库
❸ 如何开启PHP日志功能
开启步骤如下:
1. 打开php.ini文件。
以ubuntu为例,这个文件在: /etc/php5/apache2 目录下为例。
2. 搜索并修改下行,把Off值改成On
display_errors = Off
3. 搜索下行
error_reporting = E_ALL & ~E_NOTICE
或者搜索:
error_reporting = E_ALL & ~E_DEPRECATED
修改为
error_reporting = E_ALL | E_STRICT
4. 修改Apache的 httpd.conf,
以Ubuntu 为例, 这个文件在:/etc/apache2/ 目录下,这是一个空白文件。
添加以下两行:
php_flag display_errors on
php_value error_reporting 2039
5. 重启Apache,就OK了。
重启命令: :sudo /etc/init.d/apache2 restart.
❹ php怎么记录访问者ip并生成日志
php获取访问者IP地址汇总
在很我的时候我们需要得到用户的真实IP地址,例如,日志记录,地理定位,将用户信息,网站数据分析等,其实获取IP地址很简单$_SERVER[\'REMOTE_ADDR\']就可以了。下面我们就来给大家汇总一下常用的几种获取IP地址的方法。
//方法1:
$ip = $_SERVER["REMOTE_ADDR"];
echo $ip;
//方法2:
代码如下:
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
echo $user_IP;
//方法3:
function getRealIp()
{
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}
echo getRealIp();
//方法4:
if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"])
{
$ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
}
elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"])
{
$ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];
}
elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"])
{
$ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
}
elseif (getenv("HTTP_X_FORWARDED_FOR"))
{
$ip = getenv("HTTP_X_FORWARDED_FOR");
}
elseif (getenv("HTTP_CLIENT_IP"))
{
$ip = getenv("HTTP_CLIENT_IP");
}
elseif (getenv("REMOTE_ADDR"))
{
$ip = getenv("REMOTE_ADDR");
}
else
{
$ip = "Unknown";
}
echo $ip ;
//方法5:
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;
//方法6:
print "您的IP地址是:";
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$cip = $_SERVER["HTTP_CLIENT_IP"];
}
elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
$cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
}
elseif(!empty($_SERVER["REMOTE_ADDR"])){
$cip = $_SERVER["REMOTE_ADDR"];
}
else{
$cip = "无法获取!";
}
print $cip;
保存TEXT中
<?php
$ip = $_SERVER['REMOTE_ADDR'];
$time = gmdate("H:i:s",time()+8*3600);
$file = "123.txt" ;
$fp=fopen ("123.txt","a") ;
$txt= "$ip"."----"."$time"."\n";
fputs($fp,$txt);
?>
❺ php日志类
首先,你得有一个“日志类”,明显PHP并没有内置,所以你需要自己编写这个类。
日志模块的大概设计思路如下:
1、你得有一个数据表,记录所有的用户行为。
2、你得写一个“日志类”,这个类至少有一个方法:向数据表写入日志信息
那日志信息从哪里来呢?
在你想记录日志的地方,调用日志类的方法来触发写入动作。
比如(伪代码):
if(用户登录成功){
$日志类=new日志类();
$日志类->插入数据("登录日志","登录成功","username=a;password=b","IP"...)
}
如果你想做日志的查询功能,显然你要给日志类加更多方法..
❻ php该在哪里写日志怎么写日志日志是做什么用的
在php.ini中有一段
error_log="D:\PHP\log\php-errors.log"
就是注明你php的日志文件
❼ php日志写不进去,怎么测试都不行
用这个php函数写file_put_contents();就可以了
❽ PHP自带的日志是怎么写入和查看的呢
查看PHP错误日志
可以在命令行里面输入: find . -name error.log
tailf -f error.log
写入日志,有固定的函数error_log($str, 3, filename)
❾ php实现日志管理(记录用户操作)原理
分别实现的是实现登录日志和操作日志,自定义2个函数数,在用户登录和增加,修改和删除的时候分别DO这两个函数。信息就记录到数据库表中。
❿ php怎么写日志
PHP 这东西做日志很让人揪心。。。
往数据库里面插吧,没别的什么好办法。。
数据量大可用先把数据按格式记录到文件里面,然后load数据库中。