Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Новости сайта "Упражнения по SQL" (http://www.sql-ex.ru) 155


Новости сайта "Упражнения по SQL (http://www.sql-ex.ru)" Выпуск 155 (15 сентября 2007 г.)

Новым посетителям сайта

SQL Exercises Сайт посвящен изучению языка, с помощью которого осуществляется взаимодействие с реляционными (и не только) СУБД. Суть обучения состоит в выполнении заданий на написание запросов к учебным базам данных; при этом система контролирует правильность выполнения заданий. В настоящее время реализованы все операторы подъязыка манипуляции данными (DML), которые включают в себя оператор извлечения данных SELECT, а также операторы модификации данных - INSERT, DELETE и UPDATE.

Мы надеемся, что справочного материала сайта окажется достаточно для самостоятельного обучения. Кроме того, свои решения вы можете обсудить на форуме сайта. Опытных же специалистов приглашаем проверить (продемонстрировать) свое мастерство и принять участие в соревновании, обеспечиваемом рейтинговой системой учета времени выполнения заданий. Фактически, рейтинг ведется на втором этапе тестирования, который начинается сейчас после решения 57-ти задач первого этапа. При подсчете рейтинга каждого участника отбрасывается один самый худший показатель среди всех решенных им упражнений.

Демонстрация плана выполнения запроса и сравнительная оценка эффективности решений поможет вам освоить принципы оптимизации запросов, которые пригодятся на третьем рейтинговом этапе, который начинается после 138 задачи.

Имеется возможность получить сертификат по SQL DML при выполнении определенного количества заданий.


Новости сайта

§ В результате обсуждения с лидерами новой задачи (143-я) она была размещена под номером 135. В свою очередь старая задача #135 стала 62-ой. Прежняя 62-я теперь находится на первом этапе вместо 42-ой, которая появится в свое время на обучающем этапе.

§ Еще одна задача выставлена под номером 143 для обсуждения ее будущего местоположения. Автор задачи - inkerman. Надеюсь, что задача понравится, и это станет ему стимулом для разработки новых задач :-).

§ Gavrila закончил решение задач третьего этапа с результатом 2.501; это пока второй результат.
Три задачи третьего этапа решил на этой неделе burakov58 (139, 140, 142). В итоге 13 место в рейтинге.
До третьего этапа дошли inkerman (задач 139, время на втором этапе 5.634) и Inuyasha (138, 2.546).

§ Новые лица в сотне и вернувшиеся в нее:
Barsyk (131, 2.198)

§ Продвинулись в рейтинге:
Botch (136, 19.887)
avk (136, 59.913)
modicus (136, 8.058)
yuriy.rozhok (136, 17.822)
SoVa (131, 240.674)
Олег (125, 9.190)
-=ac=- (124, 43.751)
Онуфрий Голохвастов (123, 89.762)
maar (123, 48.370)
Shadow77 (121, 7.616)
lexaNRJ (120, 52.725)
FanOfBeer (120, 79.077)

§ На этой неделе сертифицированы:
DeadLock5 (A07014391) [BK] - г.Москва, Россия
Олег (A07021034 [BK] B07021034 [AR]) - г.Воронеж, Россия

§ Число подписчиков - 3625

Число участников рейтинга - 11014

Число участников второго этапа - 1065

Сертифицировано на сайте - 185

Лучшие результаты (ТОР 20)

No Person Number of
Sel_ex
Last_Sel Number of
DML_ex
Scores Days Days_2 Days_3 S_3 LastSolved LastVisit
1 Северюхин Ю.А. (Venser) 142 142 21 342 188 4.920 .655 14 07 Sep 2007 14 Sep 2007
2 Тарасов Д.Б. (Gavrila) 142 142 21 342 747 22.387 2.501 14 12 Sep 2007 14 Sep 2007
3 Солдатенков Ю.С. (SolYUtor) 142 142 21 342 477 17.800 2.695 14 07 Sep 2007 14 Sep 2007
4 Шептунов П.П. (Dzen) 142 142 21 342 257 8.138 3.499 14 10 Sep 2007 12 Sep 2007
5 Мурашкин И.В. (lepton) 141 142 21 341 499 15.725 5.539 14 04 Aug 2007 14 Sep 2007
6 Карасёва Н.В. (vlksm) 142 142 21 342 489 31.541 5.912 14 07 Sep 2007 14 Sep 2007
7 Мальцев А.В. (Палкин) 142 142 21 342 388 28.484 7.690 14 09 Sep 2007 11 Sep 2007
8 Голубин Р.С. (Roman S. Golubin) 142 142 21 342 750 55.389 34.203 14 07 Sep 2007 14 Sep 2007
9 Агапов В. (KERBEROS) 136 141 20 328 89 6.154 1.262 11 20 Nov 2006 27 Jul 2007
10 Кувалкин К.С. (Cyrilus) 140 141 20 336 1014 12.523 2.519 11 04 Sep 2007 14 Sep 2007
11 Зверев Д.Л. (dimzv) 136 141 20 328 1141 9.287 4.938 11 19 Dec 2006 22 Dec 2006
12 Войнов П.Е. (pаparome) 141 142 21 338 747 2.769 .049 10 10 Sep 2007 14 Sep 2007
13 Бураков С.Г. (burakov58) 141 142 21 338 957 34.467 4.901 10 13 Sep 2007 14 Sep 2007
14 Любченко В.А. (IAS56) 141 142 21 338 371 176.805 20.130 10 10 Sep 2007 10 Sep 2007
15 Васьков Е.В. (Johan) 139 140 21 334 402 12.746 11.402 7 25 Aug 2007 25 Aug 2007
16 >Креславский О.М. (Arcan) 140 143 21 333 227 10.116 .477 5 14 Sep 2007 14 Sep 2007
17 Валуев Д.И. (Fiolent) 138 140 20 329 1433 117.072 62.302 4 07 Aug 2007 14 Sep 2007
18 Юлдашев М.Р. (Snowbear) 139 139 21 331 782 4.128 .000 3 08 Sep 2007 13 Sep 2007
19 Утёнков М.Н. (=Maxim=) 138 139 21 330 459 25.173 .036 3 05 Aug 2007 08 Sep 2007
20 Держальцев В.А. (MadVet) 133 139 20 319 540 34.168 3.085 3 08 Oct 2006 19 Oct 2006

Лучшие результаты за неделю

No surname n_sel sel_all sel_scores dml_scores scores rating last_visit
1 Воробей Д.И. (Algerd) 47 54 99 5 104 1077 13 Sep 2007
2 >Likutova O. (OlechkaL) 51 51 99 0 99 1362 14 Sep 2007
3 >Панасюк Е.Л. (IST_EP) 36 36 68 1 69 2280 14 Sep 2007
4 >Петренко А.М. (Andemon) 30 58 62 4 66 776 14 Sep 2007
5 Саянкин Д.А. (conor) 34 34 62 0 62 2626 14 Sep 2007
6 przemek (przemek) 26 26 47 9 56 3012 10 Sep 2007
7 iglbeat (iglbeat) 17 56 34 21 55 778 14 Sep 2007
8 >catthg C.C. (Catthg) 25 25 44 9 53 3285 14 Sep 2007
9 >Луценко А.О. (LutsenkoAO) 22 37 52 0 52 2046 14 Sep 2007
10 Dvoryashin M. (mixd) 27 61 51 0 51 553 09 Sep 2007
11 >Lomtadze (alekol) 27 29 51 0 51 3298 14 Sep 2007
12 >Ivanov P. (testsql) 14 14 16 34 50 3495 14 Sep 2007
13 Мацкевич (Hennadzi Mackevich) 28 28 50 0 50 3502 12 Sep 2007
14 >Sofronia A. (alexsof) 22 85 49 0 49 250 14 Sep 2007
15 >Гайн Б.П. (Hayn_B) 20 20 29 17 46 5660 14 Sep 2007
16 Zhivlyuk (Zhorra) 26 26 40 3 43 4000 12 Sep 2007
17 >Bordovskiy V. (smith) 13 46 31 10 41 1207 14 Sep 2007
18 >ksai (ksai) 18 39 41 0 41 2248 14 Sep 2007
19 >Khairova (Emi) 21 21 30 11 41 2534 14 Sep 2007
20 Dohnal P. (otik) 26 26 41 0 41 4133 13 Sep 2007

Изучаем SQL

Мониторинг системной информации с помощью трассировки по умолчанию в SQL Server 2005

Tim Chapman (оригинал: Monitor system information with SQL Server 2005's default trace )
Перевод Моисеенко С.И.

Иногда трудно диагностировать проблемы на вашем SQL Server после того, как они случились. Вот почему Вы должны использовать возможности трассировки по умолчанию (default trace) SQL Server 2005 для мониторинга определенных событий.

Трассировка по умолчанию: введение

Трассировка - это деятельность, которая происходит в фоновом режиме на машине SQL Server и которая перехватывает определенные события и данные, связанные с этими событиями. Эта информация является очень большим подспорьем для диагностики проблем с производительностью, обнаруживая тупики и выполняя аудит информации по безопасности; и это лишь незначительная часть всех возможностей.

Файлы трассировки создаются и поддерживаются в SQL Server посредством языка T-SQL. Возможно, вы уже знакомы с использованием SQL Server Profiler для диагностики проблем производительности. SQL Server Profiler является клиентским приложением, которое позволяет Вам посредством графического интерфейса настраивать и контролировать SQL Server с помощью одной или нескольких трассировок.

В SQL Server 2005 трассировка по умолчанию всегда запускается в фоновом режиме для мониторинга определенных событий. Она почти не дает дополнительной нагрузки, но поможет сберечь Вам часы, которые вы потратите, пытаясь выяснить, что же случилось на вашем сервере. Если Вы только сейчас узнали о трассировке по умолчанию, Вы тут же можете изучить ваши файлы журнала трассировки, чтобы диагностировать недавние проблемы с вашим SQL Server.

Файлы журнала трассировки перевернуты, позволяя Вам изучать историю данных трассировки. Эта трассировка достаточно легкая, т.е. она не использует слишком много ресурсов на вашем SQL Server; и она не перехватывает каждое событие, которое происходит на вашем сервере. Трассировка по умолчанию перехватывает следующую информацию: когда запускался и останавливался сервер, неудачные попытки подключения логина, когда создавались и удалялись объекты, когда файлы системного журнала увеличивались в размере и сжимались. Если Вам требуется перехватывать другую информацию, помимо той, что предоставляет вам трассировка по умолчанию, Вы можете настроить отдельную трассировку, чтобы собрать необходимые данные.

Как найти трассировку по умолчанию

Вы можете сохранять файлы трассы SQL Server в таблице базы данных, в виде файла XML или в текстовом файле на сервере. По умолчанию, данная трассировка сохраняет данные событий в папке LOG в местоположении установки SQL Server. Если Вы не знаете, куда он установлен, есть несколько системных функций, которые Вы можете использовать, чтобы выяснить это.

Нижеприведенный скрипт вызывает табличнозначную системную функцию, которая возвращает данные для заданной трассировки, запущенной в базе данных, или информацию для всех исполняемых трассировок. Запрос, который я использую, возвратит все трассировки в системе.

 

SELECT *
 FROM fn_trace_getinfo(default)

 

Если в вашей системе в настоящее время запущена только одна трассировка по умолчанию, есть хороший шанс, что результирующий набор, возвращенный из вышеупомянутой функцией, будет похож на результирующий набор, который я получил на своей машине:

<pre><strong>traceid property value </strong> 1 1 2 1 2 C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\log_8.trc 1 3 20 1 4 NULL 1 5 1 </pre> <p>Вышеупомянутая функция сообщает имя и местоположение, где на сервере баз данных размещается мой файл трассировки по умолчанию. Это также говорит мне, что текущим является мой восьмой лог-файл трассировки. Это также означает, что, по крайней мере, имеется еще несколько других лог-файлов трассы в этой папке, к которым я могу обратиться позже в случае необходимости, если возникнут проблемы.</p> <h3>Просмотр данных в журнале</h3> <p>Имеется два варианта просмотра данных в лог-файле трассировки. Вы можете перейти в эту папку на сервере баз данных и щелкнуть на файле; это действие откроет файл трассировки в SQL Server Profiler, где вы и сможете просмотреть информацию. Там же Вы можете сохранить результаты в таблице или в документе XML.</p> <p>Второй способ состоит в том, чтобы скопировать этот путь к файлу непосредственно из результирующего набора и использовать его как параметр в другой системной табличнозначной функции, которая позволит Вам непосредственно запросить данные. Я предпочитаю этот способ, поскольку он позволяет мне опустить несколько шагов, как то сохранение данных в базе данных, чтобы потом написать запрос к ним.</p><font color="#0000ff"> <p>&nbsp;</p> <pre>SELECT * FROM fn_trace_gettable('C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLLOGlog_8.trc',default) ORDER BY starttime </pre> <p>&nbsp;</p></font> <p>Вызов вышеприведенной функции возвращает все данные из файла трассировки и сортирует их по времени события. С помощью этого запроса я могу быстро просмотреть все события, которые произошли за последнее время на моем сервере, выясняя, что могло вызвать проблемы.</p> <h3>Что дальше?</h3> <p>Трассировка по умолчанию - только небольшой пример мощных возможностей запуска трассировок в SQL Server. В следующей статье я покажу, как создавать собственные пользовательские трасстровки и запускать их на ваших серверах с помощью T-SQL.</p> <p>13/08/2007</p><!--------- Приведенные здесь примеры можно выполнить непосредственно на сайте, установив флажок "Без проверки" на странице с <a href="http://www.sql-ex.ru/exercises.php">упражнениями на SELECT</a>.</p> <h2>Работа</h2> ----------> <h2 align="center">Полезная информация</h2> <p><font color="#ff0080">&sect; </font>Все статьи, публикуемые в рассылке, затем выкладываются на сайте <a href="http://www.sqlbooks.ru/">Книги и статьи по SQL</a>.<br /></p> <p><font color="#ff0080">&sect; </font>В продаже еще имеется книга <a href="http://shop.piter.com/book/978546901362/">SQL. Задачи и решения</a>, посвященная анализу ошибок, допускаемых при решении задач первого этапа. На сайте издательства Питер можно сделать заказ и познакомиться с содержанием. </p> <p><font color="#ff0080">&sect; </font>Желающих поспособствовать популяризации сайта прошу проголосовать/поставить закладку в социальных сетях:<br /><a href="http://del.icio.us/post">del.icio.us</a><br /><a href="http://www.dzone.com/links/sql_exercises.html">dzone.com</a><br /><a href="http://digg.com/programming/SQL_Exercises">Digg.com</a><br /><a href="http://programming.reddit.com/search?q=sql-ex.ru">Reddit.com</a> </p> <h2 align="center">Контакты</h2> <p>По всем вопросам, связанным с функционированием сайта, проблемами при решении упражнений, идеями вы можете обращаться к Сергею И.Моисеенко <a href="mailto:msi77@yandex.ru">msi77@yandex.ru</a>. Вы также можете предложить свои задачи для публикации на сайте.</p></strong> <div align="center"> <form action="[object]" method="get" target="_top"><input type="hidden" value="quick" name="action" /> <input type="hidden" value="list_comp.soft.db.sqlex" name="src" /> <table cellspacing="0" cellpadding="2" border="1"> <tbody> <tr> <td align="center" bgcolor="#fcf5e9"><font color="#000000" size="-1">Подписка </font><a href="http://subscribe.ru/" target="_top"><strong><font color="#0000ff" size="-1">Subscribe.Ru</font></strong></a> </td> </tr> <tr> <td valign="middle" align="center" bgcolor="#ffffff"><font color="#000000" size="-1">Новости сайта &quot;Упражнения по SQL&quot;</font><br /><font size="2"><input type="hidden" value="comp.soft.db.sqlex" name="grp" /> <input style="FONT-SIZE: 9pt" value="Ваш e-mail" name="email" maxlen="100" /> <input style="FONT-SIZE: 9pt" type="submit" value="OK" /> </font></td> </tr> </tbody> </table> </form> </div></strong> <!-- " ' --></td> <!-- # include virtual="/skin/issue/topmenu.side.shtml"--></tr> </table> <!-- # include virtual="/skin/issue/post.shtml"--> <x-base href="http://subscribe.ru/archive/comp.soft.db.sqlex/200709/15005201.html"> </span> <div class="clear"></div> <hr noshade color="#cccccc" size="1"/> <table border=0><tr> <td style="vertical-align: middle;"> <a rel="nofollow" href="/member/love?what=add&type=issue&content=comp.soft.db.sqlex,20070915005201" class="subscriberu_love subscriberu_unlove subscriberu_unknown article_bottomlike subscriberu_bookmark" id="b4" title="В избранное"> <span class="noPhones">В избранное</span></a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </td> <td valign=top> <script type="text/javascript" src="http://userapi.com/js/api/openapi.js?34"></script> <script type="text/javascript"> VK.init({apiId: 2641035, onlyWidgets: true}); </script> <div id="vk_like"></div> <script type="text/javascript"> VK.Widgets.Like("vk_like", {type: "button", verb: 1}); </script> </td> <td valign="top" class="noPhones"> </td> </tr> <tr class="noComps noTabletsPort noTabletsLand"><td></td><td> </td></tr> </table> <br> <!-- GiN hands --> <script type="text/javascript" src="/js/blog/ajax_comment.js?20241125173046-273291-998903"></script> <span id="comments"> <span id="xmlObj"> <span id="commentblock"> <script type="text/javascript"> $(document).ready(function() { var comment_href = '/blog/ajax/comp.soft.db.sqlex/20070915005201/?action=get_comments'; $("#commentblock").load(comment_href); }); </script> </span> </span> </span> <!--/GiN hands --> </div> <!--/group-sends--> </div> <!--/group-content--> <!--/archive --> </div> </div> <!--/layer-grid5--> <!--</div></div> otherwise footer broken--> <!--group-page,inside--> <div class="noPhones noTabletsPort noTabletsLand"> </div> <!-- не залогинен --> <link rel="stylesheet" type="text/css" href="/css/login_register_form/res.css"/> <link rel="stylesheet" type="text/css" href="/css/login_register_form/style.css"/> <!--[if IE]><link rel="stylesheet" type="text/css" href="/css/login_register_form/ie.css"/><![endif]--> <form id="rform" autocomplete="off" method="POST" action="/member/join" target="_top"> <input type="hidden" name="destination" value=""> <input type="hidden" name="addgrp" id="addgrp" value=""> <input type="hidden" name="openid" value=""> <input type="hidden" name="agree" value="on"> </form> <div id='js_tmpl'></div> <p style="display:none;"> <textarea id="js_tmpl_login_register" rows="0" cols="0"> {#template MAIN} <div id="loginForm" style="display:none;" class="subscriberu_popup"> <div class="popup_register"> {#include js_tmpl_auth_reg_tab} {#if $P.login_register_tab == 1} <form class="authentication-form" method="post" action="/MEMBERLOGIN_authen_cred"> <dl class="rg_block_options"> <dt id="js_tap_panel_auth"> <h1>Войти на сайт</h1> {* {#include js_tmpl_auth_reg_button} *} {#include js_tmpl_auth_reg_action} <hr class="logreg_line noPhones"> <div class="logreg_descr noPhones"><p>{#include js_tmpl_auth_reg_descr} </p></div> <div class="logreg_advice noPhones"> Если вы еще не с нами, то начните с <a href="#" onclick="rgNav('js_tab_reg');return false;" class="dashed" data-func="registr">регистрации</a> </div> <br><br> <a class="dashed auth-enter" href="/manage/author/"><b>Вход для авторов</b></a> </dt> </dl> </form> {#/if} {#if $P.login_register_tab == 2} <div class="rg_block_options"> <div id="js_tap_panel_auth"> <h1>Регистрация</h1> <div class="social_reg"> {* <div class="rg_description">{#include js_tmpl_soc_auth_reg_descr}</div> *} {#include js_tmpl_auth_reg_soc} <div class="rg_soc_auth_agree">{#include js_tmpl_auth_reg_agree}</div> </div> <div class="subscribe_reg"> {* <div class="rg_description"> #include js_tmpl_auth_reg_descr </div> *} {#include js_tmpl_auth_reg_action} </div> {* {#include js_tmpl_auth_reg_button} *} <div class="clr">&nbsp;</div> <hr class="logreg_line noPhones"> <div class="logreg_descr noPhones">{#include js_tmpl_auth_reg_descr} {#include js_tmpl_soc_auth_reg_descr} </div> </div> </div> {#/if} </div> {* <div class="gray_bg register_shadow"></div> *} </div> {#/template MAIN} {#template js_tmpl_auth_reg_tab} <ul class="rg_nav"> <li id="js_tab_auth" class="{#if $P.login_register_tab == 1} rg_active_nav {#/if} rg_first_nav"><a onclick="rgNav('js_tab_auth');return false;" href="">Вход на сайт</a></li> <li id="js_tab_reg" class="{#if $P.login_register_tab == 2} rg_active_nav {#/if}"><a onclick="rgNav('js_tab_reg');return false;" href="">Регистрация </a></li> </ul> <span onclick="hidebo();" class="rg_closed">&nbsp;</span> {#/template js_tmpl_auth_reg_tab} {#template js_tmpl_auth_reg_action} {#if $P.login_register_tab == 1} {#include js_tmpl_auth_reg_soc} {#/if} <div class="rg_forms"> <input type="hidden" id="login_register_destination" value="{$P.login_register_destination}"/> {#if $P.login_register_tab == 1} <div class="rg_for_input"> <span class="rg_text_inner">E-mail или код подписчика</span> <input id="credential_0" class="js_keydown_selector rg_input_text" data-js_submit="no" data-js_next_input_name="credential_1" name="" type="text" /> </div> <div class="rg_for_input"> <span class="rg_text_inner">Пароль</span> <input id="credential_1" class="js_keydown_selector rg_input_text" data-js_submit="yes" data-js_action="js_loginFormBut" name="" type="password" onkeyup="showAttention(this,!!window.event.shiftKey)" /> <span class="pswd_attention" id="attention_pswd"> <span class="icon_attention"></span> <span class="pswd_attention-text" id="attention-text_pswd1">Русская раскладка клавиатуры!</span> <span class="pswd_attention-text" id="attention-text_pswd2">У вас включен Caps Lock!</span> <span class="pswd_attention-text" id="attention-text_pswd3">У вас включен Caps Lock и русская раскладка клавиатуры!</span> </span> </div> <div class="rg_for_input input-alien"> <span class="chk noPhones"><input id="chk_alien" name="" type="checkbox" /></span><label for="chk_alien" class="noPhones"> Чужой компьютер</label> <a class="forgot_pass" href="/member/totalrecall">Забыли пароль?</a> </div> <div class="rg_for_input"> <em id="auth_msg" class="reg_error"></em> <input id="lf_typeauthid" value="email" type="hidden"> <input type="submit" class="button button-red logreg_submit" id="js_loginFormBut" value="Войти"> <!--</a>--> <div class="loading loading-cover" style="display: none;"><div class="loader"></div></div> </div> {#/if} {#if $P.login_register_tab == 2} <div class="rg_for_input"> <span class="rg_text_inner">E-mail</span> <input id="arfemail" class="js_keydown_selector rg_input_text" name="" type="text" data-js_submit="yes" data-js_action="js_regFormBut"/> </div> <div class="rg_for_input rg_set_lineh rg_for_input_wide"> <label class="js_tap_panel_checkbox"> <span class="chk"><input name="" id='js_tap_panel_checkbox_terms' type="checkbox" data-js_submit="yes" /></span> Я ознакомился и согласен с&nbsp;<a class="link_txd logreg_accLink" href="/faq/vereinbarung.html">условиями сервиса Subscribe.ru</a> </label> <br /> <label class="js_tap_panel_checkbox"> <span class="chk"><input name="" id='js_tap_panel_checkbox_personal' type="checkbox" data-js_submit="yes" /></span> Нажимая на кнопку "Готово!", я даю <a class="link_txd logreg_accLink" href="/faq/persverordnung.html">согласие на обработку персональных данных</a> </label> </div> {* <div style="float: left;position: absolute;left: 11em;"> <img src="http://www.kupivip.ru/images/vip/logo.png?1604" style="width: 86px; vertical-align: middle;display: block;"> </div> <div class="rg_for_input rg_set_lineh"> <label class="js_tap_panel_checkbox"><input name="" id="js_tap_panel_checkbox_kupivip" type="checkbox" data-js_submit="yes"> Я хочу получать новости о скидках на одежду</label> </div> *} <div class="rg_for_input"> <em id="reg_msg" class="reg_error rg_for_input_wide"></em> <em id="reg_msg2" class="reg_error rg_for_input_wide"></em> <input id="rf_typeauthid" value="email" type="hidden"> <a class="button button-red logreg_submit" id="js_regFormBut" href="#">Готово!</a> <div class="loading loading-cover" style="display: none;"><div class="loader"></div></div> </div> {#/if} </div> {#/template js_tmpl_auth_reg_action} {#template js_tmpl_auth_reg_agree} <div class="rg_for_input rg_set_lineh rg_for_input_wide"> <label class="js_tap_panel_checkbox"> <span class="chk"><input name="" id='js_tap_panel_checkbox_terms_reg' type="checkbox" data-js_submit="yes" /></span> Я ознакомился и согласен с&nbsp;<a class="link_txd logreg_accLink" href="/faq/vereinbarung.html">условиями сервиса Subscribe.ru</a></label> <em id="reg_msg_soc" class="reg_error rg_for_input_wide"></em> </div> {#/template js_tmpl_auth_reg_agree} {#template js_tmpl_auth_reg_button} <div class="rg_butons_socials"> {#if $P.login_register_tab == 1} <a class="rg_btn_soc rg_bs_01 js_tap_panel_selector" action="auth_email" href="#"><span><i></i>Email</span></a> <a class="rg_btn_soc rg_bs_01 js_tap_panel_selector" action="auth_openid" href="#"><span><i></i>OpenID</span></a> <a class="rg_btn_soc rg_bs_02 js_tap_panel_selector" action="auth_vkontakte" href="#"><span><i></i>Вконтакте</span></a> <a class="rg_btn_soc rg_bs_02 js_tap_panel_selector" action="auth_mailru" href="#"><span><i></i>Mail.Ru</span></a> {#/if} {#if $P.login_register_tab == 2} <a class="rg_btn_soc rg_bs_01 js_tap_panel_selector" action="reg_email" href="#"><span><i></i>Email</span></a> <a class="rg_btn_soc rg_bs_01 js_tap_panel_selector" action="reg_openid" href="#"><span><i></i>OpenID</span></a> <a class="rg_btn_soc rg_bs_02 js_tap_panel_selector" action="reg_vkontakte" href="#"><span><i></i>Вконтакте</span></a> <a class="rg_btn_soc rg_bs_02 js_tap_panel_selector" action="reg_mailru" href="#"><span><i></i>Mail.Ru</span></a> {#/if} </div> {#/template js_tmpl_auth_reg_button} {#template js_tmpl_auth_reg_descr} {#if $P.login_register_tab == 1} Для оформления подписки на выбранную рассылку, работы с интересующей вас группой или доступа в нужный вам раздел, просим авторизоваться на Subscribe.ru {#/if} {#if $P.login_register_tab == 2} Для регистрации укажите ваш e-mail адрес. Адрес должен быть действующим, на него сразу после регистрации будет отправлено письмо с инструкциями и кодом подтверждения. {#/if} {#/template js_tmpl_auth_reg_descr} {#template js_tmpl_soc_auth_reg_descr} Или зарегистрируйтесь через социальную сеть. {#/template js_tmpl_soc_auth_reg_descr} {#template js_tmpl_auth_reg_soc} <div class="rg_soc"> {#if $P.login_register_tab == 1} <a onclick="return _checkSocConfirm(event)" href="https://oauth.vk.com/authorize?client_id=3954260&scope=wall,offline,photos,groups,video,audio,email&redirect_uri={location.protocol+'//'+location.host}/member/login/vk/&response_type=code&v=5.15" class="login_register_vk_button"> <span class="login_register_vk_icon"></span> </a> {#/if} {#if $P.login_register_tab == 2} <a onclick="return _checkSocConfirm(event)" href="https://oauth.vk.com/authorize?client_id=3954260&scope=wall,offline,photos,groups,video,audio,email&redirect_uri={location.protocol+'//'+location.host}/member/join/vk&response_type=code&v=5.15" class="login_register_vk_button"> <span class="login_register_vk_icon"></span> </a> {#/if} </div> {#/template js_tmpl_auth_reg_soc} </textarea> </p> <p style="display:none;"> <textarea id="js_tmpl_confirm_register" rows="0" cols="0"> {#template MAIN} <div id="loginForm" style="display:none;" class="subscriberu_popup"> <div class="popup_register"> {#include js_tmpl_auth_reg_tab} <dl class="rg_block_options"> <dt id="js_tap_panel_auth"> <p class="rg_description">{#include js_tmpl_auth_reg_descr}</p> <div class="clr">&nbsp;</div> {#include js_tmpl_auth_reg_action} <div class="clr">&nbsp;</div> </dt> </dl> </div> <!-- <div class="gray_bg register_shadow"></div> --> </div> {#/template MAIN} {#template js_tmpl_auth_reg_tab} <ul class="rg_nav"> <li id="js_tab_reg" class="rg_active_nav rg_first_nav"><a href="" onclick="return false;" >Регистрация</a></li> </ul> <span onclick="hidebo();" class="rg_closed">&nbsp;</span> {#/template js_tmpl_auth_reg_tab} {#template js_tmpl_auth_reg_descr} <strong>Пожалуйста, подтвердите ваш адрес.</strong><br><br>Вам отправлено письмо для подтверждения вашего адреса {$P.register_confirm_mail}.<br>Для подтверждения адреса перейдите по ссылке из этого письма. {#/template js_tmpl_auth_reg_descr} {#template js_tmpl_auth_reg_action} <div class="rg_forms confirm_code_from_letter"> <div class="rg_for_input"> <span class="rg_inp_descr" style="width:15em;">Или введите код из письма:</span> <input type="text" value="" id="confirm_code" name="" data-js_submit="yes" data-js_action="js_confirmFormBut" class="js_keydown_selector rg_input_text_conf" > </div> <div class="rg_for_input"><label>Не пришло письмо? <b>Пожалуйста, проверьте папку Спам</b><br /> (папку для нежелательной почты).</label><br /> &nbsp;<a href="" onclick="ajax_recall_code();return false" >Вышлите мне письмо еще раз!</a></div> <div class="rg_for_input"> <em class="reg_error" id="confirm_msg"></em> <a href="#" class="button button-red" id="js_confirmFormBut">Готово</a> <div class="loading loading-cover" style="display: none;"><div class="loader"></div></div> <br> </div> </div> {#/template js_tmpl_auth_reg_action} </textarea> </p> <!--/catalog-post.--> <footer class="layer-grid2"> <div class="inside"> <div class="module-grid-footer noPhones noTabletsPort"> <div class="module module-1"> <ul class="footer_ul footer_ul1"> <li class="footer_li-head">Пользователю</li> <li class="footer_li"><a href="/manage/author/" class="footer_link">Вход для авторов</a></li> <li class="footer_li"><a href="/member/join/" onclick="showloginForm(1); return false" class="footer_link">Регистрация</a></li> <li class="footer_li"><a href="/faq/vereinbarung.html" class="footer_link">Регламент</a></li> <li class="footer_li"><a href="/faq/" class="footer_link">Помощь</a></li> </ul> <ul class="footer_ul footer_ul2"> <li class="footer_li-head">Инфо</li> <li class="footer_li"><a href="/about/" class="footer_link">О компании</a></li> <li class="footer_li"><a href="/group/subsnews/" class="footer_link">Блог Subscribe.ru&nbsp;+&nbsp;</a></li> <li class="footer_li"><a href="/about/privacy.html" class="footer_link">Безопасность</a></li> <li class="footer_li"><a href="/about/job.html" class="footer_link">Вакансии</a></li> <li class="footer_li"><a href="/feedback/" class="footer_link">Обратная связь</a></li> </ul> <ul class="footer_ul footer_ul3"> <li class="footer_li-head">Услуги</li> <li class="footer_li"><a href="http://advert.subscribe.ru/" class="footer_link">Реклама</a></li> <li class="footer_li"><a href="http://plus.subscribe.ru/" class="footer_link">Корпоративные издания</a></li> <li class="footer_li"><a href="https://sendsay.ru/?utm_source=subscribe-bottom&utm_medium=subswebsite&utm_campaign=subscribe-bottom" class="footer_link">Sendsay</a></li> <li class="footer_li"><a href="/auction/" class="footer_link">Аукцион рассылок</a></li> <li class="footer_li"><a href="/events" class="footer_link">События</a></li> </ul> <ul class="footer_ul footer_ul4"> <li class="footer_li-head">Каталог рассылок</li> <li class="footer_li"><a href="/catalog/auto" class="footer_link">Автомобили</a></li> <li class="footer_li"><a href="/catalog/travel" class="footer_link">Туризм</a></li> <li class="footer_li"><a href="/catalog/woman" class="footer_link">Мир женщины</a></li> <li class="footer_li"><a href="/catalog/business" class="footer_link">Бизнес и карьера</a></li> <li class="footer_li"><a href="/catalog/economics" class="footer_link">Экономика и финансы</a></li> <li class="footer_li"><a href="/catalog/hitech" class="footer_link">Hi-Tech</a></li> <li class="footer_li"><a href="/catalog/comp/" class="footer_link">Компьютеры и интернет</a></li> </ul> </div> <div class="module module-2"> <ul class="footer_ul footer_ul5"> <li class="footer_li-head">&nbsp;</li> <li class="footer_li"><a href="/catalog/sport" class="footer_link">Спорт</a></li> <li class="footer_li"><a href="/catalog/weather" class="footer_link">Прогноз погоды</a></li> <li class="footer_li"><a href="/catalog/media" class="footer_link">Новости и СМИ</a></li> <li class="footer_li"><a href="/catalog/country" class="footer_link">Страны и Регионы</a></li> <li class="footer_li"><a href="/catalog/socio" class="footer_link">Общество</a></li> <li class="footer_li"><a href="/catalog/home" class="footer_link">Дом и семья</a></li> <li class="footer_li"><a href="/catalog/culture" class="footer_link">Культура, стиль жизни</a></li> </ul> </div> </div> <hr class="footer_line"> <div class="footer_cr noPhones"> <div class="footer_cr-left">&copy; 1997-<span class="year_auto"></span>&nbsp;<a href="https://subscribe.ru/about/">АО &laquo;Интернет-Проекты&raquo;</a></div> <div class="footer_cr-right"><div class="footer_cr-copy">Дизайн сайта - <a href="//nikoland.ru/" target="_blank" class="red">Nikoland</a><br><small>2014</small></div></div> <div class="footer_cr-center"> <div class="socs footer_socs"> <a href="//vk.com/subscribe_news" class="socs-vk"><span class="noPhones noTabletsPort noTabletsLand">Мы вконтакте</span></a> <a href="//ok.ru/group/53236793671861" class="socs-ok"><span class="noPhones noTabletsPort noTabletsLand">Мы в Одноклассниках</span></a> </div> </div> </div> <div class="footer_cr2 phones"> <div class="footer_cr2-text"> &copy; 1997-<span class="year_auto"></span> &nbsp;<a href="/about/">АО &laquo;Интернет-Проекты&raquo;</a> <br>Дизайн сайта - <a href="//nikoland.ru/" target="_blank" class="red">Nikoland</a><br><small>2014</small> </div> <div class="socs footer_socs"> <a href="//vk.com/subscribe_news" class="socs-vk"></a> <a href="//ok.ru/group/53236793671861" class="socs-ok"></a> </div> <br /> </div> </div> </footer> </section> </div> <div class="sendsay_adv"> <a href="https://sendsay.ru/?utm_source=subscribe&utm_campaign=travel2&utm_medium=banner " target="_blank"> <img src="/img/new/banner_sendsay3.png"> </a> </div> <div class="overlay"></div> <!-- счетчики --> <script type="text/javascript" src="https://www.google-analytics.com/ga.js"></script> <script language="JavaScript"> $(document).ready(function(){ try { var pageTracker = _gat._getTracker("UA-2163144-1"); pageTracker._trackPageview(); pageTracker._trackPageLoadTime(); } catch(err) {} }) </script> </div> <div id="yandex_rtb_R-A-47721-7"></div> <script type="text/javascript"> if(document.documentElement.clientWidth < 750) { (function (w, d, n, s, t) { w[n] = w[n] || []; w[n].push(function () { Ya.Context.AdvManager.render({ blockId: "R-A-47721-7", renderTo: "yandex_rtb_R-A-47721-7", async: true }); }); t = d.getElementsByTagName("script")[0]; s = d.createElement("script"); s.type = "text/javascript"; s.src = "//an.yandex.ru/system/context.js"; s.async = true; t.parentNode.insertBefore(s, t); })(this, this.document, "yandexContextAsyncCallbacks"); } </script> <script type="text/javascript"> var e = document.getElementById('b_script_1774952'); if(document.documentElement.clientWidth < 750 && e) { var s = this.document.createElement("script"); s.src = "//cache.betweendigital.com/sections/2/1774952.js"; s.async = true; e.insertBefore(s, null); } </script> <!-- Google Tag Manager --> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-KNWLLF" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <script> $(function () { $(document).ready(function(){ (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-KNWLLF'); }); }); </script> <!-- /Google Tag Manager dig art --> <!-- Yandex.Metrika counter --> <script type="text/javascript" > (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)}; m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)}) (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); ym(52998478, "init", { clickmap:true, trackLinks:true, accurateTrackBounce:true }); </script> <noscript><div><img src="https://mc.yandex.ru/watch/52998478" style="position:absolute; left:-9999px;" alt="" /></div></noscript> <!-- /Yandex.Metrika counter --> <!-- <script type="text/javascript"> (function(d,w,t,u,o,s,v) { w[o] = w[o] || function() { (w[o].q = w[o].q || []).push(arguments) }; s = d.createElement("script");s.async = 1; s.src = u; v = d.getElementsByTagName(t)[0]; v.parentNode.insertBefore(s, v); })(document,window,"script","https://image.sendsay.ru/js/push/push.js","sendsay_push"); sendsay_push("init", { v: "1.0", "fid": "subsay", "app_server_key": "BPID5HX4zN1TXYS1ZvIegGjK1KNPBxoMpAamiOkpmVYf3UonMwan0L01sym2hfWRVpoxV-qy6mqSwqmS22wjpB8", "backend": "https://sendsay.ru/backend/push", "sw": "/sendsay_push_sw.js", "delay": "300" }); sendsay_push("addData", {"member.email":""}); sendsay_push("subscribe"); </script> --> </body></html>