Salve a tutti, sto cercando di fare un bbcode in php, ho buttato giù due righe al volo e sono arrivato ad un buon punto
Codice PHP:
<?
function bbcode ($str) {
$htmltags = array(
'/\<b\>(.*?)\<\/b\>/is',
'/\<i\>(.*?)\<\/i\>/is',
'/\<u\>(.*?)\<\/u\>/is',
'/\<ul\>(.*?)\<\/ul\>/is',
'/\<li\>(.*?)\<\/li\>/is',
'/\<img(.*?) src=\"(.*?)\" (.*?)\>/is',
'/\<div style="text-align:(.*?)"\>(.*?)\<\/div\>/is',
'/\<br(.*?)\>/is',
'/\<strong\>(.*?)\<\/strong\>/is',
'/\<a href=\"(.*?)\"(.*?)\>(.*?)\<\/a\>/is',
'/\<a href=\'(.*?)\'(.*?)\>(.*?)\<\/a\>/is',
);
$bbtags = array(
'[b]$1[/b]',
'[i]$1[/i]',
'[u]$1[/u]',
'[list]$1[/list]',
'[*]$1[/*]',
'[img]$2[/img]',
'[$1]$2[/$1]',
'\n',
'[b]$1[/b]',
'[url=$1]$3[/url]',
'[url=$1]$3[/url]',
);
$str = preg_replace ($htmltags, $bbtags, $str);
$str = nl2br($str);
return $str;
}
$str = $_POST[text];
echo bbcode($str);
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<textarea name=text></textarea>
<input type="submit" name="submit" value="Vai">
</form>
il mio problema è questo: come posso eliminare tutti gli altri tag che non sono presenti nell'array di ricerca ($htmltags)? ad esempio se qualcuno scrive nella textarea l'attributo <table>, l'output mostrerà una tabella...!
Grazie anticipatamente!