如何创建一个全球访问计数器,为每次访问回显一个图像?

时间:2012-04-16 19:42:30

标签: php image

基本上我想创建一个网页的全球访问计数器,然后我想为每次访问显示一个图像。因此,如果有10个人访问了该页面,那么来自服务器的10个随机图像将在该页面上回显。当第11个访问者到达页面时,将回显一个新的随机图像,等等......

所以我真的需要帮助两件事 -

  1. 我有一个非常基本的访问计数器,但它只适用于会话,我需要它在全球范围内工作吗?
  2. 如何根据访问次数回显图像?
  3. 以下是访问计数器的基本代码:

    if(isset($_SESSION['views']))
       $_SESSION['views']=$_SESSION['views']+1;
    else
       $_SESSION['views']=1
    
    echo "Page views: ".$_SESSION['views'];
    

    我仍然是php的大量初学者,非常感谢任何帮助:)

    谢谢你们。

3 个答案:

答案 0 :(得分:1)

如果您选择不将数据存储在数据库中,那么此代码应该适合您,您只需要找到0到9之间的图像,并创建名为counter.txt的空文本文件并将此代码放入你的php文件在哪里

$file = "counter.txt";
$count = file_get_contents($file);
$fh = fopen($file, 'w') or die("ccould not open file");
$content = (int)$count + 1;
fwrite($fh, $content);
fclose($fh);
$counter_array = str_split($content);
foreach($counter_array as $digit){
    echo "<img src='" . $digit . ".gif' />";
}

答案 1 :(得分:0)

SESSIONS 用于全局存储。

他们只有在网站开放之前才能活着。

  

您应该使用数据库来存储全局变量。


现在,来到图像显示部分。您可以使用特定于无访问次数的图像命名。

  

例如:

     

4.jpg将成为第四个人的形象

接下来,您可以使用像这样的简单代码段

$visitCounter = "?"; //Get the count using a logic
echo "<img src="$visitCounter.jpg" />"; //Use it to create a image path

答案 2 :(得分:0)

$ _ SESSION是错误的用法。

在当天,我会读取并写入服务器上的文本文件。由于鸡群问题,这不是最好的方法,但它会给你一些阅读和编写文件的经验。