Хостинг на masterhost.ru и hc.ru

mimic

Новичок
Хостинг на masterhost.ru и hc.ru

Один скрипт запускаю на 2х разных хостингах, один работает, другой нет, в чем может быть проблема?
Нужен рабочий на mh.
(На мастерхосте - PHP Version 5.2.5, на hc - PHP Version 4.3.9.)
Скрипт search.php с ipgeobase.ru (http://ipgeobase.ru/files/soft/search_php.tar.gz)
 

mimic

Новичок
уточните, пожалуйста, каким образом мне поможет print_r?
 

Alkinoy

Начинающий
Re: Хостинг на masterhost.ru и hc.ru

Автор оригинала: mimic
Оодин работает, другой нет, в чем может быть проблема?
тут проблема в слишком маленьком значении системной переменной. нужно увеличить как минимум в два раза.
 

mimic

Новичок
Re: Re: Хостинг на masterhost.ru и hc.ru

Автор оригинала: Alkinoy
тут проблема в слишком маленьком значении системной переменной. нужно увеличить как минимум в два раза.
опять не понимаю о чем идет речь, уточните, пожалуйста, какая именно системная переменная
 

Alkinoy

Начинающий
Re: Re: Re: Хостинг на masterhost.ru и hc.ru

Автор оригинала: mimic
опять не понимаю о чем идет речь, уточните, пожалуйста, какая именно системная переменная
уточните пожалуйста, КАК именно не работает....
 

mimic

Новичок
не выводится результат поиска по файлу cidr_ru_master_index.db
 

Alkinoy

Начинающий
пропущен оператор echo.

-~{}~ 07.04.08 18:15:

открыл исходник... много плакал....

автор, вы слышали о форматировании исходников?
 

mimic

Новичок
:))) это не мой исходник

пропущен оператор echo.
в каком месте?
и врядли проблема в этом, т.к. на других серверах скрипт работает

-~{}~ 07.04.08 21:45:

Автор оригинала: Alkinoy
тут проблема в слишком маленьком значении системной переменной. нужно увеличить как минимум в два раза.
видимо Alkinoy был прав, действительно
при попытке
$var = file(big_file.txt);
выдал
Fatal error: Allowed memory size of 20971520 bytes exhausted (tried to allocate 118 bytes)

Как можно увеличить значение системной переменной?
 

dimagolov

Новичок
mimic, а с чего решил, что тому скрипту надо больше 20 мег памяти? лог ошибок смотреть не пробовал?
 

mimic

Новичок
Автор оригинала: dimagolov
mimic, а с чего решил, что тому скрипту надо больше 20 мег памяти? лог ошибок смотреть не пробовал?
смотреть пробовал, ничего нового там не увидел
все та же ошибка
Fatal error: Allowed memory size of 20971520 bytes exhausted (tried to allocate 115 bytes) in /search.php on line 96
где 96 строка содержит
$var = file(big_file.txt);
 

Gas

может по одной?
mimic
ф топку тогда такой скрипт, который называется serach.php и пытается при каждом запуске читать в память файлы свыше 20MB.
 

mimic

Новичок
файл весит 10 ))))

но то что придется сливать файл в БД это точно,
а как же все таки решить эту проблему?
 

dimagolov

Новичок
mimic, 10 - 20, какая нафиг разница???? обычный лимит который лучше почти никогда не достигать это 16М.

скрипт конченый, но если тебе он очень дорог, попробуй переделать на построчное чтение, а вообще такое в БД держать надо.

-~{}~ 07.04.08 15:47:

да, про БД. он то наверняка в этой строке что-то ищет. это должна делать БД по индексированным полям
 

mimic

Новичок
Всем спасибо за участие.
Задача решена с использованием БД, скрипт полностью переписан.
10 тыс. строк помещается в БД примерно за 10 сек.
Поиск происходит знаааачительно быстрее.
 

dimagolov

Новичок
mimic, а какая разница как быстро помещаются данные в БД? это же не при каждом запросе делать надо....
 

mimic

Новичок
ну да, не при каждом,
вот только на мастерхосте до сих пор не удается произвести эту загрузку (на локалхосте удалось),
время выполнения скрипта превышает max_execution_time равный 30,
ini_set ('max_execution_time', 60) не помогает,
видно, рано обрадовался.
как быть?
 

ys

отодвинутый новичок
>как быть?

предлагаю, перестать писать, начать читать.
 

dimagolov

Новичок
mimic, во-первых поставь register_shutdown_function и смотри кто и почему тебя убивает (см. connection_status()), ну и потом set_time_limit(0); чтобы не было вопросов...
и читай файл построчно, чтобы память не жрать без меры
да, вот еще. можно в БД писать версию файла (его дату, размер) и последнюю успешно занесенную строку, вернее ее seek. так можно будет загрузить файл в несколько заходов, если он не менялся
 
Сверху