- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Доброго дня! Есть страничка которая забирает погоду с другого сайта. Проблема в том что если сайт с которого берется погода или страница недоступны, то у меня все что идет ниже кода граббера погоды в том числе и подвал не отображаютя. В чем может быть проблема?
Код:
<?include ($_SERVER['DOCUMENT_ROOT'].'/1.html');?> (подключается шапка сайта)
Погода:
<table width="80%" cellpadding=3 cellspacing=1 border=0>
<tr bgcolor=#779288>
<?php
$url = 'http://sait.ru/pogoda.html';
$beginBlock = '<tr bgcolor=#779288>';
$endBlock = '</tr></table>';
$fp = @fopen($url, 'r');
if (!$fp) exit();
$data = '';
while(!feof($fp))
{
$data .= fgets($fp, 8192);
}
fclose($fp);
$pattern = '%' . $beginBlock . '(.*)' . $endBlock . '%isU';
if (!preg_match($pattern, $data, $matches))
{
exit('dfgd');
}
echo isset($matches[1]) ? $matches[1] : '';
?>
</tr></table>
<?include ($_SERVER['DOCUMENT_ROOT'].'/2.html');?> (подключается подвал сайта)
конструкция exit тебе все портит, если урл не доступен код перестает обрабатываться!решений можно много замутить например выводить что погода не доступна или пару других урлов подгрузить!
конструкция exit тебе все портит, если урл не доступен код перестает обрабатываться!решений можно много замутить например выводить что погода не доступна или пару других урлов подгрузить!
Спасибо, я уже в курсе насчет exit, проблема решена.
А если заменить это
на это
и создать в директории со скриптом поддиректорию cache с правами 777, то погода будет кешироваться, и при недоступности сайта погоды, она будет выводиться из кеша.
Кеш так же можно использовать для ускорения работы скрипта, тоесть грузить удаленную страницу не для каждого посетителя, а, например, раз в 15 минут. Все остальные зарпосы же брать из локального кеша.
loed, вам самокат camokat правильно подсказывает, особенно про таймаут: вы пытаетесь при каждой загрузке погоду заполучить. А зачем? она же не ежесекундно меняется. Интвервал 2-3 часа вполне нормальный (либо по дате файла. либо в базу писать время последней проверки)
А если заменить это
и создать в директории со скриптом поддиректорию cache с правами 777, то погода будет кешироваться, и при недоступности сайта погоды, она будет выводиться из кеша.
Кеш так же можно использовать для ускорения работы скрипта, тоесть грузить удаленную страницу не для каждого посетителя, а, например, раз в 15 минут. Все остальные зарпосы же брать из локального кеша.
Очень заинтересовало такое решение. Все сделал как написали, теперь при недоступности страницы с погодой, погода всеравно показывается но в папке cache нет никакого файла weather.php??? Откуда она берется теперь??? Но все работает!!!
Хм, так не бывает. Если файла нет, то кеша не буде. Может Вы что то попутали или посмотрели в папку, когда кеша не было :) Довольно странная ситуация
Да, сейчас появился.
Вот, дописал с запросом погоды раз в 2 часа с сервера, остальное время берется из кеша. Работать будет намного быстрее.
Отлично! Огромное спасибо!