Dodanie BBCode do czata


(Darom82) #1

Mam do Was jedną małą prośbe. Czy moglibyscie mi pomoc zrobic bbcode do czata mojego ?

Że jak jest to pole gdzie wpisuje sie wiadomosc na czata, to zeby nad tym polem było bbcode: B (pogrubienie tekstu) I (pochylenie tekstu) A (kolor tekstu) Emotki na czacie. Pomógłby mi ktos to zrobic w tym kodzie ?

<?php if (isset($_SESSION['login'])){

  echo '<div>

Say:

  ';} else {echo 'chat tylko dla zarejestrowanych';}

  ?&gt;

[/code] Szukalem tego tutaj i znalazlem takie cos:
[code]<?php function BBCode($tekst){ $tekst = nl2br($tekst); $tekst = htmlspecialchars($tekst); return($tekst); } $tekst = preg_replace("#[b](.*?)[/b]#si",' `',$tekst); $tekst = preg_replace("#[i](.*?)[/i]#si",'`',$tekst); $tekst = preg_replace("#[u](.*?)[/u]#si",'`',$tekst); $tekst = preg_replace("#[s](.*?)[/s]#si",'`',$tekst);

Ale to mi nie dziala w sensie ze nie wyswietla mi tych bbcode.

Znalazlem to tutaj:

http://webmade.org/porady/bbcode-php.php

Mozecie mi pomoc w tym ?


(Grzesie K) #2

Po tym fragmencie kodu z pliku daddy-shoutbox.php:

$_POST['nickname'] = htmlentities($_POST['nickname']);

$_POST['message'] = htmlentities($_POST['message']);

dodaj to

$_POST['message'] = preg_replace("#\[b\](.*?)\[/b\]#si",'\`', $_POST['message']);

$_POST['message'] = preg_replace("#\[i\](.*?)\[/i\]#si",'\`', $_POST['message']);

$_POST['message'] = preg_replace("#\[u\](.*?)\[/u\]#si",'\`', $_POST['message']);

$_POST['message'] = preg_replace("#\[s\](.*?)\[/s\]#si",'\`', $_POST['message']);[/code]

(Darom82) #3

Grzesie1k zrobiłem tak ale dalej na czacie nie wyswietla mi bbcoda :frowning:

A powinno mi wyswietlic przyciski B oraz _ I _ a niema ich :frowning:

Chociaz nie wiem czy dobrze zrobiłem tutaj zeby te dwa przyciski wyswietlało mi nad polem w ktorym wpisuje wiadomość na czat. Jeśli nie, to prosze o pomoc w tej sprawie:

<?php function BBCode($tekst){

   $tekst = nl2br($tekst);

   $tekst = htmlspecialchars($tekst);


return($tekst);

}


$tekst = preg_replace("#\[b\](.*?)\[/b\]#si",'\`',$tekst);

$tekst = preg_replace("#\[i\](.*?)\[/i\]#si",'\`',$tekst);

?>

&lt;?php if (isset($_SESSION['login'])){

  echo '<div>

Say:

  ';} else {echo 'chat tylko dla zarejestrowanych';}

  ?&gt;

[/code]


(Grzesie K) #4

Darom82 przeczytaj mój post, przeanalizuj kod i nie pisz tak bzdurnych postów! Może czas na naukę a nie żerowanie na tym forum?

Kod który podałem nie ma za zadanie wyświetlenie przycisków lecz zamianę bb-code na html. Takie przyciski robi się w hml jako zwykłe obrazki i podpina się do nich kod js ( nie php ). Kod który wstawiłeś niestety nie ma sensu gdyż:

-


(Darom82) #5

Grzesie1k no to co by dać zamiast tej zamienne $tekst i żeby mi ten kod działał ? Tak było na stronce, której adres podałem w poście moim.

Czy te przyciski moge zrobic w ten sposób ?

Jeśli coś jest nie tak czy moglbyś mój kod poprawić żeby był dobrze ?


(Grzesie K) #6
  1. Napisałem to w pierwszej odpowiedzi.

  2. Tak, lecz przydał by się jeszcze kod js zawierający funkcję pogrubienie.


(batmomobil) #7

Przeczytaj to:http://kursy.skryptoteka.pl/kurs,1,javascript.html/12Zobacz przykłady:http://forum.php.pl/lofiversion/index.php/...%22sy0%22%3E.../ablicy_w_javascript/t158270.html


(Darom82) #8

Grzesie1k czyli moge zamiast zmienne $tekst dac zmienna $message ?

A ten kod zawierajacy pogrunienie to nie wiem jak napisac, mozesz mi pomoc ?