Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Система учёта посещаемости PowerCounter 4.0
 
 автор: cheops   (13.03.2008 в 13:39)   письмо автору
 
 

В разделе downloads размещена новая версия PowerCounter 4.0.0. Система основана на SoftTime FrameWork.

Среди нововведений:
- автоматическая защита паролем;
- корректная работа с русским языком в запросах поисковых систем;
- коррекция учёта поисковых роботов Google;
- устранена страница "Ссылки" и реализована страница "Рефереры", замещающая её.
- повышена надёжность механизма архивации данных;
и т.п.

Для обновления с версии 3.3.7 достаточно выполнить SQL-запросы из таблицы update.sql.

   
 
 автор: vitali   (13.03.2008 в 15:14)   письмо автору
 
   для: cheops   (13.03.2008 в 13:39)
 

Спасибо. Сейчас, как раз разбираюсь с Вашей книгой ООП на PHP. Как раз в тему.

   
 
 автор: STEVER   (13.03.2008 в 15:28)   письмо автору
 
   для: vitali   (13.03.2008 в 15:14)
 

будем разбирать, спасибо.

   
 
 автор: xray   (14.03.2008 в 07:55)   письмо автору
 
   для: cheops   (13.03.2008 в 13:39)
 

Не понятно, почему в этой строке ошибка?

Parse error: parse error, unexpected '{' in /www/htdocs/site_name/power/dmn/system_accounts/index.php on line 29

Ошибка еще в index.php ссылка на страницу администрирования указана на директорию admin/ конечно не страшно :)
Каждый раз при загрузке данной страницы в таблицу ip
счётчика будет помещаться запись. Общее количество 
посещений является количеством <b>хитов</b>, количество
записей с уникальным IP-адресом является количеством <b>хостов</b>.
<br>Перегрузите несколько раз страницу и посмотрите результат
на <a href=admin/index.php>странице администрирования</a> счётчика. <br>
Переход на эту же страницу для создания рефферера <a href=index.php>Перейти</a>

   
 
 автор: cheops   (14.03.2008 в 12:00)   письмо автору
 
   для: xray   (14.03.2008 в 07:55)
 

Да, есть такое дело, забыли положить в дистрибутив папку с набором классов. Если вам не трудно, загрузите дистрибутив повторно.

   
 
 автор: fxsektor   (20.03.2008 в 19:16)   письмо автору
 
   для: cheops   (14.03.2008 в 12:00)
 

Тестирую систему.
Классы подгрузил но возникли вопросы:
почему в файлах в class.config.dmn и class.config папки config ссылки на файлы классов указаны в разные места?
И эта ошибка
Parse error: parse error, unexpected '{' in /www/rek21/www/htdocs/dmn/system_accounts/index.php on line 29
как она лечится?

   
 
 автор: cheops   (21.03.2008 в 00:41)   письмо автору
 
   для: fxsektor   (20.03.2008 в 19:16)
 

class.config ориентирован на блок представления (в счётчике его нет), а class.config.dmn на систему администрирования - этот файл включается в файлы системы администрирования счётчика. У вас папки class и dmn как расположены друг относительно друга?

   
 
 автор: AlexDIXI   (16.04.2008 в 05:12)   письмо автору
 
   для: fxsektor   (20.03.2008 в 19:16)
 

>И эта ошибка
>Parse error: parse error, unexpected '{' in /www/rek21/www/htdocs/dmn/system_accounts/index.php on line 29
>как она лечится?

unexpected '{' - скобку надо закрыть.

Или запретить .htaccess в корневой папке, если нет то создай, вывод ошибок прописываем строку (php_value error_reporting 7).

Я еще сам не пробовал PowerCounter 4.0, щас скачаю посмотрю.

   
 
 автор: Atheist   (21.03.2008 в 01:54)   письмо автору
 
   для: cheops   (13.03.2008 в 13:39)
 

Вместо исключений лучше (читабельнее и проще) применять свой обработчик ошибок и вызов trigger_error().

Наводит на странные мысли зачем вообще писать, допустим, так:

<?
      
// Вычисляем случайный индекс массива
      
$index rand(0count($arr) - 1);


Для этого есть специальная функция.

Пугают запросы вроде
<?
      $query 
"SELECT INET_NTOA(ip) AS ip, total 
                FROM 
$tbl_arch_ip 
                WHERE putdate LIKE '"
.date("Y-m-d",$_GET['date'])."%'";


LIKE? Зачем он тут нужен? Тип у поля - DATE.

А еще пугает (больше всего) то, что я заметил игнорирование ошибок и недочетов администрацией. Ошибки тянутся из версии в версию, новичкам дают одни и те же заученные примеры, содержащие, порой, очень обидные недочеты. Почему так?
Понятно, что у вас там хостинг и все дела, нет дела до замечаний кого-то атеиста. Тфу на него. Лезет нас учит.

   
 
 автор: cheops   (21.03.2008 в 11:06)   письмо автору
 
   для: Atheist   (21.03.2008 в 01:54)
 

>Вместо исключений лучше (читабельнее и проще) применять свой обработчик ошибок и вызов
>trigger_error().
Субъективно.

>LIKE? Зачем он тут нужен? Тип у поля - DATE.
Не всё сразу, счётчик существует много лет, раньше тип поля был DATETIME и этот подход был оправдан, код будет со временем исправлен.

>А еще пугает (больше всего) то, что я заметил игнорирование ошибок и недочетов
>администрацией. Ошибки тянутся из версии в версию, новичкам дают одни и те же заученные
>примеры, содержащие, порой, очень обидные недочеты. Почему так?
Мы стараемся исправлять все ошибки и принимать все исправления (особенно, когда их подготавливают в виде патча) - однако, это свободный проект... Вас же не удивляет почему в wikipedia годами висят незаконченные статьи, хотя мимо них ходит множество посетителей, знакомых с предметом.

   
 
 автор: Atheist   (21.03.2008 в 11:38)   письмо автору
 
   для: cheops   (21.03.2008 в 11:06)
 

> Субъективно.
Возможно. Но эти try ... catch ... Exception ..., по-моему, не оправдывают себя.

> Вас же не удивляет почему в wikipedia годами висят незаконченные статьи, хотя мимо них ходит множество посетителей, знакомых с предметом

Не удивляет, потому что это только посетители. Никто им спасибо не скажет (там же принцип анонимности), никакой выгоды (тут-то можно качеством работ посетителей завлекать) и доделывать работу за чужого человека мало кому приятно (за некоторыми исключениями).

Но отчасти я согласен. Open Source - тут никто никому ничего не должен. Но разве самим приятно так топтаться?

   
 
 автор: cheops   (22.03.2008 в 00:30)   письмо автору
 
   для: Atheist   (21.03.2008 в 11:38)
 

Нет не приятно, но гораздо не приятнее
a) Топтаться с книгами, которые более востербованы
б) Топтаться с коммерческими заказами, с которых платиться зарплата ребятам работающим в студии и за которых мы несём персональную ответственность.

PS Если можем - делаем, тем кто помогает с патчами благодарны безумно... однако мы не всегда можем позволить реагировать на все пожелания, так как его зачастую не хватает времени на вдумчивую проработку. Деньги дело наживное, в конце концов время можно обменять на деньги, время на деньги уже не купишь. Нам эта ситуация не нравится и при первой возможности мы постараемся её исправить.

   
 
 автор: кеnt   (30.03.2008 в 18:42)   письмо автору
 
   для: cheops   (13.03.2008 в 13:39)
 

Здравствуйте.
И все же хотелось бы услышать ответ на вопрос по поводу ошибки
Parse error: parse error, unexpected '{' in /www/rek21/www/htdocs/dmn/system_accounts/index.php on line 29

Еще вопрос, в README сказано:


По умолчанию, счётчик считает страницы, отличающиеся только параметрами, за одну
страницу, например страницы
index.php?id=1
index.php?id=2
будут считаться как одна и та же страница, со всеми вытекающими. Для того, чтобы
такие страницы считались как разные необходимо заменить $_SERVER['PHP_SELF'] на
$_SERVER['REQUEST_URI'] в файле count.php. Для этого можно просто открыть файл
в блокноте и воспользоваться функцией автозамены.


Соответственно с описанным проблем не возникает, НО в коде того же count.php есть, к примеру, следующие куски:

// Если название данной страницы отсутствует в таблице pages
// то проверяем сраницу по ее адресу.
else
{
$query = "SELECT id_page FROM $tbl_pages
WHERE name='$_SERVER[PHP_SELF]'";


Вопрос в следующем, нужно менять в WHERE name='$_SERVER[PHP_SELF]'";
на
WHERE name='$_SERVER[REQUEST_URI]'";

Следующий вопрос:

в REQUEST_URI - это опечатка и надо читать: REQUEST_URL ?

Следующий вопрос:
вроде, судя по ответу выше, в дистрибутив должны были включить классы, но их там нет. Почему?

И пока последний вопросик:

почему не заменили index.php в корневой директории на правильный и с номером версии 4.0, там до сих пор стоит 3.3.7

С уважением.

   
 
 автор: ddhvvn   (30.03.2008 в 20:00)   письмо автору
 
   для: кеnt   (30.03.2008 в 18:42)
 

>в REQUEST_URI - это опечатка и надо читать: REQUEST_URL ?

Нет, это не опечатка!

   
 
 автор: mihdan   (30.03.2008 в 21:44)   письмо автору
 
   для: кеnt   (30.03.2008 в 18:42)
 

Классы лежат в разделе рядом что и сам скрипт ))

   
 
 автор: cheops   (31.03.2008 в 10:51)   письмо автору
 
   для: кеnt   (30.03.2008 в 18:42)
 

>вроде, судя по ответу выше, в дистрибутив должны были включить классы, но их там нет.
>Почему?
Действительно в первые часы после того, как дистрибутив был выложен, классы отсутствовали, если вам не сложно, загрузите обновлённый дистрибутив из раздела downloads.

   
 
 автор: sergprom   (01.04.2008 в 21:54)   письмо автору
 
   для: cheops   (31.03.2008 в 10:51)
 

Вчера 31.03.2008 скачивал дистрибутив, как выяснилось классов там нет. Сегодня 1 апреля скачал повторно - классов опять нет. Идёт доработка, или забыли добавить?

   
 
 автор: cheops   (02.04.2008 в 00:33)   письмо автору
 
   для: sergprom   (01.04.2008 в 21:54)
 

Да, к сожалению, был обновлён не тот файл, если не сложно, загрузите его ещё раз.

   
 
 автор: not-alone   (04.04.2008 в 21:08)   письмо автору
 
   для: cheops   (02.04.2008 в 00:33)
 

Parse error: parse error, unexpected '{' in /www/rek21/www/htdocs/dmn/system_accounts/index.php on line 29
каким образом лечится эта ошибко?

   
 
 автор: ReZiStOr   (05.04.2008 в 01:25)   письмо автору
 
   для: not-alone   (04.04.2008 в 21:08)
 

Я вот сижу читаю это все и думаю а вам (к разработчикам) не проще было бы протестить все это а потом вылаживать для скачки. Так бы и вопросов было бы меньше и они были бы направлены в "нужную" сторону.
... Убивает

   
 
 автор: not-alone   (05.04.2008 в 02:12)   письмо автору
 
   для: ReZiStOr   (05.04.2008 в 01:25)
 

+1

   
 
 автор: cheops   (05.04.2008 в 12:01)   письмо автору
 
   для: ReZiStOr   (05.04.2008 в 01:25)
 

Всё протестировано - счётчик в течении полугода использовался на нескольких хостах, ошибка обозначенная выше означает, что вместо PHP 5 используется PHP 4.

   
 
 автор: Atheist   (05.04.2008 в 13:03)   письмо автору
 
   для: cheops   (05.04.2008 в 12:01)
 

Так тогда надо при установке или просто где-то скрипте проверять версию PHP.

   
 
 автор: Радосвет   (16.04.2008 в 04:13)   письмо автору
 
   для: not-alone   (04.04.2008 в 21:08)
 

>Parse error: parse error, unexpected '{' in /www/rek21/www/htdocs/dmn/system_accounts/index.php on line 29
>каким образом лечится эта ошибко?

Установите версию PHP 5 :)

   
 
 автор: Радосвет   (16.04.2008 в 00:05)   письмо автору
 
   для: cheops   (13.03.2008 в 13:39)
 

Друзья, подскажите, как правильно обновить с версии 3.7?
В новой версии появилась папка dmn, несколько файлов конфигурации...
Непонятно, что куда загрузить нужно?

Апдейт базы привёл к ошибке "Table 'user_base.system_ip' doesn't exist"

Даже если я всё заново переустановлю, не знаю что куда загружать... помогите! :)))

   
 
 автор: Радосвет   (16.04.2008 в 08:45)   письмо автору
 
   для: Радосвет   (16.04.2008 в 00:05)
 

Да уж... :)
Пришлось делать самому, как всегда... :)
Не так, как хотел, но пока всё работает...

Одно не пойму, куда исчезло меню "Ссылки", там, где добавляются сайты вручную для подсчётов? :)

   
 
 автор: cheops   (17.04.2008 в 13:57)   письмо автору
 
   для: Радосвет   (16.04.2008 в 00:05)
 

Для обновления необходимо выполнить файл update.sql

   
 
 автор: AlexDIXI   (16.04.2008 в 14:18)   письмо автору
 
   для: cheops   (13.03.2008 в 13:39)
 

Импортировал базу, прописал в config.php и count.php доступ в БД.
захожу (http://localhost/stats/dmn) меня редиректит http://localhost/stats/dmn/system_accounts/index.php пусто...
Я что-то забыл настроить?

   
 
 автор: Радосвет   (16.04.2008 в 23:08)   письмо автору
 
   для: AlexDIXI   (16.04.2008 в 14:18)
 

>Импортировал базу, прописал в config.php и count.php доступ в БД.
>захожу (http://localhost/stats/dmn) меня редиректит http://localhost/stats/dmn/system_accounts/index.php пусто...
> Я что-то забыл настроить?

Какая версия php?

Что если вручную ввести адрес http://localhost/stats/dmn/system_powercounter/index.php ?

   
 
 автор: AlexDIXI   (17.04.2008 в 06:22)   письмо автору
 
   для: Радосвет   (16.04.2008 в 23:08)
 

>>Импортировал базу, прописал в config.php и count.php доступ в БД.
>>захожу (http://localhost/stats/dmn) меня редиректит http://localhost/stats/dmn/system_accounts/index.php пусто...
>> Я что-то забыл настроить?
>
>Какая версия php?
>
>Что если вручную ввести адрес http://localhost/stats/dmn/system_powercounter/index.php ?

Пусто - из-за выключеных ошибок, я не могу понять в чем дело.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования