RSS Бот за phpBB2

:?

p.s. питаха ме по ЛС за ако рсс-а е utf-8
ето какво трябва да направите:

намирате
Код:
$message .= "

[url=".$linka."]".$linka."[/url]"; // добавяме линк към статията

преди него слагате
Код:
$message = iconv("UTF-8", "cp1251", $message);
$subject =  iconv("UTF-8", "cp1251", $subject);

! обаче след като сложите това няма да побликува статии с cp1251 енкодинг :)
 
Работи повече от перфектно туко що го тествах добави 25 теми с CP1251 нормално без проблеми. евалата бате :)
 
с малко преработка от мене :)

http://www.free-zona.net/forum/viewforum.php?f=26

нещо , защитите който беше сложил ми правеха въртели :?:
 
а може ли да направиш такова ботче само че да попълва полета за вход три на брой с име на полетата
ime
parola
spam
в тези полета да пише стойности зададени в кода на определен линк и после да попълва zaglavie, dumi (със същото като zaglavie) и publikaciq с текста.
 
phpBB : Критична Грешка

Could not obtain lastvisit data from user table

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

SELECT * FROM phpbb_forumusers WHERE user_id =

Line : 25
File : bot.php

Някои да знае зашо ми я дава ?
 
Сега пък даже ми дава чисто бяла страница :Д

Ето линк към бота

http://www.pop-bg.net/forum/bot/bot.php

ето и кода на бот.пхп

Код:
<?php 
/* 
Име: Ботчо 
Версия: 0.7a 
Автор: Алекс (http://alexsoft-bg.com) 
Описание: Бот, който чете rss feed-ове и ги пуска като теми в phpBB2 
Demo: http://gimp-bg.com/forums/viewforum.php?f=5 
Файл: Основен 
*/ 

define('IN_PHPBB', true); 

include("./defaults.php"); 

include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 
include('./insert_post.'.$phpEx); 


if(empty($_GET['userid'])) $user_id = $default['user_id']; else $user_id = (int)$_GET['userid']; 

$sql = "SELECT * FROM " . USERS_TABLE . " WHERE user_id = $user_id"; 
if ( !($result = $db->sql_query($sql)) ) 
{ 
   message_die(CRITICAL_ERROR, 'Could not obtain lastvisit data from user table', '', __LINE__, __FILE__, $sql); 
} 
$userdata = $db->sql_fetchrow($result); 
init_userprefs($userdata); 

$current_time = time(); 
$sql = "UPDATE " . USERS_TABLE . " 
   SET user_session_time = $current_time, user_session_page = " . PAGE_INDEX . ", user_lastvisit = $current_time 
   WHERE user_id = $user_id"; 
if ( !$db->sql_query($sql) ) 
{ 
   message_die(CRITICAL_ERROR, 'Error updating last visit time', '', __LINE__, __FILE__, $sql); 
} 
$userdata['user_lastvisit'] = $last_visit; 

if(empty($_GET['forumid'])) $forum_id = $default['forum_id']; else $forum_id = (int)$_GET['forumid']; 

if(empty($_GET['broi'])) $broi = $default['broi']; else $broi = (int)$_GET['broi']; 

if(empty($_GET['adres'])) { 
$adresa = $default['adres']; //http://www.kaldata.com/rosebud/rss.php?catid=3 
} else $adresa = $_GET['adres']; 

$readfile = file_get_contents($adresa); 
$searchfile = eregi("<item>(.*)</item>", $readfile ,$arrayreg); 
$filechunks = explode("<item>", $arrayreg[0]); 
$count = count($filechunks); 

for($i=1 ; $i<=$count-1 ;$i++) { 

if($i>$broi) break; 

ereg("<title>(.*)</title>",$filechunks[$i], $title); 
ereg("<link>(.*)</link>",$filechunks[$i], $links); 
ereg("<description>(.*)</description",$filechunks[$i],$desc); 

$subject = addslashes($title[1]); 
$texta = addslashes($desc[1]); 
$linka = addslashes(htmlspecialchars_decode($links[1])); 

$subject = substr($subject,0,60); // полето в БД е char(60) и за да няма проблеми с проверката съкращаваме името до 60 

$message = strip_tags(htmlspecialchars_decode($texta)); // махаме таговете защото попринцип html е забранен в phpbb 

$message .= " 

[url=".$linka."]".$linka."[/url]"; // добавяме линк към статията 

$sel = mysql_num_rows(mysql_query("SELECT * FROM " . TOPICS_TABLE . " WHERE topic_title='$subject'")); // проверяваме дали вече не е пусната тази тема 
if($sel<1) { 

    $post_details = insert_post($message, $subject, $forum_id, $userdata['user_id'], $userdata['username'], $userdata['user_attachsig']); 
    $url = append_sid($phpbb_root_path . 'viewtopic.' . $phpEx . '?' . POST_TOPIC_URL . '=' . $post_details['topic_id']); 

    if(!$bot_cron) { 
      echo '<a href="' . $url . '">new topic, id: ' . $post_details['topic_id'] . '</a><br/>'; // изкарваме новата тема 
    } else { 
      echo 'new topic, id: ' . $post_details['topic_id'] . "\r\n"; // ако бота се изпълнява с cron - без html 
    } 

} 


} 

if(!$bot_cron) { 
echo "<br />done :)"; 
} 

?>


и на дефалт.пхп


Код:
<?php 
/* 
Име: Ботчо 
Версия: 0.7a 
Автор: Алекс (http://alexsoft-bg.com) 
Описание: Бот, който чете rss feed-ове и ги пуска като теми в phpBB2 
Demo: http://gimp-bg.com/forums/viewforum.php?f=5 
Файл: Конфигурация 

!!!!! 
Това са стоиностите по подразбиране, т.е. може да изберете други от CP но те няма да се помнят 
!!!! 
*/ 

if ( !defined('IN_PHPBB') ) 
{ 
   die('Hacking attempt'); 
} 

$phpbb_root_path = '../forum/'; // пътя до форума 

$default = array(); 

$default['user_id'] = 1012; // от кое userid пише бота 
$default['forum_id'] = 44; // в кой форум пише бота 
$default['broi'] = 20; // колко теми пуска бота от rss 
$default['adres'] = 'http://www.kaldata.com/rosebud/rss.php?catid=3'; // от кой адрес взима rss 

?>
 
Пробвай да махнеш htmlspecialchars и всички работи по променливата
И на ICN ли си? :)
Riddler имаше същия проблем

едит: мисля че си се оправил, бота си работи? :)
 
alex95_bg_2 каза:
Пробвай да махнеш htmlspecialchars и всички работи по променливата
И на ICN ли си? :)
Riddler имаше същия проблем

едит: мисля че си се оправил, бота си работи? :)

Да @Riddler е имал същият проблем и ми даде фикснат код. След това писах на хоста както ми каза ти и го подкарахме и на кронджоб.
 
здравейте може ли да ми помогнете ;( къде тряа сложа тея файлове в каква папка и кой файл къде трябва да е
 
слагам ги и ми дава грешка и не е където си искам не трябва всички да са на 1място
оправих се
 
Пробвал съм го бота. Където си искаш ги слагаш. И грешка не трябва да дава. Сигурно е от хоста.
 
За тези които ползват ICN и бота не работи :

1. Отваряте си хостинг панела и отивате на PHP Configuration
2. там където пише
The ".php" file extension will be processed by

Избирате PHP 5 и давате обнови.
 

Back
Горе