![]() |
Банер с обсчетом кликов.
Делаю банер с обсчетом кликов. То есть при клике на банер, отправляется переменная на удаленный комп к 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); // и закроем его } ?> |
вообще это не выход
Flash не успевает отработывать загрузку данных, а сразу переходит на указанную страницу. Надо делать проверку результата. А то что не пишет в файл, а хрен его знает, я в перле не силен.
|
Попробуй выдержать паузу в несколько секунд между отправкой данных на сервер и их проверкой.
|
Цитирую, сами знаете кого -
"3. если вы хотите проверить работу счетчика в браузере, то скорее всего скрипт закэшируеся и число у вас будет одно и то же. Посему обратитесь к нему так http://www.myhost.ru/dir/counter.swf?anyVar=anyValue" |
| Часовой пояс GMT +4, время: 09:13. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.