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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Массив PHP или таблица MySQL

Сообщения:  [1-9] 

 
 автор: Alex14   (04.01.2008 в 02:54)   письмо автору
 
   для: mihdan   (03.01.2008 в 00:07)
 

Не знаю, у меня после включения LogFormat в .htaccess выдаётся сообщение об ошибке
d:/www/.htaccess: LogFormat not allowed here

Кстати, кто-нибудь может сказать, как лучше накапливать массив в файле, записывая не сразу весь, а по одной строке. Сериализация в данном случае не проходит, т.к. массив постоянно дополняется. На данный момент я записываю строки в файл следующим образом
$fid = fopen("tempfile", "a");
$str = "array(\"sid\"=>\"$sid\", \"ip\"=>\"$ip\", ...),";
fwrite($fid, $str);

а потом, уже в другом скрипте, извлекаю накопленный накопленные данные в массив $arr функцией eval:
$s = join("", file("tempfile"));
eval("\$arr = array($s);");

Может есть более продвинутый способ?

   
 
 автор: mihdan   (03.01.2008 в 00:07)   письмо автору
 
   для: Alex14   (02.01.2008 в 22:30)
 

> можно менять формат логов в .htaccess
Спрашивал я это где-то год назад, на что администраторы подробно ответили

http://softtime.ru/article/index.php?id_article=99

   
 
 автор: Alex14   (02.01.2008 в 23:20)   письмо автору
 
   для: Faraon   (02.01.2008 в 23:06)
 

Первую "куку" (условно, какой-нибудь обрезанный md5) я сам ставлю и пишу её в лог, а последующие уже берёт скрипт из $_SERVER['COOKIE'] или Apache из запроса браузера, и пишет в лог. Так идентифицируются разные пользователи с одним IP-адресом. Что запретного вы увидели?

А насчёт велосипеда - да, имеет смысл, хочу чтобы всё в браузере выглядело красиво и структурировано, статистика за период и т.д. Могу подробней рассказать, но тема не об этом.

   
 
 автор: Faraon   (02.01.2008 в 23:06)   письмо автору
 
   для: Alex14   (02.01.2008 в 22:30)
 

>Во-первых, в них нет кук.
Чьих кук, пользователей?
Итересно зачем Вам они нужны?
Вы представляете, как вы сможете взять кукисы из машины пользователя, не применяя запретных методов?

   
 
 автор: Alex14   (02.01.2008 в 22:30)   письмо автору
 
   для: Faraon   (02.01.2008 в 22:25)
 

Во-первых, в них нет кук. Во-вторых, не уверен, что можно менять формат логов в .htaccess. Задавал этот вопрос в форме Apache, но никто не ответил к сожалению. Мне кажется, что формат можно менять только в httpd.conf, на что имеет право только администратор сервера.

   
 
 автор: Faraon   (02.01.2008 в 22:25)   письмо автору
 
   для: Alex14   (02.01.2008 в 22:09)
 

Интересно, а такой статистикой нельзя ли воспользоваться логами Апача?
или есть необходимость изобретать велосипед?

   
 
 автор: Alex14   (02.01.2008 в 22:09)   письмо автору
 
   для: Faraon   (02.01.2008 в 21:46)
 

Пример массива - лог счётчика посещений: в каждой строке кука, IP-адрес, браузер, реферер, просмотренная страница и время. Строк столько, сколько хитов, т.е. может быть много. Эту информацию можно хранить во временном файле или временной таблице, которые потом анализируется и из них создаются уже постоянные таблицы в БД, с которыми и работает скрипт-анализатор статистики. После этого временное хранилище удаляется. Возникает несколько вопросов:
1. Куда быстрей писать - во временный файл (кстати, имеет ли смысл блокировка) или временную таблицу (insert delayed).
2. Т.к. анализ временного хранилища достаточно сложен (для меня), то при возникает вопрос - грузить его в БД (если временное хранилище - таблица, то оно там уже есть) и обрабатывать уже запросами MySQL или же грузить в массив PHP и обрабатывать функциями PHP.

   
 
 автор: Faraon   (02.01.2008 в 21:46)   письмо автору
 
   для: Alex14   (02.01.2008 в 19:33)
 

>Двумерный массив строк, по горизонтали 6
Приведите пример массива. Без тысячи строк, а только несколько.
И где Вы храните этот массив?

Думаю лучше использовать БД.

   
 
 автор: Alex14   (02.01.2008 в 19:33)   письмо автору
 
 

Двумерный массив строк, по горизонтали 6 по вертикали порядка тысячи. Необходимы богатый набор функций для выборки/обработки (для простоты кодирования) и высокая скорость работы. Есть два варианта - сохранять строки в двумерный массив PHP или в таблицу MySQL. Что лучше, какие плюсы и минусы у каждого варианта?

   

Сообщения:  [1-9] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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