ugrás a tartalomhoz

Mintaillesztés megvalósítása bbcodehoz

Anonymous · 2006. Jan. 31. (K), 23.20
Hellósztok létrhoztam egy egész pofás fórumot, csak egy valami hiányzik belőle a bbcode és ebben szeretném ha segítenétek nekem.
Eddig az strtr kódot használtam és pl. így
  1. <?php  
  2.   
  3. $bbcodes = array(  
  4.   
  5.     //Félkövér betü  
  6. "<span style="font-weight:bold">" => "<b>",        //Félkövér betü megkezdése  
  7. "</span>" => "</b>"        //Félkövér betü bezárása  
  8. );  
  9.   
  10. print strtr("$_POST[message]"$bbcodes); // ígyx meg szépen kiirattam  
  11. ?>  
na de most így be kellet lőnöm az össze színt pl.

[fcolor=red] => <font color="red">
[/fcolor] >= </font>

na ezt most csinálhatnám egy darabig, na de mi van akkor ha a felhasználó megad 1 ilyen kódot pl.: #303030 vagy kihagyom a red-t és beirja ezt, nos akkor nem ismeri fel.
Na azt h tudnám megcsinálni h felismerje pl. valami változót találni rá?
pl. [fcolor=$color]$text[/fcolor]
vagy nem tudom mit javasolnátok rá?
és valami ilyesmivel kell gondolom az autómata link csinálást it

Kérlek segítsetek vh, olyan ne fv-t irjatok hanem pl-t légyszi.
Nos, előre is kösszönöm

Tóth Zoltán
 
1

<Nincs cím>

-zsolti- · 2006. Jan. 31. (K), 23.27
Nézd meg ezt a kész osztályt, ha másért nem az ötlet miatt.
2

mintaillesztés

Hojtsy Gábor · 2006. Jan. 31. (K), 23.34
Mintaillesztésnek hívják azt, amit szeretnél, eszerint módosítottam a téma címét. A legjobban a preg függvények ajánlhatóak ehhez, de mivel kifejezzen nem függvény címet kértél, én is csak azt tudom mondani, hogy meglévő megvalósításokat vizsgálj meg.
3

re

Anonymous · 2006. Feb. 1. (Sze), 00.03
Nos, korábban nekem is körül kellett néznem ez ügyben..
Kicsit magas volt először a dolog, mert át kellett rágnom magam a reguláris kifejezéseken, de megérte! Javallom neked is.

Itt egy példa a szövegszínezésre:
  1. <?php  
  2. function formazas($string) {  
  3.  $mitcserelsz = array('/\[font color\=(.*?)\](.*?)\[\/font\]/is');  
  4.  $mirecsereled = array('<font color="$1">$2</font>');  
  5.   
  6.  $string = preg_replace ($mitcserelsz$mire$string);  
  7.         return $str;  
  8. }  
Ha nem a legszebben oldottam meg, előre is bocsi :)
4

<Nincs cím>

Anonymous · 2006. Feb. 2. (Cs), 11.40
ok, köszönöm.
Sikerült, so most akkor ollan kéne nekem h linkek autómata átalakítása:
megpróbáltam jó is pl.: http://www.valami.hu ez jó de az lenne a jó ha ez is jó lenne: pl.: http://www.valami..valaki.hu/forum/index.php?mode=action&user_name=214
na ezt h oldom meg
ja meg esetleg www nélkül, kérlek segítsetek nekem
5

<Nincs cím>

Anonymous · 2006. Feb. 2. (Cs), 19.56
Nos meg tudtam csinálni nem tom h ez jó-e légyszi segítsetek ezt eldönteni:
  1. print preg_replace("/http:\/\/[a-z1-9A-Z\S]*/""<a href=\"$0\">$0</a>"$url);  
  2. ?>  
nem tom h jó-e végülis az a lényeg h a http:// elejüeketm de csak azokat alakítsa linké szerintetek?
6

<Nincs cím>

Anonymous · 2006. Feb. 3. (P), 13.26
v pl. smile gombok létrhozása?
7

<Nincs cím>

Anonymous · 2006. Feb. 4. (Szo), 23.05
nos volt egykét gondom pl. h linknél mikor textarea-ben enter-t ütök és úgy mentem majd nl2br-el sortörésekké alkítom akkor azt a link után vette ha az volt a végén nos ez elég nagy baj volt, de nagy nehezen kiküszöböltem így:
$mit = array("/<br \/>/");
$mire = array(" <br />");

de most van még1 gondom smiley-ket szeretnék eddig ok is:
$mit3 = array_push($mit, "/:\)/");
$mire3 = array_push($mire, "<img src=\"images/smiley/smiley.gif\" alt=\":)\" title=\":)\" />");

na de most van egy olyan smile aminek az a kódja h: ::) és a mostaninak meg :) és akkor ezt is ennek veszi, ja meg ha linkben van ez a karakter h :) akkor is smiley-nak veisz h tudnbém azt megoldani h csak akkor alakítsa át ha elötte és utánna nincs más karakter, vagy space vagy a nagy semmit.
mondjuk utánna lehet vagy elötte is de a ::) ne vegye :)-nek.
Előre is köszönöm.
8

<Nincs cím>

Anonymous · 2006. Feb. 5. (V), 14.10
ÉN személyszerinte, szívesen segítenék, ha tudnék...