Создавая
текстовый счетчик, мы ограничены свойствами текста в браузере. Если же Вы хотите
чегото из ряда вон выходящего, удовлетворяющего Вашему полету фантазии, то Вам
подойдет как раз описываемая тема.
Данный
пример демонстрирует работу простого графического счетчика. По функциональности
он совершенно идентичен текстовому счетчику.
Для работы
этого счетчика необходимо создать графическое изображение, которое послужит
базой для счетчика.
Это
изображение надо сохранить под именем counter.png
В скрипте
использована библиотека GD, перед тем как пользоваться этой библиотекой, узнайте
у хостера, подключена ли эта библиотека. Теперь сам скрипт:
<?php
$dat_file="counter.dat"; // Файл счетчика
$log_file="counter.log"; // Файл списка IP
// Открывем файл счетчика и считываем текущий счет
// в переменную $count
$f=fopen($dat_file,"r");
$count=fgets($f,100);
fclose($f);
$count=ereg_replace(" ","",$count); // Удаляем символ конца строки
$count++; // Увеличиваем счетчик
// Записываем данные обратно в файл
$f=fopen($dat_file,"w");
fputs($f,"$count ");
fclose($f);
// Создаем новое изображение из файла
$im = ImageCreateFromPNG('counter.png');
// Назначаем черный цвет
$black = ImagecolorAllocate($im,0,0,0);
// Выводим счет на изображение
Imagestring($im,1,5,20,$count,$black);
// Выводим изображение в стандартный поток вывода
Header("Content-type: image/png");
ImagePng($im);
// Записываем IP посетителя
$f=fopen($log_file,"a+");
$ip=getenv("REMOTE_ADDR");
fputs($f,"$ip ");
fclose($f);
?>
Для работы
этого скрипта необходимо создать два файла, для ведения счета и для списка IP. В
файле счета необходимо установить начальное значение счетчика, сделать это можно
в любом текстовом редакторе.
Для вывода
счетчика в html используйте <IMG SRC="counter.php" WIDTH="88"
HEIGHT="31" BORDER=0> .
|