ciao a tutti.
Premessa: se ho sbagliato forum non me ne vogliate ma non sono ancora pratico di questo forum
allora devo realizzare uno script che prenda da uno specifico forum (ID indicato nella variabile $forum) il primo messaggio, solo il primo, dell' ultimo 3D inserito... ora, io questo sono riuscito a farlo(nn è poi così difficile) quello che non riesco a fare è far si che il BBcode e gli smile vengano interpertati bene
vi posti il codice che ho scritto io:
Codice PHP:
<?php
/**********************************/
/* Script Author: Frenko */
/* Script Name: phpbbViewer */
/**********************************/
//conf
define('IN_PHPBB', true);
$phpbb_root_path = 'phpBB2/'; //ES:PATH_FORUM/ (con slash finale "/")
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
// configurazione script
$dbname = ''; //Nome del database dove risiedono le tabelle del forum
$dbhost = ''; //Host del database
$dbuser = ''; //User per accedere al database
$dbpasswd = ''; //Pass per accedere al database
$prefix = 'phpbb_'; //Prefisso tabelle nel database con la "_" finale (es: phpbb_)
$forum = "1"; //inserisci qui l' id relativo al forum dove inserirai le news
$n_topic = 1; //Numero massimo di topic visualizzati in home page
//connessione al mysql
$connect = mysql_connect($dbhost, $dbuser, $dbpasswd) or die ("Errore Db Conn");
$db = mysql_select_db($dbname, $connect) or die ("Errore Db select");
//Recupero dati dal mysql
$query = "SELECT a.topic_id as tid, a.topic_title as name, a.topic_last_post_id as pid, d.post_text as message
FROM ".$prefix."topics a, ".$prefix."posts b, ".$prefix."forums c, ".$prefix."posts_text d
WHERE a.forum_id in (".$forum.")
and a.topic_id = b.topic_id
and a.forum_id = c.forum_id
and a.topic_time = b.post_time
and d.post_id = b.post_id
ORDER BY b.post_time desc
LIMIT 0, $n_topic";
$risultati = mysql_query($query, $connect);
while($row = mysql_fetch_array($risultati, MYSQL_ASSOC)) {
$message = $row[message];
$message = smilies_pass($message);
$message = nl2br($message);
echo "<a href=\"".$phpbb_root_path."viewtopic.php?t=".$row[tid]."\">".$row[name]."</a>
\n";
echo "".$message."
\n";
echo "<a href=\"".$phpbb_root_path."posting.php?mode=reply&t=".$row[tid]."\">Scrivi</a>
\n";
}
mysql_close();
?>
ho incluso nello script queste pagine
Codice PHP:
//conf
define('IN_PHPBB', true);
$phpbb_root_path = 'phpBB2/'; //ES:PATH_FORUM/ (con slash finale "/")
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);
per far si che le funzioni relative al bbcode vengano inserite... ho passato la variabile $message attraverso la funzione smilies_pass(); (che è stata definita nel file bbcode.php)
il problema è che mi da questo errore
Fatal error: Call to a member function on a non-object in /home/httpd/vhosts/sitoutile.net/httpdocs/phpBB2/includes/bbcode.php on line 753
a quella riga c'è questo
Codice PHP:
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't obtain smilies data", "", __LINE__, __FILE__, $sql);
}
mi potete aiutare a risolvere questo problema e a far si che mi converta il bbcode in html?
grazie tante
cià!