WhiteFalke

WhiteFalke
Рейтинг
184
Регистрация
16.09.2007
Pavel2005:
С утра отписался в техподдержку. Ответа нет.

Это называется круглосуточная техподдержка?

Pavel2005 добавил 13.09.2008 в 15:37
Уже нет желания работать :)

Мне в течении суток ответили. Считаю нормальным. В бегуне мне отвечали от 3х до 5ти дней.

BrokenBrake:
Оригинально :) Через robots.txt нельзя закрыть ссылку. Если уж такая жадность - редирект делайте, либо JS.

Во блин.. не знал.. Пошел капать как тогда можно код подправить

WhiteFalke добавил 07.09.2008 в 22:55

Помогла функция str_replace.

Вопрос решен усилиями - gerkon, спасибо.

Человек довольно быстро сделал то что мне было нужно, с учетом всех моих прибабахнутых пожеланий. Скрипт полностью работоспособен. Плюс, gerkon, добавил возможность многопоточной работы, хотя об этом я не просил, но было приятно получить такой бонус :) Работой доволен. В общении приятный человек с чувством юмора.

В будущем буду обращаться.

Заметил странную вещь, на многих сайтах есть исключенные из поиска станицы, по разным причинам, почему то когда начинается АП, ночью, в индексе показывает ВСЕ страницы, и те что вылетели и те что влетели новые, а к утру все возвращается на места, кроме новых, они остаются :)

Записался вторым. Отписал в Аську

Есть еще 1 нужный скриптик для разбивки текста.

Имеем текст, его разбить на равные кусочки нужно.

Например по 3000 символов, этот параметр задается.

Далее, построчно считываем каждую строку, и суммируем кол-во символов, желательно без учета пробелов. Как только сумма >3000 вставляем новую строку, текст которой тоже что бы можно было менять, напрмиер "Часть 1", слово задается, а вот цифирка рядом задается соответственно тому какая это часть.

Почему именно >3000 а не ровно 3000, просто что бы он целиком считывал строку, а не обрывал на полуслове..

Может кто напишет? Буду признателен. Ну не селен я в ПХП :(

gerkon:
Более того - попробуйте его на VertrigoServ - я уверен, он не будет выдавать Fatal Error. Это очень удобно тем, что его можно использовать на любых хостингах.

Все верно, ошибку не выдавал и на нем. Спасибо!

А страниц у сайта сколько? Внутренние морде тоже вес передают.

gerkon:
Проблема не в этом. Я уже сталкивался с проблемой
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 35 bytes) in C:\Program Files\VertrigoServ\www\FC\replase\replase.php on line 11
раньше, когда парсил файлы партнёрских магазинов. Файл в 5 мегабайт парсился, в 19 мегабайт - выдавал такую ошибку.

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

Проблема решается использованием другого пути - вот выкладываю - может кому-нибудь пригодится:

<?php

/**
* @author Gerkon
* @copyright 2008
*/
// Текстовый файл.
$file = "testfile.txt";
// Временный файл, который будет создаваться при работе скрипта.
$tmpfile = "testfile2.txt";

// Проверяем файл на доступность, чтобы не плодить мегабайты error_log'a
if (!file_exists($file))die("Исходного файла не существует!!");
// Открываем файл
$handle = fopen($file, "r");
// Создаем временный файл
$temp = fopen($tmpfile,"w+");

// До конца файла
while (!feof($handle)) {
// Читаем каждуюстроку
$buffer = fgets($handle, 14096); // Строка не должна быть больше 14096 байт! Если больше - меняем значение!
// Проверяем есть ли <H1> в начале и </H1> в конце
if (eregi("^<h1>",$buffer) && !eregi("</h1>",$buffer))
// Тогда добавляем закрытый тег
$buffer = str_ireplace("\n","</h1>\n",$buffer);
// И записываем строку во временный файл
fputs($temp,$buffer);
}
// Закроем дескрипторы файлов
fclose($handle);
fclose($temp);
// Удалим старый файл
unlink($file);
// Переименуем новый файл
rename($tmpfile,$file);
echo "Операция успешно выполнена!";

?>

Да, вот этот код работает лучше чем тот который я привел.

Всего: 1906