[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: ббкод пишит ошибки
45king
<?php

function
createBBtags($text)
{
// Создаем массив bb-тегов
$bb = array(
'',
'
',
'',
'
',
'',
'
',
'',
'
',
'
'
,
'[center]',
'[/center]',
'[right]',
'[/right]',
'[left]',
'[/left]',
'[:)]',
'[:(]',
'[;)]',
'[:D]',
'[:f]' ,
'[:ad]' ,
'[:off]',
'[:ops]',
'[:sorry]',
'[:wel]',
'[:wa]'
);
// Создаем массив тегов HTML
$tag = array(
'<b>',
'</b>',
'<i>',
'</i>',
'<s>',
'</s>',
'<u>',
'</u>',
'<hr>',
'<center>',
'</center>',
'<right>',
'</right>',
'<left>',
'</left>',
'<img src="http://45king.ru/smiles/1.gif" />',
'<img src="http://45king.ru/smiles/2.gif" />',
'<img src="http://45king.ru/smiles/3.gif" />',
'<img src="http://45king.ru/smiles/4.gif" />',
'<img src="http://45king.ru/smiles/5.gif" />',
'<img src="http://45king.ru/smiles/6.gif" />' ,
'<img src="http://45king.ru/smiles/7.gif" />' ,
'<img src="http://45king.ru/smiles/8.gif" />' ,
'<img src="http://45king.ru/smiles/9.gif" />' ,
'<img src="http://45king.ru/smiles/10.gif" />' ,
'<img src="http://45king.ru/smiles/11.gif" />'
);
// Заменяем элемент первого на элемент второго массива соответственно






$text = str_ireplace($bb, $tag, $text);
$text = str_replace(' ', '  ', $text);
$text = nl2br($text);




function createLink($match)
{
$match[2] = str_replace("\n", "", $match[2]);
return '<a href="http'. $match[1] .'://'. htmlspecialchars($match[2])
.
'" target="_blanck" class="ab">'. htmlspecialchars($match[2]) .'</a>';
}
function createLink2($match)
{
$match[2] = str_replace("\n", "", $match[2]);
return '<a href="http'. $match[1] .'://'. htmlspecialchars($match[2])
.
'" target="_blanck" class="ab">'. htmlspecialchars($match[3]) .'</a>';
}
function createLink1($match)
{
$match[2] = str_replace("\n", "", $match[2]);
return '<a href="magnet:'. htmlspecialchars($match[1])
.
'" target="_blanck" class="ab" >'. htmlspecialchars($match[2]) .'</a>';
}
function createImg($match)
{
$match[1] = str_replace("\n", "", $match[1]);
return '<img src="http://'. htmlspecialchars($match[1]) .'" border="0" />';
}
function createImg1($match)
{
$match[2] = str_replace("\n", "", $match[2]);
return '<img align="'.htmlspecialchars($match[1]).'" src="http://'. htmlspecialchars($match[2]) .'" border="0" />';
}
function createcolor($match)
{
$match[2] = str_replace("\n", "", $match[2]);
return '<font color="#'.htmlspecialchars($match[1]).'"> '. htmlspecialchars($match[2]) .'</font>';
}
function createspoler($match)
{
$match[2] = str_replace("\n", "", $match[2]);
return '<div class="spoiler-wrap"><div class="spoiler-head folded clickable">'.htmlspecialchars($match[1]).'</div><div class="spoiler-body">'.$match[2].'</div></div>';
}

function thumbnails($match)
{
$match[2] = str_replace("\n", "", $match[2]);
return '<a href="'.htmlspecialchars($match[1]).'" onclick="return hs.expand(this)" class="highslide"><img src="'.htmlspecialchars($match[2]).'" height="136" width="170" class="thumb" /></a>

'
;
}
function video($match)
{
$match[1] = str_replace("\n", "", $match[1]);
return '<object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version= 6,0,40,0" width="500" height="314">
<param name="width" value="500" />
<param name="height" value="314" />
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="src" value="http://www.youtube.com/v/'
.htmlspecialchars($match[1]).';hl=en_US" />
<embed type="application/x-shockwave-flash" width="500" height="314" allowfullscreen="true" allowscriptaccess="always" src="http://www.youtube.com/v/'
.htmlspecialchars($match[1]).';hl=en_US"></embed>
</object>

'
;
}
$text = preg_replace_callback('#\[video\](.+?)\[/video\]#si', 'video',$text);
$text = preg_replace_callback('#\[thumbnails=([^\] ]+?)\](.+?)\[/thumbnails\]#si', 'thumbnails',$text);
$text = preg_replace_callback('#\[spoiler=([^\] ]+?)\](.+?)\[/spoiler\]#si', 'createspoler',$text);
$text = preg_replace_callback('#\[color=([^\] ]+?)\](.+?)\[/color\]#si', 'createcolor',$text);
$text = preg_replace_callback('#\[img=([^\] ]+?)\]http://([^\] \?]+?)\[/img\]#si', 'createImg1',$text);
$text = preg_replace_callback('#\[img\]http://([^\] \?]+?)\[/img\]#si', 'createImg',$text);
$text = preg_replace_callback('#\[url\]http(s*)://(.+?)\[/url\]#si', 'createLink',$text);
$text = preg_replace_callback('#\[url=magnet:([^\] ]+?)\](.+?)\[/url\]#si', 'createLink1',$text);
$text = preg_replace_callback('#\[url=http(s*)://([^\] ]+?)\](.+?)\[/url\]#si', 'createLink2',$text);
return $text;
}

?>

народ подскажите в чем ошибка !!
Fatal error: Cannot redeclare createlink() (previously declared in /data/users/vh30310/data/www/45king.ru/bbcod.php:77) 

такая ошибка вылазиет когда я хочу обработать два поля через ббкод вот так
$kk=createBBtags(lil);
$lll=createBBtags(hih);




Спустя 2 часа, 38 минут, 45 секунд (14.09.2011 - 03:51) kirik написал(а):
Я так подозреваю, что фигурная скобочка (последняя) должна стоять после $text = nl2br($text);..
Точнее функции с createLink до video должны стоять после последней скобочки..

Спустя 23 минуты, 5 секунд (14.09.2011 - 04:14) 45king написал(а):
kirik
не понел

Спустя 1 час, 28 минут, 52 секунды (14.09.2011 - 05:43) kirik написал(а):
45king
В исходном коде функции.

Спустя 1 час, 20 минут, 54 секунды (14.09.2011 - 07:03) 45king написал(а):
kirik
я не понимаю вы про что какой еще исходный код

Спустя 28 минут, 57 секунд (14.09.2011 - 07:32) twin написал(а):
Про этот наверное smile.gif

Функцию нельзя определять внутри другой функции. Иначе и будет Cannot redeclare

Спустя 1 час, 10 минут, 45 секунд (14.09.2011 - 08:43) 45king написал(а):
спасиб всем за помошь user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.