Календарь >> "; $pg_monthss = array("Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"); $pg_months = array("Января", "Февраля", "Марта", "Апреля", "Мая", "Июня", "Июля", "Августа", "Сентября", "Октября", "Ноября", "Декабря"); $pg_countrys = array("rus" => "Россия", "ukr" => "Украина", "tur" => "Турция", "mol" => "Молдавия"); $db_query = ""; $db_date_cond = ""; $db_path_cond = ""; //if (preg_match("{^/calendar/([:/0-9]+)(\?[-._&=a-z0-9]+)?$}i", $pg_path, $matches) && $matches[1] != "") { if (preg_match("|^/calendar/(\d{4}(/\d{2}(/\d{2}(/\d{2}(:\d{2}(:\d{2})?)?)?)?)?)?/?|i", $pg_path, $matches) /* && $matches[1] != "" */ ) { $db_date = preg_replace("{[:/]}", "", $matches[1]); $db_date = substr($db_date, 0, 14); $db_date_4sql = str_replace("/","-",$matches[1]); if (substr($db_date_4sql,10,1) == "-") $db_date_4sql = substr($db_date_4sql,0,10)." ".substr($db_date_4sql,11); $db_date_cond = " AND `r3_text`.`date_pub` LIKE '".$db_date_4sql."%'"; // echo $db_date_cond; if ($matches[8]) { $pg_title_add=""; } elseif ($matches[7]) { $pg_title_add=" за ..... " . $db_date_4sql ; } elseif ($matches[6]) { $pg_title_add=" за секунду " . $db_date_4sql ; } elseif ($matches[5]) { $pg_title_add=" за минуту " . $db_date_4sql ; } elseif ($matches[4]) { $pg_title_add=" за час " . $db_date_4sql ; } elseif ($matches[3]) { $pg_title_add=" за день " . $db_date_4sql ; } elseif ($matches[2]) { $pg_title_add=" за месяц " . $db_date_4sql ; $ca_list=''; for ($i=1;$i<=9;$i++) { $ca_list .= ''.$i.' '; } for ($i=10;$i<=cal_days_in_month(CAL_GREGORIAN, substr($matches[2],1,2), substr($matches[1],0,4));$i++){ $ca_list .= ''.$i.' '; } } elseif ($matches[1]) { $pg_title_add=" за год " . $db_date_4sql ; $ca_list=''; for ($i=1;$i<=9;$i++) { $ca_list .= ''.$pg_monthss[$i-1].' '; } for ($i=10;$i<=12;$i++){ $ca_list .= ''.$pg_monthss[$i-1].' '; } } else { $pg_title_add=" за всё время" ; $ca_list=''; for ($i=2005;$i<=2020;$i++) { $ca_list.=''.$i.' '; } } // echo "1:" . $matches[1]. "
". $matches[2]. "
" . $matches[3]. "
" . $matches[4]. "
" . $matches[5]. "
" . $matches[6]. "
" . $matches[7]. "
" . $matches[8] ; // только для тестирования // die( $pg_title_add . '$ca_list = "' . $ca_list . '"'); // (".!."); } elseif (preg_match("{^/calendar(/[-._a-z0-9]+)+$}i", $pg_path)) { $db_path_cond = " AND CONCAT(`r3_topic`.`path_lat`, `r3_topic`.`topic_name`, '/', `r3_text`.`text_name`) LIKE '".$pg_path."%'"; } // $CURRENT_TIMESTAMP=date("YmdHis",mktime()); // $cut_future_date = " AND `r3_text`.`date_pub` < CURRENT_TIMESTAMP"; if (isset($_GET["start"])) $db_start = intval($_GET["start"]); else $db_start = 0; if (isset($_GET["offset"])) $db_offset = intval($_GET["offset"]); else $db_offset = 10; $db_query = "SELECT `r3_text`.`text_id`, `r3_text`.`date_pub`, `r3_text`.`text_name`, `r3_text`.`title`, `r3_text`.`text`, `r3_text`.`country`," ." `r3_text`.`pict2_ext`, `r3_text`.`pict_alt`, `r3_topic`.`topic_name`, `r3_topic`.`title`, `r3_topic`.`kword`, `r3_topic`.`descr`," ." `r3_topic`.`path_lat`, `r3_topic`.`topic_name` FROM `r3_text`" ." LEFT JOIN `r3_topic` ON `r3_text`.`topic_id` = `r3_topic`.`topic_id`" ." WHERE `r3_text`.`type` = '0'" ." AND `r3_text`.`usr_active` = '1'" // .$cut_future_date .$db_date_cond .$db_path_cond ." ORDER BY `r3_text`.`date_pub` DESC" ." LIMIT ".$db_start.", ".$db_offset; $db_result = mysql_query_ext($db_query); if (!$db_result) { header ('HTTP/1.x 500 Server Error. '); echo "

Ошибка доступа к базе: " . mysql_error()."
\n"; echo ""; exit; } $pg_tmpl = file_get_contents("inc/tmpl_calendar_show.html");// шаблон share1 //echo mysql_num_rows($db_result), "
\n"; if (mysql_num_rows($db_result) != 0 && $pg_tmpl != false) { while (list($pg_text_id, $pg_date_pub, $pg_text_name, $pg_title, $pg_text, $pg_country, $pg_pict2_ext, $pg_pict_alt, $pg_tp_topic_name, $pg_tp_title, $pg_tp_kword, $pg_tp_descr, $pg_tp_path_lat, $pg_tp_topic_name) = mysql_fetch_row($db_result)) { $pg_description = $pg_tp_descr; $pg_keywords = $pg_tp_kword; if ($pg_pict2_ext !== NULL) { if (file_exists($_SERVER['DOCUMENT_ROOT']."/pic/".$pg_text_id."_2.".$pg_pict2_ext)) $pg_pict = "\"".$pg_pict_alt."\""; } else { if (file_exists($_SERVER['DOCUMENT_ROOT']."/pic/".$pg_text_id."_1.jpg")) $pg_pict = "/pic/".$pg_text_id."_1.jpg"; elseif (file_exists($_SERVER['DOCUMENT_ROOT']."/pic/".$pg_text_id."_1.jpeg")) $pg_pict = "/pic/".$pg_text_id."_1.jpeg"; elseif (file_exists($_SERVER['DOCUMENT_ROOT']."/pic/".$pg_text_id."_1.gif")) $pg_pict = "/pic/".$pg_text_id."_1.gif"; elseif (file_exists($_SERVER['DOCUMENT_ROOT']."/pic/".$pg_text_id."_1.png")) $pg_pict = "/pic/".$pg_text_id."_1.png"; elseif (file_exists($_SERVER['DOCUMENT_ROOT']."/pic/".$pg_text_id."_1.bmp")) $pg_pict = "/pic/".$pg_text_id."_1.bmp"; else $pg_pict = "/img/no_image2.gif"; $pg_pict = "\"".$pg_pict_alt."\""; } $pg_tp_title = cyr_case_ch($pg_tp_title, 1); if ($pg_tp_topic_name === NULL) {$pg_tp_path_lat = ""; $pg_tp_topic_name = "";} $pg_path = $pg_tp_path_lat.$pg_tp_topic_name."/".$pg_text_name; // сокращённый текст $pg_text = preg_replace("{]+>}i", " ", $pg_text); // Убираем все теги по всему тексту $pg_text = preg_replace("{^( |\s)*}si", " ", $pg_text); // В начале текста могу оказаться пробелы или " " $pg_text2_cut = 300; // Кол-во символов в строке $re_text_cut = "{[.,:;]?(\s\S{1,4})*\s\S*$}s"; // Рег. Выр. для удаления последнего солва, предлога и знаков препинания $pg_text = preg_replace($re_text_cut, " ...", substr($pg_text, 0, $pg_text2_cut)); // шаблон одного элемента выводимого списка $pg_part = prepare_toeval($pg_tmpl); eval("\$pg_part = \"$pg_part\";"); $pg_cent_col .= $pg_part; } } else { // (mysql_num_rows($db_result) != 0 && $pg_tmpl != false) $pg_cent_col = "

Статей нет

"; http_response_code(404); } if (mysql_num_rows($db_result) != 0) { // путь, название рубрики и т.д. echo " "; // навигация по годам, месяцам, дня и цепочка обратной навигации $pg_nav_line = "Календарь"; //strlen($db_date) switch (strlen($db_date)) { case 0: $db_period = "'1', '4'";// годы $pg_period_path = "/calendar/"; break; case 4: $db_period = "'5', '2'";// месяцы $pg_period_path = "/calendar/".substr($db_date, 0, 4)."/"; $pg_nav_line .= " >> ".substr($db_date, 0, 4).""; break; case 6: case 8: case 10: case 12: case 14: $db_date_cond = " AND `r3_text`.`date_pub` LIKE '".substr($db_date, 0, 6)."%'"; $db_period = "'7', '2'";// дни $pg_period_path = "/calendar/".substr($db_date, 0, 4)."/".substr($db_date, 4, 2)."/"; $pg_nav_line .= " >> ".substr($db_date, 0, 4)." >> ".$pg_monthss[intval(substr($db_date, 4, 2))-1].""; break; default: $db_period = "'1', '4'";// годы $pg_period_path = "/calendar/".substr($db_date, 0, 4)."/"; } $CURRENT_TIMESTAMP=date("YmdHis",mktime()); $db_query = "SELECT SUBSTRING(`date_pub`, ".$db_period.") AS `period`, COUNT(`text_id`) FROM `r3_text`" ." WHERE `type` = '0' AND `usr_active` = '1' AND `date_pub` < CURRENT_TIMESTAMP".$db_date_cond ." GROUP BY `period` ORDER BY `period`"; $db_res=mysql_query_ext($db_query); $pg_tp_list_tmpl = file_get_contents("inc/tmpl_topic_item.html"); if (!$db_res) echo "

Ошибка доступа к базе: " . mysql_error()."
\n"; elseif ($pg_tp_list_tmpl != false && mysql_num_rows($db_res) > 0) { while (list($pg_tp_name, $pg_tp_path) = mysql_fetch_row($db_res)) { $pg_tp_path = $pg_period_path.$pg_tp_name."/"; if (strlen($db_date) == 4) $pg_tp_name = $pg_monthss[intval($pg_tp_name)-1]; $pg_tp_item = prepare_toeval($pg_tp_list_tmpl); eval("\$pg_tp_item = \"$pg_tp_item\";"); $pg_tp_list .= $pg_tp_item; } } else {$pg_comm2_on = "";} } ///////////////////// // навигация по годам, месяцам, дня и цепочка обратной навигации $pg_nav_line = "Календарь"; //strlen($db_date) switch (strlen($db_date)) { case 0: $db_period = "'1', '4'";// годы $pg_period_path = "/calendar/"; break; case 4: $db_period = "'5', '2'";// месяцы $pg_period_path = "/calendar/".substr($db_date, 0, 4)."/"; $pg_nav_line .= " >> ".substr($db_date, 0, 4).""; break; case 6: case 8: case 10: case 12: case 14: $db_date_cond = " AND `r3_text`.`date_pub` LIKE '".substr($db_date, 0, 6)."%'"; $db_period = "'7', '2'";// дни $pg_period_path = "/calendar/".substr($db_date, 0, 4)."/".substr($db_date, 4, 2)."/"; $pg_nav_line .= " >> ".substr($db_date, 0, 4)." >> ".$pg_monthss[intval(substr($db_date, 4, 2))-1].""; break; default: $db_period = "'1', '4'";// годы $pg_period_path = "/calendar/".substr($db_date, 0, 4)."/"; } ///////////////////// // вывод $pg_title = " : Календарь" . $pg_title_add; $pg_tp_title = "КАЛЕНДАРЬ"; $pg_header = file_get_contents("inc/tmpl_topic_show.html"); $pg_header = prepare_toeval($pg_header); eval("\$pg_header = \"$pg_header\";"); $pg_cent_col = $pg_header.$pg_cent_col; ?> Нет такого материала на сайте