Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: BBcode w php
Forum PHP.pl > Forum > PHP
Jarek099
Witam mam pytanie jak umieścić bbcode w php ?
Jest jakiś tutorial ? bo w google szukałem ale nic mi nie działało :|
TheSnake
Temat: klasa Zaawansowany parser bbcode php5
albo inaczej, przykład:

Kod
$str = 'To jest test [b]BBCode[/b]';
$str = str_replace('[b]', '<b>', $str);
$str = str_replace('[/b]', '</b>', $str);
echo $str;


@down, taa lepszejszy ;d
gothye
albo leprzy sposób :




  1. $string = preg_replace("#\[b\](.*?)\[/b\]#si",'<b>\\1</b>',$string);


XianN
No, google to ostatnio nic znalezc nie chce...
PHP: BBCode - Manual - moze Ci sie przydac. W komentarzu do funkcji bbcode_create jest funkcja, ktorej mozesz uzyc jesli nie masz mozliwosci doinstalowania PECLa.
Crozin
@TheSnake, @gothye: Takiego czegoś nie można używać, bo nie daje to gwarancji, że tak wygenerowany HTML będzie poprawny.
Jarek099
Bo jest tak że znalazłem sobie pod tym linkiem te bbcode http://www.webtips.pl/topic/5631-php-bbcode/
Ale nie moge tego zastosować pod moją strone.
Bo gdy podepne pod formulaż to na stronie glownej mam tylko text
A chce by pokazywało mi sie pogrubioną wersją .

To jest includin .
  1. <?
  2.  
  3. if ($haslo==$poprawne_haslo && $login==$poprawny_login)
  4. {
  5. include("head.inc");
  6.  
  7. echo '<BR><CENTER><A href="">Cofnij</A></CENTER><BR><BR>';
  8. if(!isset($akcja))
  9. {
  10.  
  11. } else //////////////////////////////////////////////////////////////////////////////////
  12. if ($akcja=="edycja")
  13. {
  14. $dane = file("data.txt");
  15. foreach($dane as $linia)
  16. {
  17. $linijka = explode("|",$linia);
  18. if ($linijka[0]==$id)
  19. {
  20. $tytul = $linijka[1];
  21. $autor = $linijka[2];
  22. $data = $linijka[3];
  23. $tresc = $linijka[4];
  24.  
  25. }
  26. }
  27. echo '<FORM action="admin.php" method="post" name="bbcode"><TABLE border=0>';
  28. echo '<TR><TD align=left>Treść:</TD></tr><TD><TEXTAREA name="tresc" rows="30" cols="100">'.$tresc.'</TEXTAREA></TD></TR>';
  29. echo '</TABLE><INPUT type="hidden" name="akcja" value="edytowanie">
  30. <INPUT type="hidden" name="id" value="'.$id.'"><INPUT type="submit" value="Zapisz zmiany !"></CENTER></FORM>';
  31. } else //////////////////////////////////////////////////////////////////////////////////
  32. if ($akcja=="edytowanie")
  33. {
  34. $tresc = str_replace("\n"," ",$tresc);
  35. $tytul = str_replace("\n"," ",$tytul);
  36. $dane = file("data.txt");
  37. $plik = fopen("data.txt","w+");
  38. flock($plik,2);
  39. fputs($plik,$linijka);
  40. $linia=$id."|".$tytul."|".$autor."|".$data."|".$tresc."|"."\n";
  41. foreach($dane as $zapis)
  42. {
  43. $tablica = explode("|",$zapis);
  44. if ($zapis!="\n"&&$zapis!="")
  45. {
  46. if ($tablica[0]!=$id)
  47. {
  48. fputs($plik,"$tablica[0]|$tablica[1]|$tablica[2]|$tablica[3]|$tablica[4]|\n");
  49. } else
  50. {
  51. fputs($plik,$linia);
  52. }
  53. }
  54. }
  55. echo '<BR><BR><CENTER><B>Zmiany zostały pomyślnie zapisane.<BR><BR>' ;
  56. } else
  57. if ($akcja=="info")
  58. {
  59. }
  60. } else
  61. ?>


I jak to zrobić ?
gothye
Cytat(Crozin @ 2.02.2010, 14:41:15 ) *
@TheSnake, @gothye: Takiego czegoś nie można używać, bo nie daje to gwarancji, że tak wygenerowany HTML będzie poprawny.





mógłbys rozwinąć swoją myśl questionmark.gif


thek
To "skrzyżuj" tagi lub dodaj atrybuty a zobaczysz co się stanie ;) Inna sprawa to fakt, że nawet twórcy nieraz nie mają pojęcia, że coś może działać "nie teges" po zastosowaniu ich funkcji w określonych przypadkach. Przykład?
  1. echo str_replace( array(']:', '] :> '), array('odwrócony wampir', 'diabeł'), 'a tu ma być ] :> ' );

I zgadnij jaki tekst Ci wyświetli tego typu działanie, a najlepiej sprawdź. Jeśli nie masz możliwości to uwierz, że będzie to ciut dla Ciebie nieoczekiwane zachowanie ;) W efekcie nie dostaniesz: "a tu ma być diabeł" tylko "a tu ma być odwrócony wampir>". A takich pulapek czeka o wiele więcej :) 
CapaciousCore
http://www.capaciouscore.pl/examples/bbcod...hpbb2/index.php
http://www.capaciouscore.pl/skrypty/bbcode-z-phpbb2/ (troszke niedopracowane, brakuje paru rzeczy, ma pare bugow ale ... jezeli troszke PHP ogarniasz to sobie poradzisz)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.