Рассылка закрыта
При закрытии подписчики были переданы в рассылку "Заработок в Интернет: cоздание, продвижение и монетизация сайта/блога" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Февраль 2003 → | ||||||
1
|
2
|
|||||
---|---|---|---|---|---|---|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
14
|
15
|
16
|
17
|
18
|
19
|
22
|
23
|
||
24
|
25
|
26
|
27
|
28
|
Статистика
0 за неделю
Интернет технологии
Информационный Канал Subscribe.Ru |
Выпуск №1
Это первый выпуск рассылки о компьютерных технологиях. В этой рассылке будут разные секреты программирования, обучения разным языкам программирования, обсуждение различных сайтов, заработок в сети, взломы, некоторые программы, безопасность, Интернет, железо и много очень много другого! Рассылка будет выходить раз в неделю, иногда раз в две недели.
Сегодня в выпуске:
![]() |
WEB Технологии |
Отправка писем
через PHP.
Защита информации на своём сайте.
![]() |
Сайты в Интернете |
Ищем лучшее место для
почты!
Выбераем бесплатный хостинг.
Обсуждаем, критикуем и ругаем.
![]() |
Программирование |
Импортирование
информации с чужого сайта на свой сайт в свой
дизайн.
![]() |
WEB Технологии |
![]() |
Отправка писем через PHP | ![]() |
Автор:
Алекс aka TrigGerИсточник: kovrik.hut.ru
Как отправить письмо через PHP, используя формы, и как при этом устранить возникающие проблемы с кодировкой?
Этот вопрос терзает многих начинающих web-мастеров, так как они незнают как подойти к решению данной проблемы. Попытаюсь облегчить их задачу и влезу в их шкуру, так как я и сам был когда-то зеленым и этого тоже не знал.
Рассмотрим на простом примере, как отправить вопрос через формы на сайте. У нас будет 3 поля для ввода:
Ваше имя:
* E-mail:
* Вопрос:
Причем "Ваше имя" не является обязательным параметром. А все остальные поля, помеченные звездочкой, являються обязательными. От этого и будем плясать, когда пользователь не введет свое имя или укажет не правильный e-mail или его вообще не напишет. Выводить будем как ошибку, но об этом позже. Для простоты и удобства разместим форму и код прогараммы в одном файле. Важно указать кодировку страницы (windows-1251), чтобы далее не возникало проблем с перекодированием из win в koi (ниже)
Итак, приступим. Начало документа стандартное:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Отправка письма</title>
<meta content="text/html;charset=windows-1251" http-equiv="Content-Type">
</head>
<body>
Далее идет 2 логические части:
1 - вывод формы
2 - обработка формы и отправка письма
Вначале идет вывод формы.
Для удобства в начале определяем e-mail через переменную $mailto, на который будет отсылаться письмо из формы. Далее мы определяем, была ли нажата кнопка "отправить". В конце формы имеется кнопка "отправить", она имеет аттрибуты name="ok" и value="отправить". Этот аттрибут вам придеться вписать самостоятельно, так как он отличается от стандартного (если такой аттрибут вообще есть). После нажатия на нее переменная $ok будет иметь значение "отправить". Если кнопка не нажата, то переменная не определена. Таким образом, выражение if (empty($ok)) означает буквально "если кнопка отправить не была нажата". Функция empty() возвращает true, если переменная не определена, содержит 0 или пустоту.
<?
$mailto="name@server.ru";
if (empty($ok))
{
?>
Далее идет вывод формы, если выполнено предыдущее условие if (empty($ok)).
Переменная $PHP_SELF означает, что обработку формы производит текущий файл, т.е. тот же, на кот. расположена форма.
<h3>Отправьте вопрос автору сайта</h3>
Поля, отмеченные (*), обязательны для заполнения.
<br><br>
<form action="<?echo $PHP_SELF;?>" method="post">
<table>
<tr>
<td>Ваше имя:</td>
<td> <input type="text" name="username" size="30" maxlength="20"></td>
</tr>
<tr>
<td>* E-mail:</td>
<td><input type="text" name="mailfrom" size="30" maxlength="50"></td>
</tr>
<tr>
<td>* Вопрос:</td>
<td><textarea cols="50" rows="10" name="question"></textarea></td>
</tr>
</table>
<input type="submit" name="ok" value="отправить">
</form>
В противном случае, т.е. если была нажата кнопка, идет обработка формы и отправка письма
<?
}
else
{
Хочу предупредить переменная $PHP_SELF не всегда работает на том или ином хостинге, предоставляющим вам место под сайт. В принципе вы можете оставить ее как есть и выложить ее на сервак, а там уже тестировать, при условии, что вам разрешен sendmail. Если окажеться, что эта переменная не работает, то не отчаивайтесь просто поменяйте ее на название файла, где у вас форма. Должно получиться так, что файл с формой будет обрабатывать сам себя.
Далее идет проверка на корректность заполнения поля "E-mail". Любители ругулярных выражений эту проверку поймут. Для остальных немного поясню:
Подразумевается, что e-mail должен быть такого вида:
слово@слово.слово
При этом слово может состоять из всех букв латинского алфавита и цифр и точка может быть не одна. (например слово@слово.слово.слово)
[a-z,0-9] - означает "любая буква латинского алфавита или цифра"
+ - означает, что [a-z,0-9] может встречаться 1 или более раз.
Если введен неправильный e-mail, то в переменную $error записывается ругательное сообщение.
if(!preg_match("/^([a-z,0-9])+@([a-z,0-9])+(.([a-z,0-9])+)+$/", $mailfrom))
{
$error = "Не верно заполнено поле: <b>E-mail</b><br>";
}
Этого может быть оказаться не достаточно для того, чтобы проверить форму на наличие e-mail. В таком случае записываем ниже:
if (empty($mailfrom))
{
$error="Не заполнено поле:<b>E-mail</b><br>";
{
Таким же способом можно проверять и имя пользователя, только меняя переменную. Проверять можно что угодно и выводить на экран тоже - это уже на ваше усмотрение.
Если поле "Вопрос" не заполнили, то к переменно $error добавляем еше одно ругательство:
if (empty($question))
{
$error = "Не заполнено поле: <b>Ваш вопрос</b><br>";
}
Если переменная $error не пустая, то мы ее выводим на экран и немедленно прекращаем дальнейшую обработку с помощью exit, то есть скрипт прекращает обработку формы и выводит сообщение об ошибке.
if ($error)
{
echo $error;
echo "<br><a href=\"javascript:history.go(-1)\"
class=\"text\">Вернуться назад</a>";
exit;
}
Ну а если таки $error осталась пустой и exit не сработал, то можно приступать к отправке письма, т.е. главной цели всего этого мероприятия...
Сформируем тему и тело сообщения:
$subject="Вопрос от $mailfrom";
$body="Имя:
$username
E-mail:
$mailfrom
Комментарии:
$question";
А теперь самое главное, чтоб потом можно было прочитать письмо "по-русски" :) Функция convert_cyr_string перекодирует строку из win в koi (w-win, k-koi) Это необходимо, т.к. все почтовые клиенты по дефалту принимают письма в koi. А у нас вверху страницы стоит charset=windows-1251, поэтому функция грамотно переводит из win в koi Затем с помощью функции mail отправляется письмо на $mailto, указанный в начале файла.
$body=convert_cyr_string (stripslashes($body),w,k);
$subject=convert_cyr_string (stripslashes($subject),w,k);
$sucess = mail($mailto, $subject, $body,
"From: $email
X-Mailer: PHP/" . phpversion());
Ну и самое приятное... Если письмо успешно отправлено, то выводим благодарственную надпись и предлагаем вернуться..
if ($sucess)
{
echo "Спасибо. Ваш вопрос отправлен.<br><br>";
echo "<a href=\"javascript:history.go(-1)\"
class=\"text\">Вернуться назад</a>";
}
Стандартный конец..
}
?>
</body>
</html>
P.S. Как наверно понял читатель, нужно выделить и скопировать все синие блоки в один файл по порядку и запустить его на сервере. Весь код является полностью проверенным и рабочим. Кстати. чуть не забыл, когда выложите страницу на сервак, то нужно выставить им права доступа к этой страницы с помощью любого FTP-клиента. Это так называемые chmod. Ознакомтесь с интсрукциями на сервере хостинга. Обычно это 711 или 755. Советую ставить 755, тогда точно пользователь получит право ознакомиться с вашей страницей. Выставляйте права так: chmod 755 nameyourpage.php
Удачи!!!
Данная статья взята из журнала Web Star (http://www.kovrik.hut.ru/)
![]() |
Защита информации на своём сайте | ![]() |
Автор:
Евгений В. ЖдановИсточник: http://protoplex.ru/
Довольно часто в Интернете можно увидеть одни и те же материалы на нескольких сайтах одновременно. Причем есть один сайт-первоисточник, а другие просто дублируют его информацию, в лучшем случае сославшись на него, иногда и вовсе не ссылаясь, в некоторых случаях воруя чужое авторское право, называя себя источником. Таким образом владельцы этих дублирующих ресурсов, занимаясь плагиатом, захламляют всю сеть грудой одной и той же информации. С одной стороны это хорошо, что при недоступности одного из сайтов, можно запросто просмотреть нужную информацию на другом. Но это лишь хорошо в том случае, когда все происходит с разрешения автора. Когда владелец какого-то сайта обращается к владельцу сайта-первоисточника с просьбой разрешить ему разместить у себя на сайте полезную ему информацию. В таких случаях авторы обычно отвечают согласием, правда, при условии ссылки на первоисточник. Именно с согласия автора, а никак не по собственному желанию можно размещать у себя на сайте чужую интеллектуальную собственность. Это дело чести всех уважающих себя веб-мастеров, всех тех, кто сам что-то пишет или производит.
Но увы, не все такие честные и непогрешимые. Многие начинающие хомячки, владельцы собственных страничек, размер который слишком мал не только из-за отсутствия собственного созидательного таланта создателя, но и из-за самой спешки создания, очень часто выкладывают на своих сайтах чужую информацию. Ценой такой ужасной неосведомленности в правовых аспектах такого поведения могут явиться либо просто угрозы со стороны авторов, нашедших свои материалы на "левых" сайтах, либо конкретные меры воздействия на вора. Все зависит от настроя автора и серьезности проступка, ведь бывает так, что на домашние странички ставят чужую информацию и подписываются авторами дети или подростки, которых можно просто предупредить (запугать-, отпинать- нужное подчеркнуть :), а иногда копируют целые базы данных или дорогие программы :( Конечно, нам до этого еще далеко, нас интересует лишь защита своих сайтов от злоумышленников. Ведь когда наша информация лежит везде и всюду, наш сайт теряется среди других и теряет своих потенциальных посетителей, а это так обидно, мы ведь так старались.
Теперь подумаем, что теряется прежде всего? Правильно, текст на сайте. Именно его и индексируют такие поисковые роботы как Yandex или Google, также как и другие тоже. Выложив на сайте свою новенькую статью или обзорчик, через недельку вы с удивлением обнаружите (поискав тем же Яндексом) свой труд на десятке различных страничек, причем иногда без ссылок. Просто не могут у нас без плагиата :) Бороться с этим можно, но нужно ли? Стоит ли тратить силы и нервы на всяких там Вась Пупкиных, использующих ваш труд в своих корыстных целях в собственном бессилии создать что-то оригинальное. Думаю, что нет. Я и сам раньше пробовал с этим бороться, но безуспешно. Поругавшись с одним, находил пять других, затем еще и еще. Это лишь напрасная трата времени и сил, которые, кстати, можно потратить на ту же созидательную деятельность :)
Ну а раз бороться с ними своими силами не выгодно, то можно хотя бы немного усложнить им жизнь. Только из чувства насолить "злобным перцам" можно воспользоваться несколькими способами:
В тег <BODY> вставить слова oncopy="return false" чтобы получилось что-то вроде <body topmargin=5 leftmargin=5 rightmargin=5 bottommargin=5 oncopy="return false" bgcolor=white text=black> Что это дает? Ни много-ни мало, а запрещает проводить копирование текста в браузере. Т.е. у потенциального воришки не получится выделив кусок текста скопировать его в буфер. Точнее сказать, он сможет выделить текст, сможет вызвать всплывающее меню правой кнопкой мыши, но вот копирования не произойдет, так как данное свойство в теге BODY просто выдает нулевой результат. И ничто уже не поможет, даже нажатие Ctrl-C или Ctrl-Insert :)
Конечно, это не выход. Даже заблокировав копирование прямо со странички, вы никак не сможете помешать любому человечку просмотреть исходник страницы в том же блокноте. Он просто возьмет да и выделит кусок текста прямо из исходника. Кстати, тут немного усложнится его жизнь, ведь он также скопирует и все теги и все форматирование :) Ну а если вебмастер нахально исключит из своих страниц все переносы строк, то потенциальный вор будет долго и упорно скролить исходник, жадно пялясь в экран до посинения. Сколько времени ему понадобится, чтобы найти нужный блок текста? Все зависит от сложности самого кода. Заметьте, что данный метод очень эффективен, ведь для того, чтобы найти что-то в сложном исходнике требуется затратить некоторое время. Профессионалу не составит особого труда найти, что угодно и где угодно, но насколько усложнится жизнь простых ламеров :)
В тег <BODY> вставить слова onselectstart="return false" чтобы получилось что-то вроде <body topmargin=5 leftmargin=5 rightmargin=5 bottommargin=5 oncopy="return false" onselectstart="return false" bgcolor=white text=black> - это запрещает выделение элементов и текста страницы. Т.е. при попытке что-либо выделить мышью, вы сразу увидите большую-большую фигу на весь экран :) Я не люблю этот метод, так как это сразу выдает автора страницы. Потенциальный злыдень быстро заметит вашу хитрость и сразу возьмется за исходник. Другое дело - разрешить выделение, но запретить копирование, как в первом случае. Злобный чел, собравшийся нечестно воспользоваться вашим контентом по привычке выделит нужный ему текст и нажмет CTRL-C или CTRL-INSERT. В полной уверенности, что скопированный текст находится в буфере обмена, т.е. под рукой, человечек загрузит любимый 1st Page и полезет исправлять свой сайт. Найдя ту страничку, куда он хочет забить текст и нажав CTRV-V или SHIFT-INSERT, он с удивлением обнаружит, что у него ничего не вышло. Первая мысль будет о том, что не нажалась кнопка. Хорошо. Пробует еще разочек - опять облом. Так он может обламываться до тех пор, пока до него не дойдет, что над ним поглумились :)
Усложняя жизнь тех, кто постоянно пользуется чужой информацией вы не просто отучаете злобных человечков от грязных делишек, но и посвящаете себя благой цели - очищению Интернета от мусора. Информация всегда полезна, пока она оригинальна и ее мало. Когда же ее много, полезная информация становится хламом. Сегодняшний Интернет - хлам информации. Чем оригинальнее будет информация (чем меньше ее копий), тем легче будет находить в сети что-то нужное. Может быть тогда мы научимся находить что-либо с первого раза :)
Данная статья взята из журнала Web Star (http://www.kovrik.hut.ru/)
![]() |
Сайты в Интернете |
![]() |
Ищем лучшее место для почты! | ![]() |
Автор: Стороженко Иван Иванович
Mail:
Одним из важных вопросов в интернете является выбор почтового сервера. Если вы не знаете где разместить ваш почтовый ящик, то эта статья для вас, хоть она и не укажет вам на прямую где регестрироваться, но натолкнёт вас на правильный путь, а решать уже вам. У так проведём исследование.
@Mail.ru (@inbox.ru, @bk.ru)
Все считаю, что этот почтовый сервер первопроходец в России. Нет, он не был первым, он был заметным – рекламная компания быстро сделала этот почтовый сервер самым популярным в России и союзных республиках. Сегодня это не просто почтовый сервер, а портал, объединивший и поглотивший такие компании, как Port. Ru и NetBridge. Под почту дают 2 Mb, как-то давно проводился опрос, стоит ли увеличивать объем почтовых ящиков, но результатов до сих пор не видно. Web-интерфейс для работы с почтой создан так, что бы показать как можно больше рекламы. Это, наверное, единственный сервис, который при регистрации просит Вас заполнить невообразимо длинную анкету, где разве что нет вопроса о том, какая девичья фамилия Вашей прабабушки. Полнофункциональные фильтры; сборщик почты по протоколу POP3 с 10 внешних ящиков; пересылка писем, с выбором возможности оставлять копии или нет; множественные папки и адресная книга, проверка всех входящих писем антивирусом AVP. Работа через POP3 и SMTP. Через SMTP можно отправить только те письма, в поле From, которых стоит только! реально существующий адрес на сервере mail.ru. Популярность губит этот почтовый сервер – рекламы с каждым разом становится все больше, а качество предоставляемых услуг ухудшается с каждым днем, хотя особых проблем в последнее время особо заметно не было.
Hotbox.ru (mailru.com, rbcmail.ru, fromru.com, pisem.net, krovatka.ru)
Появился давным-давно почтовый сервер mailru.com с незатейливым дизайном, начал набирать популярность, и тут возьми и купи его холдинг RBC. Не известно, что было бы, если не появись такой инвестор – исчез сервер или нет, но сегодня по популярности он догоняет предыдущего героя, с качеством услуг на порядок выше. Так Вам дают 20 Mb под почту, с доступом к последней по POP3, IMAP и SMTP, плюс 20Mb под домашнюю страничку ваше_имя.имя_сервера.ru с доступом по FTP. Приятный не перегруженный дизайн; фильтры и папки; жалко, что нет сборщика почты, который планируют сделать вот уже целый год; размер прикрепляемого файла до 10Mb, письма со всеми прикрепленными файлами до 15Mb; пересылка писем; проверка орфографии на русском и английском языках; для использования SMTP нужна авторизация. Возможность работать через протоколы шифрования данных – так что можете не бояться, что кто-то прочитает Ваши любовные письма;). Как было сказано, качество услуг достойно наивысшей оценки – за все то время, что я работаю с этим сервером, недоступен он был один раз, и то на пару часов.
Почта Яndex’а. (@yandex.ru, @narod.ru)
Если у Вас почтовый ящик на этом портале, то можете не беспокоиться: в ближайшее время его у Вас никто не отберет, т.к. финансовым и рекламным возможностям Яндекса сегодня в Рунете никто не может противостоять. Это русский Yahoo. Ну, коснемся непосредственно почты: дают 10Mb; возможность создавать папки и собирать почту с пяти внешних почтовых ящиков; проверка почты на вирусы с помощью AVP; самые хорошие фильтры только здесь и причина ясна – команда Яндекса умеет создавать качественные сервисы, будь то поиск, хостинг, а вот дизайн страдает, хоть и создает его всем известный Артемий Лебедев; имеется доступ к почте по POP3; отправка почты через SMTP, причем последний является открытым ретранслятором, т.е. почту можно отправлять даже не регистрируясь на Яндексе – вот для спамеров раздолье. Если Вы не проверяете свою почту через POP или Web в течении 6 месяцев, то ящик удаляют. Служба поддержки пользователей мне не ответила ни разу – может еще очередь не дошла:) – ведь сегодня Яндекс и его проекты самые популярные в сети с кучей пользователей.
Почта Rambler’а. (@rambler.ru)
Под почту Вам предоставляют 5Mb без каких-либо дополнительных функций, кроме как папок, закладок, календаря, доступа к почте по POP, для москвичей имеется возможность пересылать всю почту или отсылать только извещения о приходе новой почты, на пейджер или сотовый телефон, но работает это все далеко не идеально. На момент написания этой статьи регистрация временно прекращена в связи с переездом команды Рамблера в новый офис – нам бы их проблемы. Пусть лучше дают мало (я про кол-во услуг), но делают это качественно. Каких-либо серьезных жалоб на работу сервиса нет, иногда только возникают мелкие нарекания.
Km.ru (@km.ru, @freemail.ru, @students.ru)
Достаточно примитивный сервис – сегодня его активно рекламируют в сети – на это деньги нашлись, а вот довести до ума качество предоставляемых услуг не могут. Как написано на заглавной странице Вас предоставляют 5Mb + 5 Mb постоянным клиентам – интересно, как они узнают постоянный я клиент или нет? Есть возможность забирать почту по POP. Временами (или почти всегда?) сервер сбоит – почту нельзя забрать ни по POP, ни через Web; за скоростью доступа по POP вообще интересно наблюдать – в течение одного сеанса связи она может различаться в 4 раза – что-то невообразимое. Известно, что бесплатный хостинг от KM.Ru сегодня является самым лучшим в сети, но почему бы не довести до ума и почтовый сервис – сочетание одного с другим еще бы больше укрепило имидж портала KM. Ru. Для пользователей Freemail.ru есть возможность бесплатно получать почту, позвонив по специальному телефону.
Land.Ru
Сервер заново возрождается и предоставляет Вам 10 Mb под почту, сборщик почты с других серверов, доступ к почте по протоколам POP и SMTP. Вся почта проверяется на вирусы антивирусом DrWeb. На сервере так же есть возможность зарегистрировать гостевую книгу для Вашей домашней странички, а так же редерикт вида ваше_имя.land. ru. На этом все хорошее этого сервера и исчерпывается.
Pochta.WS
Новый сервер - регистрация пользователей началась 1 февраля и поэтому еще много свободных оригинальных имен. Вызывает интерес так же и домен – неужели в зоне .Ru жить тесно стало. Сервер новый – идея старая и даже герои, которые создавали сервер всем знакомые. Когда видишь начальную страницу сервера, то сразу же возникает ассоциация с сервером Mailgate. ru, а когда регистрируешься и видишь рабочий интерфейс, то все встает на свои места – дизайн и соответственно возможности полностью идентичны вышеназванному серверу. Вам предоставляется 15 Mb под почту, сборщик почты с других серверов по протоколам POP и IMAP, доступ к Вашей почте по протоколам POP и SMTP. Аккаунт удаляют через 3 месяца в случае, если Вы их не навещаете. На качество предоставляемых услуг жалоб нет, да и молодой еще сервер – пользователей мало.
Newmail.ru (@newmail.ru; @hotmail.ru; @nm.ru; ...)
Вот и подошло время моего любимого Newmail'а. Преймущества видны сразу. Дают 30мб под ящик и ещё столько же вашу страничку. Страничка типа ваш_логин.сервер.ru. Есть pop3, SMTP и все подобные навороты. Есть защита от вирусов. Можно устанавливать бан лист. Не плохие настройки. Большая и удобная помощь. В помощи есть всё, от пользования ящиком, до настройки любой программы под их сервис. на вашем сайте не разрешаются скрипты, но есть у них встроенный форум, гостевая книга, счётчик и голосвание. Банеры не вешают. Доступ к сайту осуществяется как через их вэб интерфейс, так и доступом по FTP. Удаляют ящик если вы им долго не пользуйтесь (помоему 3 месяца).
Думаю пора подвести итоги. Неплохая почта у Яндекса – по набору сервисов является примером, к которому стоит стремиться. Думаю, для тех, кто до сих пор не зависим от сервера Mail. Ru, не стоит делать выбор в его пользу, т.к. сервер перегружен и сегодня не справляется с возложенными на него обязанностями, поверьте, альтернатив не так уж мало. И лично я для себя выбрал парочку HotBox. ru + Cmail.ru. Подают надежду сервера Land.Ru и Pochta. WS, особенно второй, уж больно быстро у него дело пошло. Не думаю, что почта от KM.Ru будет пребывать в первоначальном состоянии – коллектив разработчиков сильный и свое дело знает. Chat.ru оставаясь живым, умер. Кто-то скажет, что его рано хоронить, но стоит смотреть правде в глаза. Выявляется два лучших сервера Newmail.ru и HotBox.ru. Срок неативности у HotBox больше, чем у Newmail, но за-то у Newmail больше пространства под почту. Вобщем я своё дело сделал, а выбирать вам!
Некоторые материалы для статьи взяты из журнала IZONE (http://www.izone.ru/)
![]() |
Выбираем бесплатный хостинг | ![]() |
Многие пользователя пробовали создавать странички для Интернета, а у некоторых получались даже сайты, но у всех возникала проблемма размещения сайта в интернете. Больше вас не будет тревожить этот вопрос. Если у вас обыкновенная страничка, без скриптов, то для начала рассмотрим следующие сервера:
www.newmail.ru и www.narod.ru.Не очень известный сервер, расчитанный на почту, но раздаёт и место под сайты. Даёт 30мб под сайт (по крайнер мере это можно сделать, переместив квоту у себя в аккаунте, уменьшив таким образом размер выделенный под почты). Очень быстрый пропускной канал, не разрешают разумеется скрипты, но у них же можно поставить себе на сайт встроенную гостевую книгу, форум, голосование и счётчик. Закрывают ваш сайт если вы не проверяете почту 3 месяца.
Многие люди предпочитают хостинг "народа", возможно это и правильно, ведь они дают бесконечно места под сайт. Скрипты они не разрешают, но у них есть некоторые встроенные скрипты. Не вешают банеры. Скорость загрузки конечно меньше, чем у NEWMAIL'a, но зато место неограниченно. Как вы понимаете для небольших страничек больше подходит сайт "народа", но я всё же как брожу по интернету и вижу ссылку на сайт, а там написанно www.ваше_имя.narod.ru, то сразу перепадает желание посещать его, так как знаю, что это обыкновенная не динамическая страница, может я и ошибаюсь, но это так!
Ну что ж, давайте теперь поговорим не о страничках, а о сайтох и где же их размещать. Тут перед вами возникает больший спектор услуг. На одном хостинге вам предлогают что-то, но и что-то забирают, а на другом это что-то второе дают, а вот что-то превое забериют.:) Ладно хватит болтовни, перейдём к делу:
Немного я пользовался этим хостингом, только по тому, что они не вешают свои банеры на сайты. Расскажу по подробней. Дают 50мб под ваш сайт, разрешат скрипты, нет ограничений на файлы, на $1 либо $2 можно умеличить своё дисковое пространиство на 50мб. За $2 можно прикрепить ваш домен к ихнему сайту и тогда ваш сайт будет www.ваше_имя.ru, но домен вам разумеется никто не подарит, его нужно сначала купить за $25 в год. Вобщем всё бы отлично, если бы не НО. Сервер у них часто бывает отключен, а если и работает, то ваша страница минимального обьёма будет грузиться несколько минут. Да и ошиба 500 у них часто бывает..
Дейстивительно не плохой хостинг! Предоставляет неограниченное пространство под ваш сайт, есть куча предустановленных скриптов, хороший пропускной канал, то есть сайты ваши быстро грузятся. Но опять же есть и минусы. Они не разрешают делать на сайтах банерные сети, рейтинги, бесплатные гостевые книги и подобное. Не разрешают создавать файловый каталог. Не разрешают вешать ваш банер выше ихнего (их банер вы размещаете сами). Говорят, что их банер должен быть на всех страницах, но вы можете этого не делать, вы можете разместить их банер у себя толко на главной странице и они останутся довольны, но это опасно, могут удалить ваш сайт, если на него зайдёт администратор этого хостинга, что врятли случится! Не разрешают делать у себя на сайте рассылку, говорят пользутесь уже готовыми рассылками. Хостинг действительно не плохой, а банер можно за некоторую сумму убрать. У них уже более полу года закрыта регистрация, вы на это не смотрите нужно просто написать им письмо с просьбой открыть сайт и они это запросто сделают. Письмо должно быть примерно следующего содержания: "Здравствуйте уважаемые администраторы бысплатного хостинга WallSt, не могли бы вы открыть мне сайт с адрессом www.ваше_имя.тип_сервера.ru. Заранее благодарен.". Они ваш вышлют ваш идентификатор и пароли ко всему: к почте, к сайту и прочему. Вот адесса которые они предоставляют: .wallst.ru; .dax.ru; .aiq.ru; .dtn.ru; .vov.ru; .tora.ru; .pips.ru; .metastock.ru; .supercharts.ru. Вобщем я рекомендую!
www.boom.ru
(Сервис предоставляется Mail.ru)
Адрес: http://www.ваш_логин.boom.ru 1. 50 Мб места под сайт
2. К размещению допускаются файлы определенных
типов (*.htm, *.html, *.gif, *.jpg, *.bmp, *.txt, *.pdf, *.doc, *.xls, *.arj, *.zip,
*.rar, *.xlm, *.vb, *.js, *.css, *.png, *.swf, *.wav, *.midi) размером не
более 1,5 mB.
3. Оператор имеет право размещать на WEB-странице
Пользователя рекламную или подлежащую
публичному распространению информацию, однако,
без ущерба для содержания WEB-страницы
Пользователя. Форма, порядок и объемы такой
информации могут время от времени изменяться
Оператором.
4. Пользователь обязуется начать построение
своей WEB-страницы в течение 7 (семи) дней с момента
регистрации.
5. Пользователь обязуется поддерживать
минимально допустимую посещаемость сайта - 20
хитов в 30 дней, либо производить обновления на
сайте не реже 1 раза в 180 дней.
6. Пользователь имеет право использовать
WEB-страницу в целях осуществления коммерческой
деятельности, но только при получении на это
предварительного выраженного согласия
Оператора.
7. Небольшой рекламный блок, который невозможно
закрыть, можно только свернуть.
8. Более 100 шаблонов, поддержка JavaScript, VBScript.
Имеются предустановленные скрипты: форум, чат,
гостевая книга, счетчик. Работа с другими
скриптами не предусмотрена.
9. Обязательно прочитайте правила пользования,
там очень много ограничений для пользователя и
мне кажется, хостинг очень не выгоден в
использовании. Решать Вам.
www.km.ru
(Почтовый ящик: 5Mb+5Mb для постоянных
пользователей)
Адрес: http://www.ваш_логин.km.ru
Поддержка скриптов. Объем сайта можно выбрать
при регистрации. Максимально - неограниченное
пространство. "Если ваш сайт требует менее 70Мб
места, то Вы размещаете на титульной странице
баннер Km.ru формата 468х60, у тех сайтов, которые
занимают более 70 Мб, хостинг просит размещать
баннер Km.ru на всех страницах сайта".
Пользователь имеет право использовать WEB-страницу в целях осуществления коммерческой деятельности.
Пользователь обязуется начать построение своей WEB-страницы в течение 14 (четырнадцати) дней с момента регистрации.
Пользователь обязан регулярно обновлять и поддерживать свою WEB-страницу на условиях согласованных с Организатором. В случае не выполнения условий обновления Пользователем своей WEB-страницы, Организатор имеет право удалить WEB-страницу Пользователя, а также в одностороннем внесудебном порядке приостановить или полностью прекратить предоставление Услуг Пользователю. Организатор имеет право размещать на WEB-странице Пользователя рекламную или подлежащую публичному распространению информацию, однако, без ущерба для содержания WEB-страницы Пользователя. Форма, порядок и объемы такой информации могут время от времени изменяться Организатором.
Организатор оставляет за собой право в одностороннем порядке взять и оставить под своим управлением любой субдомен или виртуальный каталог, входящий в домен Организатора с именем my.km.ru или km.ru. Организатор имеет право по своему усмотрению и без предварительного предупреждения использовать полномочия "домена верхнего уровня" в отношении всех остальных субдоменов или виртуальных каталогов, и в этом случае Пользователь должен будет передать свой субдомен или виртуальный каталог под управление Организатора.
Размещение Пользователем WEB-страницы на серверах Организатора означает, что Пользователь безвозмездно предоставляет ему неисключительное, распространяемое на весь мир право воспроизводить, модифицировать, адаптировать и публиковать содержание WEB-страницы, но только в целях выполнения Организатором своих обязанностей в соответствии с Договором, в том числе в целях сохранения и поддержания WEB-страницы в Сети. Организатор утрачивает указанное право с момента, когда Договор прекращает свое действие в отношениях между Организатором и Пользователем.
www.by.ru
Адрес: http://www.ваш_логин.by.ru
1. Неограниченное пространство.
2. Скорость доступа.
Серверы BY.RU установлены на сверхскоростном
канале. В одну секунду машины отдают свыше 3000
документов. Вряд ли Вам понадобится попросить
друзей зайти на сайт попозже.
3. Доменное имя. Ваш сайт размещается по адресу
проект.by.ru.
4. Управление файлами. Вы можете настроить свой
любимый FTP-клиент и обновлять информацию через FTP-
протокол, а можете загружать файлы через их
встроенный Менеджер Файлов прямо из браузера,
которым пользуетесь постоянно.
5. Поддержка SSI.
6. Автоматическая раскрутка. Заботу о
качественном размещении вашего сайта в
популярных каталогах и поисковых системах берёт
на себя их робот. И ежедневно следит за
результатами своего труда. Кроме того, каталог
BY.RU ежедневно посещают десятки тысяч людей
единственно для того, чтобы найти на BY.RU нужную им
информацию, в том числе и ваш сайт.
7. Статистика. Вы можете установить на вашем сайте
внешний счётчик, а можете и не ставить - Вам всё
равно расскажут об объёме и росте вашей
аудитории, числе загрузок и глубине просмотра
страниц и многое другое, что нужно знать о
статистике вашего сайта. 8. Не только сайт.
BY.RU - это не только хостинг сайтов, но также и
размещение web-конференций, чатов, систем опросов
и прочих служб, без которых сайт перестаёт быть
оживлённым и динамичным. Все службы
интегрируются в сайты и доступны из интерфейса
администратора.
www.h1.ru
Адрес: http://www.ваш_логин.h1.ru ,
http://ваш_логин.h1.ru
Для доступа к серверу Вам надо использовать
любой FTP клиент. Дают две версии вашего адреса:
http://www.ваш_логин.h1.ru или http://ваш_логин.h1.ru
Поддержка CGI, (SSI поддерживается для всех файлов с
расширениями *.htm, *.html, *.shtml), MySQL, эмуляция ScriptLog
(лог-файл, в который пишется STDERR скрипта),PHP
поддерживается в файлах с расширениями *.php, *.php3,
*.php4. На их хостинге установлен PHP версии 4.Реклама
на сервере вставляется автоматически в верхнюю
часть всех страниц отдающихся с их сервера --
изменить это нельзя, таковы условия хостинга.
Сервер хостинга будет вставлять баннерный блок, состоящий из одного баннера 468х60 и одного баннера 468х15 (TBN Text) прямо под ним.
Примечание: за тем, чтобы баннеры не вставлялась в узкие полоски фреймов следит специальный javascript код. Таким образом, Вам вообще не нужно заботиться о вставке их рекламы - все будет сделано автоматически. Для использования на ваших серверах они подготовили несколько наиболее нужных скриптов. Скрипты, с документацией на русском, доступны по адресу http://www.holm.ru/h_scripts.shtml
Если Вы решили создать сайт на этом хостинге, внимательно прочитайте краткую справку по работе с бесплатным хостингом от H1.ru, там есть много полезной и нужной Вам информации, без которой Вы просто не сможете работать дальше с этим хостингом.
www.hut.ru
Неограниченное дисковое пространство - изначально Вы получаете в свое распоряжение 30 мегабайт, однако, как только Вам станет не хватать дискового пространства, Вы пишете письмо с обоснованием увеличения Вам дисковых объемов в службу поддержки (hs@hut.ru) и в течение суток они выделяют Вам необходимое дисковое пространство. Обычно обоснованием служит большое количество посетителей Вашего сайта, то есть не стоит писать в службу поддержки, если на Ваш сайт ходит 12 человек в день, а Вы хотите увеличить свое дисковое пространство.
Зарегистрировав у них свой сайт, Вы получаете доменное имя третьего уровня вида ваш_домен.hut.ru. А так же доменное имя второго уровня - вида www.ваше_имя.org, www.ваше_имя.com или www.ваше_имя.ru может поддерживаться их сервером, так что посетители Вашего сайта не будут знать, что он располагается на бесплатном сервисе Hut.Ru.
собственные cgi-скрипты - возможность
написания и выполнения на Вашем сайте
собственных Perl-скриптов, которые являются
довольно мощным средством, позволят Вам сделать
свой сайт полностью автоматизированным и
динамичным
доступ к БД MySql
доступ к файлам .htaccess и .htpasswd - на hut.ru используется
программное обеспечение веб-сервера Apache, поэтому
Вы можете с помощью создания и редактирования
специальных файлов .htaccess и .htpasswd в своих
каталогах влиять на установки работы Ваших
виртуальных серверов. К примеру, защищать
каталоги или отдельные файлы своего сайта
паролем, управлять индексированием каталогов
Вашего сервера, изменять вид стандартного
сообщения об ошибке, а также управлять типами и
кодировками файлов. Это позволит более гибко
настраивать Ваш виртуальный сервер и делать
работу по поддержанию сайта более легкой и
приятной
FTP доступ
shell-аккаунт - с помощью протокола SSH (защищенная
версия telnet-протокола) Вы можете работать со своим
виртуальным веб-сервером, как со своим
компьютером, производить копирование,
редактирование, удаление файлов, настраивать и
выполнять perl-скрипты, как будто Вы сидите за
консолью их сервера. Для запуска программ в
определенное время Вы можете воспользоваться
crontab'oм.
директивы SSI
доступ к лог-файлам - позволит Вам детально
проконтролировать ситуацию дел на Вашем сайте,
ведь различные счетчики грешат неточностями и
ограниченностью предоставляемых данных. С
помощью лог-файла ошибок Вы можете быстро найти и
устранить ошибки в структуре и организации своих
страниц
почтовый ящик для Вашего домена -
зарегистрировав доменное имя вида ваше_имя.hut.ru
Вы сможете получать всю почту, отправленную на
адреса что_то@ваше_имя.hut.ru с их почтового сервера
по протоколу pop3 или imap. Они любят своих
пользователей, однако, не являются
благотворительной организацией, поэтому в целях
компенсации они размещают баннер размера 468x60
пикселей вверху каждой страницы Вашего сайта.
Думаю вам хватит, хотя в интернете есть и другие хостинги, но эти отборные и самые лучшие! Выбирать вам.
![]() |
Обсуждаем, критикуем и ругаем | ![]() |
ВНИМАНИЕ!!! Данная статья разрешается, по законодательству РФ (свобода слова и печати).
Самый интересный и лучший раздел
этой рассылки. Это первый выпуск рассылки, по
этому, первый сайт буду критиковать я сам. Сейчас
будем обсуждать и критиковать другие сайты! :))
Для начала давайте обсудим сайт www.dave.ru,
это первое, что мне попалось на глаза в Интернете.
Сайт посвящён знакомствам в Интернете. Полазив
по другим подобным сайтам я сделал выводы. Сайт
хоть и популярный в какой-то мере, но всё же
репутация у него не очень хорошая. Абсолютно не
обновляемый сайт, нет новостей, в боку влепили
какую-то ерунду, с горячими новостями с других
новостных сайтов и радуются.. Сайт называется
знакомства у Дейва!:\. На верху нарисован мужчина
который целует женщину, а на сайте знакомят
ГОМИКОВ! Абсолютно не следят за анкетами
участников, часто попадаются дублирующиеся
анкеты. Нет отправки личных сообщений участнику
сайта. А когда от них отправляешь письмо
участнику, то нет никакой проверки на
правильность (можно отправить пустое письмо). Нет
рейтинга анкет. В общем сайт сделан на соплях и
рассчитан на дураков и просто на количество уже
имеющихся анкет, за счёт которых он и живёт по сей
день. В общем о сайте можно сказать что он заживо
умирает. Как вы уже поняли сайт говно!
Не будем останавливаться на этом и
продолжим осуждать сайт, только уже другой!
Давайте теперь обсудим сайт www.delphi.wallst.ru.
Сайт не смотря на то, что его пытаются упорно
раскурить, ГОВНО, на него не заходит народ только
по тому, что на нём ничего нет! Дизайна нет
никакого, информации тоже нет! Исходников
предельно мало, так же как и компонентов, да и не
нужны они никому. Пусть меня извинит автор сайта,
но всё же это так. Как не крути сайт, а если его
название начинается с большой буквы Г и
оканчивается на О, то народ на него только под
прицелом будет заходить. И ещё один минус!
Банеров на нём натыканно просто тьма, да если бы
они были аккуратно установлены, да и тематика
была бы нормальной, так на банерах одна
порнография крутится. Думаю хватит с этого сайта,
а то если продолжу то вдруг сайт прикроется,
забросится, да и автор самоубийством покончит. :))
С сегодняшнего выпуска хватит. Если
вы желаете, что бы ваш сайт обсудили, то
присылайте письма. И не думайте, что ваш сайт
обязательно унизят, если на нём есть всё что
нужно, то моя рассылка ваш сайт хорошо похвалит!
Удачи!
![]() |
Программирование |
(на примере прогнозов погоды с Yahoo.com)
Автор: Тотоев Александр,
www.czar.ru, www.nova-wings.ru
Добре, господа!
Пример предназначен для тех, кто начинает работать с php, и не только для них.
Результатом работы программы(скрипта) является прогноз погоды на 5 дней для любого, интересующего Вас города, выводимый в виде, который нравится именно Вам, а не дизайнерам сайта-донора.
Информация в таких случаях берется с известных серверов прогноза погоды (где не пишут фразу "запрещено использование информации" и т.п.). В данном случае используется сервер http://weather.yahoo.com , на котором есть страницы с погодой для довольно большого количества городов, и практически всегда можно найти если не интересующий Вас город, то ближайший ему и идентичный по погодным условиям.
Это законченный проект, работающий на сайте sim-sim.ru в разделе туризма "погода в мире".
Единственным недостатком является лишь то, что админу приходится вводить в текстовый файл (возможен вариант с mysql, но в том случае мне было проще сделать в файле) название населенного пункта на родном языке и ссылку на страницу с прогнозом погоды на него на сервере Яхо. Но никто за Вас этого делать не будет.
Посему, скрипт состоит из 2-х частей:
- Файл с администрированием (вводится в первую строку название города, на следующей строке - ссылка). Разбирать работу данной части, думаю, не стоит, комментариев более чем достаточно.
- Файл с самой программой. Работа программы будет подробно описана ниже.
1. Администрирование.
Выводим на экран форму с паролем pass. В окне вводятся: номера названия ссылки Затем, после нажатия на кнопку и проверки пароля, записываем новый список в файл.
<html> <head> <title>admin weather</title> </head> <body> <?php $adr=$DOCUMENT_ROOT."/weather/weather.ini"; // адрес файла, в котором и будут записываться названия городов со ссылками $password='pass'; // простенькая система авторизации $eror='Password eror!'; $old=file($adr); // читаем то, что сейчас есть в файле if ($submit) { // проверяем на нажатость кнопки if ($pass==$password) { $fp=fopen($adr,"w"); fwrite ($fp, $ini); // записываем в файл измененные данные fclose($fp); $old=file($adr); } else { echo $eror; } } ?> <form method=post action="<?php echo $PHP_SELF?>"> // информация, введенная в форму, обрабатывается этим же файлом password:<input type=text name=pass><br> inicialisation:<textarea name="ini" rows=15 cols=60> <? for ($i=0; $i<sizeof($old); $i++) { echo $old[$i], ""; // выводим на экран текущий вариант файла } ?> </textarea> <br> <input type=submit name="submit" value="Enter"> </form> </body> </html>
После ввода информации в файл в виде, получаем:
50
Ларнака
http://weather.yahoo.com/forecast/Larnaca_CY_f.html
51
Пафос
http://weather.yahoo.com/forecast/Paphos_CY_f.html
"44" - номер города.
"Ларнака" - название города.
"http://weather.yahoo.com/forecast/Larnaca_CY_f.html" - ссылка на
погоду в городе Ларнака на Яхе.
Ссылки на города организовываются по принципу:
<a
href=http://www.sim-sim.ru/catalogue/weather.php?weather=50>Ларнака</a>
А можно так:
<a
href=http://www.sim-sim.ru/catalogue/weather.php?city=Ларнака>Ларнака</a>
Но если город из друх слов, то в пробелах пишем
"%20"
В таком случае, номера городов в списке не нужны:
Ларнака
http://weather.yahoo.com/forecast/Larnaca_CY_f.html
Пафос
http://weather.yahoo.com/forecast/Paphos_CY_f.html
Если у нас не текстовый файл, а mysql, то все проще.
Если кому понадобится вариант с mysql, пишите мне totoeval@mtu-net.ru
2. Программа (собственно, адаптер чужого кода к Вашему сайту).
<table width=100% border=0 cellspacing=0 cellpadding=2 bgcolor=<? echo $brdcolor; ?>> <tr> <td> <br> <!----------------------- FORECAST -------------------------> <?php $ini=$DOCUMENT_ROOT.'/weather/weather.ini'; $region=file($ini); // читаем файл со списком городов-ссылок а массив $region // определение координат искомого города for ($i=0; $i<sizeof($region); $i++) { if (trim($region[$i])==$weather) { // ищем номер города в списке $city=trim($region[$i+1]); // название города $adr=trim($region[$i+2]); // адрес страницы } else { } } // если у нас передается информация не номером города, а названием, то: for ($i=0; $i<sizeof($region); $i++) { $city=str_replace($city,"%20"," "); // заменяем "%20" на " " if (trim($region[$i])==$city) { // ищем название города в списке $adr=trim($region[$i+1]); // адрес страницы } else { } } // Входная информация для дальнейшего кода - $adr (адрес страницы прогноза погоды для города на сайте http://weather.yahoo.com) и $city - название города на родном языке. // // фразы для поиска полезной информации. Оригинал фраз можно обнаружить на странице, например, этой, проанализировав код. // здесь заводим в переменные фразы, по которым будем искать нужную информацию (градусы, описания погоды, картинки). Используем фразы до и после необходимой информации. Этот блок в будущем придется изменять, когда на оригинале (weather.yahoo.com) изменится код страниц. На 14 авг. 2001 он работает. $begin_screen='FORECAST ----'; // начальная фраза таблицы с прогнозом погоды $end_screen='</b></td></tr></table></td></tr></table>'; // последняя фраза таблицы $post_gradus='</font></b><'; // после градусов $before_gradus='<font size="3" face="arial">'; // перед градусами $before_image='http://us.i1.yimg.com/us.yimg.com/i/we/fc/'; // перед картинкой $post_image='.gif'; // после картинки $before_forecast='top><font face="arial" size="2">'; // перед фразой погоды $post_forecast='</font></td><td>'; // после фразы погоды // массивы для переводов даты и описаний погоды с английского языка на родной (в данном случае использован вариант перевода с буржуйского на язык, которым разговаривал Ленин. $endat=array(" ","Mon","Tue","Wed","Thu","Fri","Sat","Sun", "May","Jul","Jun","Aug","Sep","Oct","Nov","Dec","Jan","Feb","Mar","Apr"); // английские даты $rudat=array(" ","понедельник","вторник","среда","четверг","пятница", "суббота","воскресенье","мая","июля","июня","августа","сентября","октября", "ноября","декабря","января","февраля","марта","апреля"); // родные даты $eng=array(" ","Thunderstorms","Sunny","Partly Cloudy","Showers","Rain", "Mostly Cloudy","Tstorms","Drizzle","Cloudy","Flurries","Fog","High", "Low","Clear","Sleet","Rain/snow","Snow Showers","Mixed Snow", "Rain", "Snow","Mixed"); // английские описания погоды $rus=array(" ","гроза","ясно","переменная облачность","ливень","дожди", "облачно","гроза","изморось","пасмурно","снегопад","туман","день","ночь", "ясно","дождь со снегом","дождь со снегом","мокрый снег","снег с дождем", "снег","переменно"); // российские аналоги погоды $brdcolor='#ffffff'; // цвет рамки таблицы прогноза (белый) $bgcolor='#eeeeee'; //цвет фона ячеек таблицы (лучше - цвет фона страницы) // А Здесь начинается код программы, который изменять не придется. // занимаемся созданием даты, выводимой на экран. Функция time() даст нам текущее время. Функцией date(d." ".M,$t[$i]) получаем дату текущего и последующих 4 дней, а date(D,$t[$i]) дает нам дни недели всех 5 дней. А затем переводим даты с английского языка на родной. $t=array(4); $d=array(4); $dn=array(4); for ($i=0; $i<=4; $i++) { $t[$i]=time()+$i*86400; $d[$i]=date(d." ".M,$t[$i]); $dn[$i]=date(D,$t[$i]); for ($j=0; $j<sizeof($endat); $j++) { // переводим слова в дате и получаем даты на родном языке $d[$i]=str_replace($endat[$j],$rudat[$j],$d[$i]); $dn[$i]=str_replace($endat[$j],$rudat[$j],$dn[$i]); } // и получаем даты на языке, которым разговаривает наш нонешний Вова } // начинаем обрабатывать страницу. // Выясняем строки начала и конца таблицы с прогнозом погоды. Затем, будем работать именно с этим блоком. $screen=file($adr); // читаем страницу с прогнозом погоды в переменную $screen for ($i=1; $i<sizeof($screen); $i++) { // обрабатываем строки с первой по последнюю if (strpos($screen[$i],$begin_screen)==false) { //находим начало таблицы с прогнозом if (strpos($screen[$i],$end_screen)==false) { //находим ее конец } else {$m=$i; // $m - номер последней строки таблицы } } else {$k=$i; // $k - номер первой строки таблицы } } // Получаем с $screen[$k] по $screen[$m] - нашу таблицу с погодой. Потом будемработать именно с ней, чтобы не было лишних совпадений, и быстро работала программа. // Можно ее выводить в "родном дизайне, но нам это не нравится // Начинаем искать полезную информацию. $grad=array(9); // массив из 10 чисел градусов температуры окружающей среды $zed=0; // счетчик градусов for ($i=$k; $i<=$m; $i++) { //работаем с градусами if (strpos($screen[$i],$before_gradus,0)==false) { //если нет градусов в строке (если нет фразы, стоящей перед градусами. } else {// если есть градусы в строке $string_grad=$screen[$i]; // сохраняем строку с градусами в переменную $string_grad=explode($before_gradus,$string_grad); // разбиваем строку на массив строк по разделителю, которым является фраза перед градусами, таким образом, мы получаем в 1 элементе массива строку, которая начинается собственно с самого градуса погоды. $end_grad=strpos($string_grad[1],$post_gradus,0); // определяем позицию начала фразы, идущей после градуса. $grad[$zed]=substr($string_grad[1],0,$end_grad); // первый градус получаем, как подстрока, с 0-го символа до начала фразы после градуса. $zed++; // инкремент счетчика градусов $end_grad=strpos($string_grad[2],$post_gradus,0); $grad[$zed]=substr($string_grad[2],0,$end_grad); // второй градус $zed++; // инкремент счетчика градусов } } // в результате чего, мы получили все градусы на нашей странице // переводим фаренгейты в цельсии for ($i=0; $i<=9; $i++) {$grad[$i]=round(5/9*($grad[$i]-32)); } // в варианте с забиранием информации со страницы с цельсиями // эту строку стоит просто закомментировать. Я оставил так, просто каприз. // переводим фаренгейты в цельсии // находим слова погоды абсолютно аналогично поиску градусов $zed=0; // счетчик описаний погоды for ($i=$k; $i<=$m; $i++) { //работаем с описаниями if (strpos($screen[$i],$before_forecast,0)==false) { //если нет описания погоды в строке } else {// если есть описания в строке $string_grad=$screen[$i]; // сохраняем строку с описаниями в переменную $string_grad=explode($before_forecast,$string_grad); $end_grad=strpos($string_grad[1],$post_forecast,0); $forec[$zed]=substr($string_grad[1],0,$end_grad); for ($j=0; $j<sizeof($eng); $j++) { // перебираем все варианты слов в описаниях $forec[$zed]=str_replace($eng[$j],$rus[$j],$forec[$zed]); // переводим слова } $zed++; // инкремент счетчика описаний } } // в результате чего, мы получили все описания погоды на нашей странице $zed=0; // счетчик слов картинок аналогично for ($i=$k; $i<$m; $i++) { //работаем с картинками if (strpos($screen[$i],$before_image,0)==false) { //если нет описания погоды в строке } else {// если есть картинки в строке $string_grad=$screen[$i]; // сохраняем строку с картинками в переменную $string_grad=explode($before_image,$string_grad); $end_grad=strpos($string_grad[1],$post_image,0); $for_img[$zed]=substr($string_grad[1],0,$end_grad); $zed++; // инкремент счетчика картинок } } // в результате чего, мы получили все картинки на нашей странице ?> // публикуем результаты: <table width=100% cellpadding=0 cellspacing=0 border=0> <tr><td width=20% align=center><font size=3><b ><? echo $city; // выводим название города, для которого отображается прогноз погоды ?></b><br></font></td></tr></table ><table width=100% cellpadding=0 cellspacing=0 border=0> <tr><? for ($i=0; $i<=4; $i++) { // выводим на экран ячейки с датами и днями echo "<td width=20% align=center><font size=2><b> $d[$i]<br>$dn[$i]</b></font></td>"; } ?></tr ></table ><table width=100% cellpadding=0 cellspacing=0 border=0 bgcolor=<? echo $brdcolor; ?> ><tr><td ><table width=100% cellpadding=2 cellspacing=1 border=0 ><tr><? $zed=0; // счетчик выводимых градусов for ($i=0; $i<=4; $i++) { // выводим ячейки с прогнозами - картинки, градусы, описания $zed1=$zed+1; echo "<td width=20% align=center bgcolor=$bgcolor valign=middle><img src=./pic/".$for_img[$i].".gif border=0 alt=".$forec[$i]."><br><br>< font size=2>".$forec[$i]."</font><br><br>< font size=3><b>".$grad[$zed]."°C<br>".$grad[$zed1]."°C</b> </font></td>"; $zed=$zed+2; } ?> </tr></table> // картинки можно привязать к картинкам Яхи (названия аналогичных по погоде совпадают, как в моем случае), а можно сделать массивы соответствия слов-описаний погоды и Ваших картинок. Это по-желанию. Что долговечнее, трудно судить. И фразы-описания они могут изменить, и картинки переименовать. Можно, конечно договориться с админом Яхи, чтобы они не меняли один из этих элементов и отталкиваться от него, но у меня не было его телефона:о) </td> </tr> </table>
Теперь программа работает, и ее можно вставлять в свой дизайн. Вот вариант: вышеупомянутая Ларнака
Если кого заинтересуют "вариации на тему" или возникнут вопросы, прошу писать мне totoeval@mtu-net.ru. А также, пишите все, кто сможет посоветовать другие варианты. Всегда рад критике и возможности повысить свой уровень.
Вопросы и ответы
Вопрос 1. Как вставить картинки?
Ответ: Если хотите скачать номера картинок на яхе, создайте такую страницу со скриптом:
for ($i=0; $i<100; $i++) { echo $i.' - <img src=http://us.i1.yimg.com/us.yimg.com/i/we/fc/'.$i.'.gif'; }
У Вас будут на экране все картинки, используемые Яхом. Если хотите, используйте их. Если нет, то сделайте свои и назовите соответственно оригиналам. Картинки размещаются (в моем варианте) по пути ./pic/ от Вашего скрипта. Если не нравится - замените путь на свой.
Вопрос 2. Можно ли сделать этот скрипт с mysql?
Ответ: Конечно можно. Позднее напишу вариант. А пока принцип для тех, кто хочет сам попробовать:
Надо создать таблицу. поля таблицы:
- страна
- город
- номер города
- ссылка на его погоду
При работе программ, вместо поиска в файле, делать запросы в базу по этим полям.
Вопрос 3. Почему у меня ошибка (завел все на локальном апаче. инет выделенный.): Warning: file("") - No error in f:/home/islam/www/weather/weather.php on line 78 (строка $screen=file($adr); // читаем страницу с прогнозом погоды в переменную $screen)?
Ответ: Ошибка связана с настройками апача. Видимо, не считывает содержимое файла страницы на Яхе.
--------------------------------------------------------
Автор рассыки: Стороженко Иван
E-mail: zc@nm.ru
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||