Показать сообщение отдельно
  #1 (permalink)  
Старый 04.05.2012, 21:49
Новичок на форуме
Отправить личное сообщение для sandrey.de Посмотреть профиль Найти все сообщения от sandrey.de
 
Регистрация: 04.05.2012
Сообщений: 1

Не работает Javascript
Ребят столкнулся с проблемой у меня есть админка для сайта, но в ней бб-коды работают только в IE, подскажите какие функции нужно дополнить что бы работало во всех браузерах...

<?php
include "../inc/config.php";
if ($isinclude == false) { Header("Location: news.php"); exit; }

?>
<html>
<head>
<title>Админ-Центр</Title>
<script type="text/javascript">
function insBB(oTag, cTag) {
var sel = document.selection.createRange();
if (sel.text > '') {
sel.text = oTag + sel.text + cTag;
} else {
document.addform.addtext.value = document.addform.addtext.value + oTag + cTag;
}
}
</script>
</head>
<body>
<?php

$date = date("d.m.Y H:i:s");
echo "<center><small>$date</small></center><p>\n";

$phpself = $_SERVER["PHP_SELF"]."?do=add";
$print_form = 0;

    if (@$_POST)
    {
        $text = $_POST['addtext'];        
	$text = htmlspecialchars($text);
        $text = bb_to_html($text);
	$text = nl2br($text);
	if (strlen($text) > 500000)
	{
	    print "Максимальная дина сообщения 500000 символов.<br>\n"; 
            $print_form = 1;
	}
	elseif (strlen($text) <= 1)
	{
	    print "Минимальная длина сообщения 2 символа.<br>\n"; 
            $print_form = 1;
	}
        else
        {
	    $query = "INSERT INTO `news` ( `date` , `text` ) 
	    VALUES (
   	    '$date', '$text'  
	    );";
	    if (mysql_query($query))
	    {
	        print "<p><center>Новость успешно добавлена!<p>\n<a href=\"news.php?do=add\">Добавить ещё</a><br>\n<a href=\"news.php\">В центр Управления новостями</a><br />\n<a href=\"index.php\">В админку</a>\n";
            }
            else
            {
                print "Произошла ошибка:" . mysql_error() . "\n";
            }
         }
    }       
    else
    {
        $print_form = 1;
    }
    
    if ($print_form == 1)
    {
	?>
	<form name="addform" action="<?=$phpself ?>" method="POST">
	<input type=button onClick="insBB('[b]', '[/b]')" title="Жирный" value=" B "> |
	<input type=button onClick="insBB('[i]', '[/i]')" title="Курсив" value=" I "> |
	<input type=button onClick="insBB('[u]', '[/u]')" title="Подчеркивание" value=" U "> |
	<input type=button onClick="insBB('[center]', '[/center]')" title="отцентрировать" value=" center "> |	
	<input type=button onClick="insBB('[font=Verdana]', '[/font]')" title="Шрифт" value=" A ">	
	<select OnChange="insBB('[size=' + this.options[this.selectedIndex].value + ']', '[/size]'); this.selectedIndex = 0;"> |
	        <option>Размер</option>
	        <option value="8">8</option>
		<option value="10">10</option>
		<option value="11">11</option>
		<option value="12">12</option>
		<option value="13">13</option>
		<option value="14">14</option>
		<option value="15">15</option>
		<option value="16">16</option>
		<option value="18">18</option>
		<option value="20">20</option>
		<option value="25">25</option>
	</select>
	<select OnChange="insBB('[color=' + this.options[this.selectedIndex].value + ']', '[/color]'); this.selectedIndex = 0;"> |
	        <option>Цвет текста</option>
	        <option style="color:red" value="red">Красный</option>
		<option style="color:purple" value="purple">Пурпурный</option>
		<option style="color:pink" value="pink">Розовый</option>
		<option style="color:orange" value="orange">Оранжевый</option>
		<option style="color:yellow" value="yellow">Жёлтый</option>
		<option style="color:green" value="green">Зелёный</option>
		<option style="color:teal" value="teal">Бирюзовый</option>
		<option style="color:blue" value="blue">Синий</option>
		<option style="color:navy" value="navy">Фиолетовый</option>
		<option style="color:brown" value="brown">Коричневый</option>
		<option style="color:gray" value="gray">Серый</option>
	</select>
	<input type=button onClick="insBB('[img]', '[/img]')" title="Вставка изображения" value=" img "> |
	<input type=button onClick="insBB('[url=]', '[/url]')" title="Вставить URL" value=" url ">
	<br><textarea name="addtext" cols=63 rows=10 wrap="hard"></textarea><br>
	<input type="submit" value="Добавить новость" /><br />
	</form>
        <a href="news.php">Центр Управления новостями</a><br />
        <a href="index.php">В админку</a>
        <?php
    }                                       

    function bb_to_html($str)
    {                         
	$bbcode = array(
		  '[b]',
		  '[i]',
                  '[u]',
		  '[center]',
		  '[/b]',
                  '[/i]',
                  '[/u]',
		  '[/center]'
		  );
	
	$html = array(
		'<b>',
		'<i>',
                '<u>',
		'<center>',
		'</b>',
                '</i>',
                '</u>',
		'</center>'
		);
				  
	$str = str_replace($bbcode, $html, $str);
		
	$bbcode = array(
		  '/\[font=(.+?)\]/i',
		  '/\[color=(.+?)\]/i',
                  '/\[size=(.+?)\]/i',
                  '/\[url=(.+?)\]/i',
		  '/\[img\](.+?)\[\/img\]/i'
		  );

	$html = array(
		'<font face="$1">',
		'<font color="$1">',
                '<font size="$1">',
                '<a href="$1">',
                '<img src="$1">'
		);

	$str = preg_replace($bbcode, $html, $str);
 
	$bbcode = array(
		  '[/font]',
		  '[/color]',
                  '[/size]',
		  '[/url]'
		  );
	
	$html = array(
		'</font>',
		'</font>',
                '</font>',
		'</a>'
		);
				  
	$str = str_replace($bbcode, $html, $str); 
	
	return $str;    
    }

?>
</body>
</html>
Ответить с цитированием