通过按钮单击将预定义文本添加到文本文件

时间:2013-04-18 22:01:00

标签: php database append text-files

我有一个非常简单的问题 - 它很简单,我找不到答案:)

我是PHP的新手(基本上是今天开始的),我想做以下事情:

每当有人点击网页上的按钮时,就会在文本文件或数据库中的表中添加/附加字符(字母“a”)。同时,我希望此文本文件/数据库的(更新的)内容显示在同一页面上。

理想情况下,我还想存储点击按钮的人的位置,时间和日期。

有任何帮助吗?我会非常亲切。

编辑: 这里是我发现的一些增加计数器的代码,存储在文本文件中,但这似乎比我想做的更复杂:

<?php
$f = fopen('counter.txt', 'r+'); // use 'r+' instead
flock($f, LOCK_EX); // avoid race conditions with concurrent requests
$total = (int) fread($f, max(1, filesize('counter.txt'))); // arg can't be 0
/*if someone has clicked submit*/
if (isset($_POST['submit'])) {
   rewind($f); // move pointer to start of file so we overwrite instead of append
   fwrite($f, ++$total);
}
fclose($f);
?>

2 个答案:

答案 0 :(得分:0)

您应该考虑使用file_put_contents执行此简单任务。

file_put_contents('counter.txt', 'a', FILE_APPEND | LOCK_EX);

但如果您想存储有关访问者的信息,那么数据库就是您的好朋友。 从一些tutorials开始。

答案 1 :(得分:0)

您必须考虑在服务器和客户端进程方面使用PHP和HTML。

       HTML                       PHP
        |                          |
     web page                      |
        |                          |
user    |                          |
clicks  |--- request to server --->|
        |                          |file or DB update
        |<--- returns OK - data ---|
        |                          |
        |                          |

要向PHP服务器发送请求,您可以使用经常提交的表单,并重新加载页面;或者,依靠AJAX来控制何时将数据发送到服务器并处理更新而不重新加载整个页面。