Arhar Опубликовано 7 Января 2008 Жалоба Поделиться Опубликовано 7 Января 2008 подумай логичночто такое whereпо русскии зачем там есть такие штуки как AND и ORих тоже по русскиведь программисты тоже люди и язык запроса тоже людьми созданты же не говоришь "дайте мне огурец который красный который короткий который толстый"ты наверное говоришь "который красный и короткий и толстый" оффтопче-то тему про первую линейку оживились Ссылка на комментарий Поделиться на других сайтах Прочее
DacentGS Опубликовано 7 Января 2008 Жалоба Поделиться Опубликовано 7 Января 2008 Arhar, понятно. Просто сразу не сообразил, но все равно сделал бы правельно, метадом проб и ошибок. Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 7 Января 2008 Жалоба Поделиться Опубликовано 7 Января 2008 Если нужен кусок кода по "сборке" условия для запроса, то можно посмотреть как я это делал для мода расширенного SSI экспорта для 2.х. че-то тему про первую линейку оживилисьПора переходить Ссылка на комментарий Поделиться на других сайтах Прочее
DacentGS Опубликовано 7 Января 2008 Жалоба Поделиться Опубликовано 7 Января 2008 Да вот пока что начал с этого. ))$show = isset($ibforums->input['show']) ? intval($ibforums->input['show']) : 0; if ($show == 'topics') { $limit = "5"; }Ну это так, для проверки.Сейчас буду думать что делать дальше. Эмм а ссылку можешь дать на "расширенный RSS Export"? Единственное что не могу понять, так это как топики заставить отображатся, именно темы а не сообщения. Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 7 Января 2008 Жалоба Поделиться Опубликовано 7 Января 2008 Делать SELECT не сообщений, а тем. Цитата какая-то левая Если мы с $show сделаем такое, то оно никогда не будет == 'topics'. Intval нужно брать от переменных, в которых должны быть числа, я это приводил для f=5 и t=3;Вот с ними как раз и нужно делать так. $f = isset($ibforums->input['f']) ? intval($ibforums->input['f']) : 0; if( $f ) { $where .= "AND forum_id={$f}"; } Ссылка на комментарий Поделиться на других сайтах Прочее
DacentGS Опубликовано 7 Января 2008 Жалоба Поделиться Опубликовано 7 Января 2008 Что не выходит у меня... Сложновато все же. Только что заметил, что у Сонга есть как раз то что нужно, интересно, поможет ли... Ссылка на комментарий Поделиться на других сайтах Прочее
DacentGS Опубликовано 9 Января 2008 Жалоба Поделиться Опубликовано 9 Января 2008 Сделал наконец-таки.. Правда пока не все, отображение первого поста темы, так и не смог сделать. Спасибо за помощь! Ссылка на комментарий Поделиться на других сайтах Прочее
Haktar Опубликовано 3 Октября 2009 Жалоба Поделиться Опубликовано 3 Октября 2009 Вот значит что у меня получилось.Правда я сначала писал для своего форума, а потом переводил для стандартных, поэтому может чего не заметил, говорите. Только предупреждаю всех у кого стоят моды скрытия чего-либо: ссылок, части постов и прочего (моды HIDE, SPOIL и прочие), все эти моды в RSS работать не будут!Всё что вы скрываете в общедоступных форумах, будет видно в поисковой машине. Всё нормально запустилось. Вот только в ленте идёт показ сообщений со всех скрытых разделов форума, даже если просматриваешь гостём. По маске не срабатывает. Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 3 Октября 2009 Жалоба Поделиться Опубликовано 3 Октября 2009 в ленте идёт показ сообщений со всех скрытых разделов форума, даже если просматриваешь гостём. По маске не срабатывает.Я доделал подхват форумной авторизации и показ ленты с учетом прав доступа в форуме. Только поленился с запароленными форумами: не показываю, даже если пароль у пользователя в куках сидит. Отредактировать, вписав данные своего форума, положить как ./rss/index.php:<?php define('ROOT_PATH', "../" ); // относительный путь к форуму error_reporting (E_ERROR | E_WARNING | E_PARSE); set_magic_quotes_runtime(0); //-------------------------------- // Подключаю форумный sql-драйвер //-------------------------------- require ROOT_PATH."conf_global.php"; $INFO['sql_driver'] = !$INFO['sql_driver'] ? 'mySQL' : $INFO['sql_driver']; require ( ROOT_PATH."sources/Drivers/".$INFO['sql_driver'].".php" ); $DB = new db_driver; $DB->obj['sql_database'] = $INFO['sql_database']; $DB->obj['sql_user'] = $INFO['sql_user']; $DB->obj['sql_pass'] = $INFO['sql_pass']; $DB->obj['sql_host'] = $INFO['sql_host']; $DB->obj['sql_tbl_prefix'] = $INFO['sql_tbl_prefix']; $DB->obj['use_shutdown'] = 0; $DB->obj['debug'] = 0; define('SERVER_DIR',$INFO['base_dir']); //-------------------------------- // Коннектимся к БД //-------------------------------- $DB->connect(); //-------------------------------- // Забираем форумную информацию о пользователе //-------------------------------- class info { var $member = array(); var $input = array(); var $session_id = ""; var $vars = ""; var $lastclick = ""; var $location = ""; var $perm_id = ""; var $session_type = ""; } $ibforums = new info(); //-------------------------------- // Подключаем форумные классы функций //-------------------------------- require ROOT_PATH."sources/functions.php"; $std = new FUNC; $print = new display(); $sess = new session(); //-------------------------------- // Используем форумные фильтры входящих //-------------------------------- $ibforums->input = $std->parse_incoming(); //-------------------------------- // Авторизуем пользователя //-------------------------------- $ibforums->member = $sess->authorise(); $ibforums->session_id = ""; //-------------------------------- // What to do? //-------------------------------- if($ibforums->input['viev'] == "news")do_lastnews(); else do_lastposts(); $DB->close_db(); exit; //------------------------------------------------- // Last Posts //------------------------------------------------- function do_lastposts() { global $DB, $ibforums, $root_path, $std, $INFO; $perm_ids = explode(",",$ibforums->perm_id); $no_denyed = array(); // ID разделов, которые разрешены этому пользователю $DB->query("SELECT id, read_perms, password FROM ibf_forums"); while( $p = $DB->fetch_row() ) { $perms = ",".$p['read_perms'].","; if( $perms == ",*," and (!$p['password'] or $p['password']==$std->my_getcookie('ibresource'.$p['id'])) ) { $no_denyed[] = $p['id']; } else { foreach($perm_ids as $perm_id) { if(stristr($perms,",".$perm_id.",") and (!$p['password'] or $p['password']==$std->my_getcookie('ibresource'.$p['id'])))$no_denyed[] = $p['id']; } } } $no_denyed = array_unique($no_denyed); $extra = "AND p.forum_id IN (".implode(",",$no_denyed).")"; // Если запрошен конкретный подфорум if($ibforums->input['f']) { $allov = 0; foreach($no_denyed as $id) { if($id == intval($ibforums->input['f']))$allov++; } $forum = intval($ibforums->input['f']); if($allov)$extra = "AND p.forum_id = ".$forum; else fatal_error("В этом форуме Вам не разрешен просмотр новостей!"); } //die($ibforums->input['f']); $limit = "100"; // Количество 'последних постов' if(isSet($ibforums->input['n'])) { $n=intval($ibforums->input['n']); if($n<1000)$limit = $n; } $prefix = $INFO['sql_tbl_prefix']; //---------------------------------------- // Header parse... //---------------------------------------- @header('Content-Type: text/xml'); @header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); @header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); @header('Pragma: public'); $template = " <item> <guid isPermaLink='true'>{post_url}</guid> <pubDate>{rfc_date}</pubDate> <title>{author} написал(а) в теме: {thread_title}</title> <link>{post_url}</link> <description><![CDATA[{text}]]></description> <comments>{post_url}</comments> </item> "; $to_echo = "<?xml version='1.0' encoding=\"windows-1251\"?> <rss version='2.0'> <channel> <title>Заголовок ленты</title> <link>http://site.ru/</link> <description>Описание сайта или ленты новостей сайта</description> <generator>Vesvalo</generator> <managingEditor>info@site.ru</managingEditor> "; $DB->query( "SELECT p.pid, p.author_name, p.post_date, p.forum_id, p.topic_id, p.author_id, p.post, t.title, t.posts FROM ibf_posts p LEFT JOIN ibf_topics t ON (t.tid = p.topic_id) WHERE p.hide_post=0 ".$extra." ORDER BY pid DESC LIMIT 0,".$limit ); if ( ! $DB->get_num_rows() ) { fatal_error("Could not get the information from the database"); } $finded = array(); while($out = $DB->fetch_row($query)) { if(!$finded[ $out['topic_id'] ])$finded[ $out['topic_id'] ] = intval($out['posts']); else $finded[ $out['topic_id'] ]--; $st = (intval($finded[ $out['topic_id'] ] / 15))*15; $out['post'] = preg_replace( "#<span class='hide_post'>(.+?)</span>#is", "", $out['post'] ); $thread_title = $out['title']; $thread_title = preg_replace( "'&'si", "&" , $thread_title ); $forum_name = $out['name']; $author = $out['author_name']; $rfcdate = date( 'r', $out['post_date'] ); $out['post_date'] = $std->get_date( $out['post_date'], 'LONG' ); $date = $out['post_date']; $text = $out['post']; $to_echo .= parse_template( $template,array ( 'thread_url' => $INFO['board_url']."/index.php?act=ST&f=".$out['forum_id']."&t=".$out['topic_id'], 'thread_title' => $thread_title, 'forum_url' => $INFO['board_url']."/index.php?act=SF&f=".$out['forum_id'], 'post_url' => $INFO['board_url']."/index.php?act=ST&f=".$out['forum_id']."&t=".$out['topic_id']."&st=".$st."#entry".$out['pid'], 'forum_name' => $forum_name, 'date' => $date, 'rfc_date' => $rfcdate, 'author' => $author, 'text' => $text, 'profile_link' => $INFO['board_url']."/index.php?act=Profile&CODE=03&MID=".$out['author_id'], ) ); } $to_echo .= " </channel> </rss> "; echo $to_echo; } function do_lastnews() { global $DB, $ibforums, $root_path, $std, $INFO; if ( $INFO['portal_newsforum'] == "" ) { $forumid="1"; } elseif ( $INFO['portal_newsforum'] == 0 ) { if ( $INFO['portal_newsforum_expert'] == "" ) { $forumid="1"; } else { $forumid = $INFO['portal_newsforum_expert']; } } else { $forumid = $INFO['portal_newsforum']; } $prefix = $INFO['sql_tbl_prefix']; $max = $INFO['portal_newsposts'] ? $INFO['portal_newsposts'] : 5; //---------------------------------------- // Header parse... //---------------------------------------- @header('Content-Type: text/xml'); @header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); @header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); @header('Pragma: public'); $template = " <item> <guid isPermaLink='true'>{post_url}</guid> <pubDate>{rfc_date}</pubDate> <title>{author} опубликовал(а) новость: {thread_title}</title> <link>{post_url}</link> <description><![CDATA[{text}]]></description> <comments>{post_url}</comments> </item> "; $to_echo = "<?xml version='1.0' encoding=\"windows-1251\"?> <rss version='2.0'> <channel> <title>Новости групп анонимных алкоголиков</title> <link>http://vesvalo.net/</link> <description>Новостная лента группы АА Vesvalo</description> <generator>Vesvalo.net</generator> <managingEditor>aa@vesvalo.net</managingEditor> "; $top_query = $DB->query("SELECT tid, title, description, forum_id FROM ibf_topics WHERE forum_id IN (".$forumid.") ORDER BY tid DESC LIMIT 0 , ".$max); if ( ! $DB->get_num_rows() ) { fatal_error("Could not get the information from the database"); } while ( $t = $DB->fetch_row($top_query) ) { $DB->query("SELECT pid, post, author_id, author_name, post_date FROM ibf_posts WHERE topic_id = ".$t['tid']." ORDER BY pid ASC LIMIT 0,1"); $p = $DB->fetch_row(); if($p['author_name'] == "")$p['author_name'] = "Гость"; $p['post'] = preg_replace( "#<span class='hide_post'>(.+?)</span>#is", "", $p['post'] ); // выковыряли... $thread_title = $t['title']." ".$t['description']; $thread_title = preg_replace( "'&'si", "&" , $thread_title ); $forum_name = "Новости"; $author = $p['author_name']; $rfcdate = date( 'r', $p['post_date'] ); $p['post_date'] = $std->get_date( $out['post_date'], 'LONG' ); $date = $p['post_date']; $text = $p['post']; $to_echo .= parse_template( $template,array ( 'thread_url' => $INFO['board_url']."/index.php?act=ST&f=".$t['forum_id']."&t=".$t['tid'], 'thread_title' => $thread_title, 'forum_url' => $INFO['board_url']."/index.php?act=SF&f=".$t['forum_id'], 'post_url' => $INFO['board_url']."/index.php?showtopic=".$t['tid']."#entry".$p['pid'], 'forum_name' => $forum_name, 'date' => $date, 'rfc_date' => $rfcdate, 'author' => $author, 'text' => $text, 'profile_link' => $INFO['board_url']."/index.php?act=Profile&CODE=03&MID=".$p['author_id'], ) ); } $to_echo .= " </channel> </rss> "; echo $to_echo; } //+------------------------------------------------- // GLOBAL ROUTINES //+------------------------------------------------- function parse_template( $template, $assigned=array() ) { foreach( $assigned as $word => $replace) { $template = preg_replace( "/\{$word\}/i", "$replace", $template ); } return $template; } function fatal_error($message="") { echo("An error occured whilst processing this directive"); if ($message) { echo("<br>$message"); } exit(); } ?> Форматы вызова:rss/?viev=news - новостной форум (задается через настройки портала в админке).rss/? - все новости (по умолчанию 100 последних сообщений)rss/?f=36 - 100 (по умолчанию) последних сообщений в подфоруме ID 36rss/?f=36&n=25 - 25 последних сообщений в подфоруме ID 36 Ссылка на комментарий Поделиться на других сайтах Прочее
Haktar Опубликовано 3 Октября 2009 Жалоба Поделиться Опубликовано 3 Октября 2009 Вот что пишет:Warning: require(./conf_global.php) [function.require]: failed to open stream: No such file or directory in /var/www/imtw.ru/rss/index.php on line 11 Ошибка в этой строке:require ROOT_PATH."conf_global.php";Никак не могу понять причину Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 3 Октября 2009 Жалоба Поделиться Опубликовано 3 Октября 2009 Ерунда какая-то, не понимаю...Чтож, попробуйdefine('ROOT_PATH', substr($_SERVER['SCRIPT_FILENAME'],0,strpos($_SERVER['SCRIPT_FILENAME'],"rss/index.php")) ); Ссылка на комментарий Поделиться на других сайтах Прочее
Haktar Опубликовано 3 Октября 2009 Жалоба Поделиться Опубликовано 3 Октября 2009 Ерунда какая-то, не понимаю...Чтож, попробуйdefine('ROOT_PATH', substr($_SERVER['SCRIPT_FILENAME'],0,strpos($_SERVER['SCRIPT_FILENAME'],"rss/index.php")) ); Да сам не могу понять что к чему. Причём в версии что в этой теме, всё нормально. После того как внёс изменения, теперь такое выдаёт:Warning: require(./sources/Drivers/mySQL.php) [function.require]: failed to open stream: No such file or directory in /var/www/imtw.ru/rss/index.php on line 14 Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 3 Октября 2009 Жалоба Поделиться Опубликовано 3 Октября 2009 Давай попробуем без define:<?php $root_path = "../"; // относительный путь к форуму error_reporting (E_ERROR | E_WARNING | E_PARSE); set_magic_quotes_runtime(0); //-------------------------------- // Подключаю форумный sql-драйвер //-------------------------------- require $root_path."conf_global.php"; $INFO['sql_driver'] = !$INFO['sql_driver'] ? 'mySQL' : $INFO['sql_driver']; require ( $root_path."sources/Drivers/".$INFO['sql_driver'].".php" ); $DB = new db_driver; $DB->obj['sql_database'] = $INFO['sql_database']; $DB->obj['sql_user'] = $INFO['sql_user']; $DB->obj['sql_pass'] = $INFO['sql_pass']; $DB->obj['sql_host'] = $INFO['sql_host']; $DB->obj['sql_tbl_prefix'] = $INFO['sql_tbl_prefix']; $DB->obj['use_shutdown'] = 0; $DB->obj['debug'] = 0; //-------------------------------- // Коннектимся к БД //-------------------------------- $DB->connect(); //-------------------------------- // Забираем форумную информацию о пользователе //-------------------------------- class info { var $member = array(); var $input = array(); var $session_id = ""; var $vars = ""; var $lastclick = ""; var $location = ""; var $perm_id = ""; var $session_type = ""; } $ibforums = new info(); //-------------------------------- // Подключаем форумные классы функций //-------------------------------- require $root_path."sources/functions.php"; $std = new FUNC; $print = new display(); $sess = new session(); //-------------------------------- // Используем форумные фильтры входящих //-------------------------------- $ibforums->input = $std->parse_incoming(); //-------------------------------- // Авторизуем пользователя //-------------------------------- $ibforums->member = $sess->authorise(); $ibforums->session_id = ""; //-------------------------------- // What to do? //-------------------------------- if($ibforums->input['viev'] == "news")do_lastnews(); else do_lastposts(); $DB->close_db(); exit; //------------------------------------------------- // Last Posts //------------------------------------------------- function do_lastposts() { global $DB, $ibforums, $root_path, $std, $INFO; $perm_ids = explode(",",$ibforums->perm_id); $no_denyed = array(); // ID разделов, которые разрешены этому пользователю $DB->query("SELECT id, read_perms, password FROM ibf_forums"); while( $p = $DB->fetch_row() ) { $perms = ",".$p['read_perms'].","; if( $perms == ",*," and (!$p['password'] or $p['password']==$std->my_getcookie('ibresource'.$p['id'])) ) { $no_denyed[] = $p['id']; } else { foreach($perm_ids as $perm_id) { if(stristr($perms,",".$perm_id.",") and (!$p['password'] or $p['password']==$std->my_getcookie('ibresource'.$p['id'])))$no_denyed[] = $p['id']; } } } $no_denyed = array_unique($no_denyed); $extra = "AND p.forum_id IN (".implode(",",$no_denyed).")"; // Если запрошен конкретный подфорум if($ibforums->input['f']) { $allov = 0; foreach($no_denyed as $id) { if($id == intval($ibforums->input['f']))$allov++; } $forum = intval($ibforums->input['f']); if($allov)$extra = "AND p.forum_id = ".$forum; else fatal_error("В этом форуме Вам не разрешен просмотр новостей!"); } //die($ibforums->input['f']); $limit = "100"; // Количество 'последних постов' if(isSet($ibforums->input['n'])) { $n=intval($ibforums->input['n']); if($n<1000)$limit = $n; } $prefix = $INFO['sql_tbl_prefix']; //---------------------------------------- // Header parse... //---------------------------------------- @header('Content-Type: text/xml'); @header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); @header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); @header('Pragma: public'); $template = " <item> <guid isPermaLink='true'>{post_url}</guid> <pubDate>{rfc_date}</pubDate> <title>{author} написал(а) в теме: {thread_title}</title> <link>{post_url}</link> <description><![CDATA[{text}]]></description> <comments>{post_url}</comments> </item> "; $to_echo = "<?xml version='1.0' encoding=\"windows-1251\"?> <rss version='2.0'> <channel> <title>Заголовок ленты</title> <link>http://site.ru/</link> <description>Описание сайта или ленты новостей сайта</description> <generator>Vesvalo</generator> <managingEditor>info@site.ru</managingEditor> "; $DB->query( "SELECT p.pid, p.author_name, p.post_date, p.forum_id, p.topic_id, p.author_id, p.post, t.title, t.posts FROM ibf_posts p LEFT JOIN ibf_topics t ON (t.tid = p.topic_id) WHERE p.hide_post=0 ".$extra." ORDER BY pid DESC LIMIT 0,".$limit ); if ( ! $DB->get_num_rows() ) { fatal_error("Could not get the information from the database"); } $finded = array(); while($out = $DB->fetch_row($query)) { if(!$finded[ $out['topic_id'] ])$finded[ $out['topic_id'] ] = intval($out['posts']); else $finded[ $out['topic_id'] ]--; $st = (intval($finded[ $out['topic_id'] ] / 15))*15; $out['post'] = preg_replace( "#<span class='hide_post'>(.+?)</span>#is", "", $out['post'] ); $thread_title = $out['title']; $thread_title = preg_replace( "'&'si", "&" , $thread_title ); $forum_name = $out['name']; $author = $out['author_name']; $rfcdate = date( 'r', $out['post_date'] ); $out['post_date'] = $std->get_date( $out['post_date'], 'LONG' ); $date = $out['post_date']; $text = $out['post']; $to_echo .= parse_template( $template,array ( 'thread_url' => $INFO['board_url']."/index.php?act=ST&f=".$out['forum_id']."&t=".$out['topic_id'], 'thread_title' => $thread_title, 'forum_url' => $INFO['board_url']."/index.php?act=SF&f=".$out['forum_id'], 'post_url' => $INFO['board_url']."/index.php?act=ST&f=".$out['forum_id']."&t=".$out['topic_id']."&st=".$st."#entry".$out['pid'], 'forum_name' => $forum_name, 'date' => $date, 'rfc_date' => $rfcdate, 'author' => $author, 'text' => $text, 'profile_link' => $INFO['board_url']."/index.php?act=Profile&CODE=03&MID=".$out['author_id'], ) ); } $to_echo .= " </channel> </rss> "; echo $to_echo; } function do_lastnews() { global $DB, $ibforums, $root_path, $std, $INFO; if ( $INFO['portal_newsforum'] == "" ) { $forumid="1"; } elseif ( $INFO['portal_newsforum'] == 0 ) { if ( $INFO['portal_newsforum_expert'] == "" ) { $forumid="1"; } else { $forumid = $INFO['portal_newsforum_expert']; } } else { $forumid = $INFO['portal_newsforum']; } $prefix = $INFO['sql_tbl_prefix']; $max = $INFO['portal_newsposts'] ? $INFO['portal_newsposts'] : 5; //---------------------------------------- // Header parse... //---------------------------------------- @header('Content-Type: text/xml'); @header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); @header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); @header('Pragma: public'); $template = " <item> <guid isPermaLink='true'>{post_url}</guid> <pubDate>{rfc_date}</pubDate> <title>{author} опубликовал(а) новость: {thread_title}</title> <link>{post_url}</link> <description><![CDATA[{text}]]></description> <comments>{post_url}</comments> </item> "; $to_echo = "<?xml version='1.0' encoding=\"windows-1251\"?> <rss version='2.0'> <channel> <title>Новости сайта site.ru</title> <link>http://site.ru/</link> <description>Новостная лента сайта site.ru</description> <generator>Vesvalo</generator> <managingEditor>info@site.ru</managingEditor> "; $top_query = $DB->query("SELECT tid, title, description, forum_id FROM ibf_topics WHERE forum_id IN (".$forumid.") ORDER BY tid DESC LIMIT 0 , ".$max); if ( ! $DB->get_num_rows() ) { fatal_error("Could not get the information from the database"); } while ( $t = $DB->fetch_row($top_query) ) { $DB->query("SELECT pid, post, author_id, author_name, post_date FROM ibf_posts WHERE topic_id = ".$t['tid']." ORDER BY pid ASC LIMIT 0,1"); $p = $DB->fetch_row(); if($p['author_name'] == "")$p['author_name'] = "Гость"; $thread_title = $t['title']." ".$t['description']; $thread_title = preg_replace( "'&'si", "&" , $thread_title ); $forum_name = "Новости"; $author = $p['author_name']; $rfcdate = date( 'r', $p['post_date'] ); $p['post_date'] = $std->get_date( $out['post_date'], 'LONG' ); $date = $p['post_date']; $text = $p['post']; $to_echo .= parse_template( $template,array ( 'thread_url' => $INFO['board_url']."/index.php?act=ST&f=".$t['forum_id']."&t=".$t['tid'], 'thread_title' => $thread_title, 'forum_url' => $INFO['board_url']."/index.php?act=SF&f=".$t['forum_id'], 'post_url' => $INFO['board_url']."/index.php?showtopic=".$t['tid']."#entry".$p['pid'], 'forum_name' => $forum_name, 'date' => $date, 'rfc_date' => $rfcdate, 'author' => $author, 'text' => $text, 'profile_link' => $INFO['board_url']."/index.php?act=Profile&CODE=03&MID=".$p['author_id'], ) ); } $to_echo .= " </channel> </rss> "; echo $to_echo; } //+------------------------------------------------- // GLOBAL ROUTINES //+------------------------------------------------- function parse_template( $template, $assigned=array() ) { foreach( $assigned as $word => $replace) { $template = preg_replace( "/\{$word\}/i", "$replace", $template ); } return $template; } function fatal_error($message="") { echo("An error occured whilst processing this directive"); if ($message) { echo("<br>$message"); } exit(); } ?> Ссылка на комментарий Поделиться на других сайтах Прочее
israelin Опубликовано 4 Октября 2009 Жалоба Поделиться Опубликовано 4 Октября 2009 Доброго дня. Вопрос следующий- как сделать последние сообщения с форума на другом сайте? Пробовал, что есть сдесь - никак не получается Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 4 Октября 2009 Жалоба Поделиться Опубликовано 4 Октября 2009 israelin, поковыряйте ssi.php Ссылка на комментарий Поделиться на других сайтах Прочее
Haktar Опубликовано 6 Октября 2009 Жалоба Поделиться Опубликовано 6 Октября 2009 FatCat А мне всё стало ясно с RSS. Если ставлю вашу самую первую версию, то вот такую ошибку выдаёт:Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/imtw.ru/sources/Drivers/mySQL.php on line 190An error occured whilst processing this directiveCould not get the information from the databaseПойду искать ошибку... Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения