$uid bbcode

Dyskusje odnośnie pomostów oraz integracji phpBB 3.0.x z systemami zarządzania treścią (CMS).
Leebido

$uid bbcode

Post autor: Leebido » 08 sierpnia 2011, 11:36

Mam pytanie, chce żeby były na stronie wyświetlane newsy z forum, mam skrypt:

Kod: Zaznacz cały

<?php
$serwer = 'xxxxxxx';
$user ='xxxxxxx';
$passwd ='xxxxxxxx';
$baza = 'xxxxxxxxxx';
$liczba_postow = 1;
$post = 0;
$link = mysql_connect($serwer, $user, $passwd) or die('Nie mogę się połączyć z bazą!');
mysql_select_db($baza) or die("Błąd połączenia z bazą: ".mysql_error());
$query = "SELECT * FROM phpbb_posts WHERE forum_id='5' ORDER BY topic_id DESC, post_id;";
$rezultat = mysql_query($query);
while($post < $liczba_postow) {
$row = mysql_fetch_object($rezultat);
    if($row=="") { break; }
    if ($poprzedni_temat == $row->topic_id) {}
    else {
    $poprzedni_temat = $row->topic_id;
    $post++;
    $post_tekst = mysql_fetch_array(mysql_query('SELECT * FROM phpbb_posts WHERE post_id='.$row->post_id.';'));
    $autor_id = mysql_fetch_array(mysql_query('SELECT * FROM phpbb_users WHERE user_id='.$row->poster_id.';'));
    $temat = $post_tekst['post_subject'];
    $autor = $autor_id['username'];
    $text = $post_tekst['post_text'];
    $date = date("j.m.Y", $row->post_time);
    $time = date("G:i", $row->post_time);
$text = preg_replace("#\[url=(http.*?)\](.*?)\[/url\]#si", "<a href=\"\\1\">\\2</a>", $text);
$text = preg_replace("#\[img=(.*?)\](.*?)\[/img\]#si",'<img src="\\1" alt="\\2" style="float:left">',$text);
$text = preg_replace("#\[b\](.*?)\[/b\]#si",'<b>\\1</b>',$text);
$text = preg_replace("#\[i:(.*?)\](.*?)\[/i:(.*?)\]#si",'<i>\\1</i>',$text);
$text = preg_replace("#\[u:(.*?)\](.*?)\[/u:(.*?)\]#si",'<u>\\1</u>',$text);
$text = preg_replace("#\[s:(.*?)\](.*?)\[/s:(.*?)\]#si",'<s>\\1</s>',$text); 
 $text = preg_replace('#\[color=(black|blue|brown|cyan|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|violet|white|yellow):(.*?)\]\1\'>\2\[/color:(.*?)\]#si', '<span style=\'color:\1\'>\2</span>', $text);
echo('<div class="news"><table><tr>
<td width="600">
<div class="news_tytul"><font size="3"><b>'.$temat.'</b></font><br><hr size="1" width="100%"></div></td></tr></table><table><tr>
<td width="350">
<div class="news_footer"><sup>Dodał: </sup><a target="_blank"  href="http://gornoslaskiots.xaa.pl/memberlist.php?mode=viewprofile&u='.$row->poster_id.'"><sup>'.$autor.'</sup></a></td><td width="90"><sup>'.$date.', '.$time.'</sup><br><br></div></td></tr>
<tr><td colspan="2" width="600">
<div class="news_tresc">'.$text.'</div>
</td></tr></div>');
echo('<tr><td colspan="2" align="right"><br><sup>| <a target="_blank" href="http://gornoslaskiots.xaa.pl/viewtopic.php?f=5&t='.$row->topic_id.'">Komentarze</a> |</sup></td></tr></table>');
}
};
mysql_close($link);
?>
Wszystko spoko działa, ale nie zamienia mi bbcode, ponieważ jest $uid i zamiast:
Ten tekst powinien być pogrubiony
Wyświetla (na stronie) takie coś:
[b:m8k20ub0]Ten tekst powinien być pogrubiony[/b:m8k20ub0].
Jak to obejść, jak zrobić żeby normalnie zamieniało BBCode na html?

Leebido edit

Re: $uid bbcode

Post autor: Leebido edit » 08 sierpnia 2011, 11:39

Aaaa i jak zrobić żeby wyświetlało polskie znaki, enter przenosił do nowej linijki i w tym:

Kod: Zaznacz cały

<a target="_blank"  href="http://gornoslaskiots.xaa.pl/memberlist.php?mode=viewprofile&u='.$row->poster_id.'"><sup>'.$autor.'</sup></a>
Żeby był odczytywany kolor nazwy uzytkownika.

Awatar użytkownika
daroPL
Zasłużony
Posty: 4564
Rejestracja: 24 czerwca 2005, 13:36
Lokalizacja: Poznań
Kontakt:

Re: $uid bbcode

Post autor: daroPL » 08 sierpnia 2011, 12:51


Leebido

Re: $uid bbcode

Post autor: Leebido » 10 sierpnia 2011, 17:38

Moze kto to wyjasnic?

Leebido

Re: $uid bbcode

Post autor: Leebido » 10 sierpnia 2011, 18:48

Fajnie by było, gdyby ktoś to opisał (po polsku), bo nie jestem dobry z ani z angielskiego, ani z php :/

leebido

Re: $uid bbcode

Post autor: leebido » 10 sierpnia 2011, 21:46

No pomóżcie ;/ Mam lipe na stronie, a wy .,.

Awatar użytkownika
daroPL
Zasłużony
Posty: 4564
Rejestracja: 24 czerwca 2005, 13:36
Lokalizacja: Poznań
Kontakt:

Re: $uid bbcode

Post autor: daroPL » 11 sierpnia 2011, 09:21

W takim razie nie rozumiem po co się za to bierzesz jak nie znasz php?
Twój kod to śmietnik.

Do wyświetlania tekstu z uwzględnieniem BBCode potrzebna jest funkcja

Kod: Zaznacz cały

generate_text_for_display($row['text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $row['bbcode_options']);
zwraca ona przygotowany do wyświetlenia tekst.
Wymaga podania oprócz tekstu ból BBCode, takich jak *_uid, *_bitfield, *_options.

leebido

Re: $uid bbcode

Post autor: leebido » 11 sierpnia 2011, 10:50

Nie zrozumiałem nic... Możesz dokładnie opisać gdzie co wkleić?

Zablokowany

Wróć do „Integracja”