Регистрация: Aug 2004
Сообщений: 1
|
Банер с обсчетом кликов.
Делаю банер с обсчетом кликов. То есть при клике на банер, отправляется переменная на удаленный комп к php файлу. А тот записывает в текстовый файл значение.
Но проблема : когда делается самый первый клик, файл создается и в него записывается 1 , но при следующих кликах в файле ничего не меняется.
Может кто нибудь поймет почему. Я первый раз пишу на Action'е , на php не первый но ошибку допустить могу..
Кстати код был взят из одного примера и интегрирован со всей этой бедой, потому там такие коментарии...
Вот код присвоенный кнопке:
on (release) {
loadVariables("http://www.*******.ru/discocounter.php", this, "POST");
getURL("http://www.********", "_blank");
}
А вот код файла discocounter.php :
<?
$filename = "counter/counter.txt"; // зададим имя файла, который будет хранить нашу великую цифру
$testfile=file_exists($filename); // протестируем наличие этого файла в указаном месте ф-я вернет true/false
if($testfile) // если true, то файл существует, можно с ним работать
{
$fp=fopen($filename,"r+"); // откроем файл ("r+" - говорит о том, что файл открывается на чтение+запись)
if(!$fp)
{
echo "не открывается файл";
exit;
}
flock($fp,1); // заблокируем файл, чтобы два процесса не ввязались в борьбу за обладание им
$counter=file($filename); // запомним содержимое файла в массив $counter
echo $counter[0];
echo "<br>";
$rez=$counter[0]+1;
echo $rez;
echo "<br>";
$wr=fputs($fp,$rez); // и запишем это же содержимое внутрь текстового файла, но прибавив единичку
if(!$wr)
{
echo "не получилось";
exit;
}
$numb = $rez; // тут мы просто запомним "а скока их там всего этих цыфирь"
echo ("&n=$numb&"); // а вот эта строчка и пошлет нужную нам строку во флэш
flock($fp,3); // разблокируем файл
fclose($fp); // закроем его, он нам больше не нужен
}else{
mkdir("counter",0755); // ".. а мне плевать - уходи...я агент 007" создадим дирректорию для файла, в котором будет храниться число (0755 - права доступа)
$fp = fopen($filename,"w+"); // а вот если в наличии файла не оказалось, то провернем такую процедДуру
// откроем файл, но уже на "W+" ' запись, но если файла нет, то скрипт его создаст
fputs($fp, "1"); // запишем туда число 1
fclose($fp); // и закроем его
}
?>
Последний раз редактировалось Stalker_R; 03.08.2004 в 18:05.
|