
Pegar Texto Do Phpbb
#1
Posted 27/03/2007, 17:13
Como fazer para mostrar a mensagem como ela aparece no fórum?
Vejam aqui o link do que já fiz: http://www.gnvclube..../testetopic.php
#2
Posted 27/03/2007, 18:15
Flws...

#4
Posted 27/03/2007, 20:59
Neste caso é porque está faltando a folha de estilos que com certeza está sendo usada na origem.
Flws...
Paulo, anexei a folha de estilos do fórum (template subsilver) e continua. Olha o link: http://www.gnvclube....irst_post_id=75 e veja que nos códigos do negrito (bem no final do último parágrafo) fica o código [b e [/b com uns códigos malucos do lado.
Como resolvo isso?
Quanto as quebras de linha, falta um nl2br() na variável que recebe o conteúdo do BD.
[]’s
Paulo Ricardo, pode ir lá que já tá legal! Muito Obrigado!

Se puder ajudar na outra dúvida também...

#5
Posted 27/03/2007, 21:01
Simples... o phpBB "traduz" o código gravado no BD na exibição. Logo, tu terá de chamar o mesmo parser do phpBB (ou fazer sua própria adaptação, menos indicado) para exibir o texto formatado adequadamente.Paulo, anexei a folha de estilos do fórum (template subsilver) e continua. Olha o link: http://www.gnvclube....irst_post_id=75 e veja que nos códigos do negrito (bem no final do último parágrafo) fica o código [b e [/b com uns códigos malucos do lado.
Como resolvo isso?

De nada...

[]s

#6
Posted 27/03/2007, 21:07
Simples... o phpBB "traduz" o código gravado no BD na exibição. Logo, tu terá de chamar o mesmo parser do phpBB (ou fazer sua própria adaptação, menos indicado) para exibir o texto formatado adequadamente.
De nada...
[]’s
O que é esse tal de "parser"? Como faço isso? Tem algum exemplo?
#7
Posted 27/03/2007, 21:15
Bem, eu nunca usei o phpBB nem tenho ele por aqui... Mas é simples. O parser é uma função que converte BBCodes no código (X)HTML correspondente. Todo bulletin board possui um, inclusive o IPB. Dê uma procurada no código-fonte do phpBB por este conversor, e chame o arquivo correspondente no seu código (por exemplo, via include), passando o retorno do BD na referida função.O que é esse tal de "parser"? Como faço isso? Tem algum exemplo?

[]s

#8
Posted 27/03/2007, 21:51
Bom, habilitei o html e agora usando tag HTML em vez do BBCode na mensagem está funcionando. Tenho que habilitar usar HTML somente para alguns usuários, vou pesquisar isso agora. Obrigado pela ajuda.
#9
Posted 28/03/2007, 01:36
Isto seria convertido pelo próprio parser do phpBB...Pelo o que vi não vai dar para fazer não, tem um tal de id (os números doidos que estão no link) e não tenho a mínima idéia de como pegá-los...
Deixa disso rapaz! Permitir HTML é muito perigoso. Segue uma adaptação que fiz a partir de um código que achei no Google, está funcionando perfeitamente:Bom, habilitei o html e agora usando tag HTML em vez do BBCode na mensagem está funcionando. Tenho que habilitar usar HTML somente para alguns usuários, vou pesquisar isso agora. Obrigado pela ajuda.
<?php if (!defined('IN_PHPBB')) { define('IN_PHPBB', true); $phpbb_root_path = './phpbb/'; // configure aqui o diretório do phpBB require_once $phpbb_root_path . 'extension.inc'; require_once $phpbb_root_path . 'common.php'; require_once $phpbb_root_path . 'includes/bbcode.php'; require_once $phpbb_root_path . 'includes/template.php'; } $template = new Template($phpbb_root_path . 'templates/subSilver'); // mude para seu template $conn = mysql_connect('localhost', 'root', '********'); // mude para seus dados mysql_select_db('phpbb'); $query = mysql_query('SELECT count(`post_id`) FROM `phpbb_posts_text`') or die('Erro: ' . mysql_error()); $total = mysql_result($query, 0); $query = mysql_query('SELECT `bbcode_uid`, `post_text`, `post_subject` FROM `phpbb_posts_text` ORDER BY `post_id` DESC LIMIT 5') or die('Erro: ' . mysql_error()); // mude 5 para quantidade de tópicos a serem exibidos if ($total > 0) { ?> <table border="1"> <tbody> <?php while($row = mysql_fetch_array($query)) { $message = nl2br($row['post_text']); $message = bbencode_second_pass($message, $row['bbcode_uid']); $message = make_clickable($message); $message = smilies_pass($message); ?> <tr> <td>Tópico: <?php print $row['post_subject']; ?></td> </tr> <tr> <td><?php print $message; ?></td> </tr> <?php } ?> </table> <?php } else { print 'Não há tópicos para serem exibidos.'; } ?>[]s

1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)