jQuery和AJAX调用,以追加到自定义的TXT日志文件
问题描述:
我想追加日期自定义日志文件,以跟踪特定链接的点击,不过在TXT文件都被覆盖:jQuery和AJAX调用,以追加到自定义的TXT日志文件
$('#cal').click(function() {
$.ajax
({
url: 'caltrack.php',
data: {caltrack: 'true'},
type: 'post',
success: function()
{
console.log('success');
}
});
});
PHP :
<?php
error_reporting(E_ALL);
$ip = preg_replace('#[^0-9.]#', '', getenv('REMOTE_ADDR'));
$date = date('Y-m-d h:i:s a', time());
$data = $date.' - '.$ip.'';
$f = fopen('caltrack.txt', 'w+');
fwrite($f, $data);
fclose($f);
?>
如何每次追加一行新文本?
答
改变你的PHP代码如下:
<?php
error_reporting(E_ALL);
$ip = preg_replace('#[^0-9.]#', '', getenv('REMOTE_ADDR'));
$date = date('Y-m-d h:i:s a', time());
$data = $date.' - '.$ip.'';
$f = fopen('caltrack.txt', 'a');
fwrite($f, $data);
fclose($f);
?>
那么,什么是你做错了什么?实际上,您正在以w +模式打开一个文件,打开文件进行读取/写入,并擦除文件内容或创建一个新文件(如果文件不存在)。文件指针从文件的开始处开始。因此一切都被覆盖。 在这里,如果你打开文件在一个或一个+模式,那么你可以附加你的数据到你的文件。
有关php文件的更多细节可以在here找到。