Перейти к контенту

[1.x.x]Таблицы в IB коде


Рекомендуемые сообщения

Название: Таблицы в IB коде

Добавил: Гость

Добавлен: 08 Май 2003

Обновлен: 08 Май 2003

Категория: IP.Board 1.x.x

 

Код таблицы в IB коде. Написан по аналогии с ru-board.com только для Invision Power Board.

Написал Oska [iBResource.ru]. Распространение только с указанием сайта автора (www.ibresource.ru)

 

 

Нажмите здесь, чтобы скачать файл

Ссылка на комментарий
Поделиться на других сайтах

демо? на инвижине ...

 

Не понял тебя?. Демо показать не могу, негде показать.

А зачем показывать, все как на ру-борде! Только естесственно появилась кнопка table (alt+o) :D

Ссылка на комментарий
Поделиться на других сайтах

Ну установил я этот хак, и чё вот это такое?

 

Parse error: parse error in /usr/home/diman/forum.ul.ru/forum/lang/4/lang_post.php on line 29
Warning: Invalid argument supplied for foreach() in /usr/home/diman/forum.ul.ru/forum/sources/functions.php on line 674

Ссылка на комментарий
Поделиться на других сайтах

adviser

Хак рабочий на все сто процентов, только что проверял на локалке/ Смотри где ты ошибся и потом я чтото не припомню что в этом хаке надо было редактировать functions.php

Ссылка на комментарий
Поделиться на других сайтах

там не надо редактировать function, просто ошибку такую выдаёт, и вся форма ответа какая-то перекошанная стала, и все кнопки вообще исчезли, вроде нигде не ошибся я, хотя всё может быть.... На локалке я не могу проверить, MySQL не работает что-то, а переставлять времени нет, сёдня праздник надо отмечать... Кстати всех с ДНЁМ ПОБЕДЫ!!!!
Ссылка на комментарий
Поделиться на других сайтах

adviser

там не надо редактировать function, просто ошибку такую выдаёт

вот это и странно

и вся форма ответа какая-то перекошанная стала, и все кнопки вообще исчезли,

гм ты случаем не так сделал?

<input type='button' accesskey='l' value=' LIST ' <input type='button' accesskey='o' value=' TABLE '    onClick='simpletag("TABLE")'    class='codebuttons' name='TABLE' onMouseOver="hstat('table')">>

 

там надо было просто ниже отдельной строчкой вставить

<input type='button' accesskey='o' value=' TABLE '    onClick='simpletag("TABLE")'    class='codebuttons' name='TABLE' onMouseOver="hstat('table')">

А не в лист:D)

На локалке я не могу проверить, MySQL не работает что-то, а переставлять времени нет, сёдня праздник надо отмечать
С праздником;)))

А завтра попробуй переставить или лучше послезвтра когда тряска с рук после сегодняшнего пройдёт:)))))))))

З.Ы. Хак реально рабочий я его у себя на локалхосте проверял а там у меня даже форма ответа измененна наглухо, мало что от ИПБ осталось да и постпарзер так утяжелён что дальше некуда, но всё работает

Ссылка на комментарий
Поделиться на других сайтах

Хаки всегда тестируются мной по инструкции. Поэтому они должны работать, если все правильно сделаешь.

 

там надо было просто ниже отдельной строчкой вставить

 

А всю строку я не стал говорить, потому как перевод у всех разный, многие могли наворотить и не могли бы найти..., а так всегда найдут такую строку :D

Ссылка на комментарий
Поделиться на других сайтах

  • 6 месяцев спустя...
  • 7 месяцев спустя...

Попытался поставить этот мод на в1.3.1 следуя инструкции,

Однако, в sources/lib/post_parser.php не смог найти строчки:

-----------------------------------------------------------

$txt = preg_replace( "#\[/list\]#i" , "</ul>", $txt );

-----------------------------------------------------------

чтобы дальше, после неё вставить:

$txt = preg_replace( "#\[table\]#i" , "<table cellSpacing=0 cellPadding=3... и т.д.

Поэтому вставил эти строки после

// {LIST}[*]{/LIST}

В остальных файлах вроде бы все сошлось, в форме ответа появилась кнопочка ТАБЛЕ. Но вместо таблички получается вот такая ерунда:

\[table\]проба

\[tab\]проба1[/tab]

\[tab\]проба2[/tab]

\[/table\]

 

Что я сделал неправильно?

Добавлено в [mergetime]1089996634[/mergetime]

Заработало!!!

//-------------------------

// Do TABLE-tag

//-------------------------

 

while( preg_match( "#\n?\[table\](.+?)\[/table\]\n?#ies", $txt ) )

{

$txt = preg_replace( "#\[table\]#i", "<table cellSpacing=0 cellPadding=3 bordercolor=ffcc00 border=1><tr><td>",$txt );

$txt = preg_replace( "#\[tab\]#i", "</td><td>" , $txt );

$txt = preg_replace( "#\[tr\]#i", "</td></tr><td>" , $txt );

$txt = preg_replace( "#\[/table\]#i", "</td></tr></table>", $txt );

}

while( preg_match( "#\n?\[table=(a|A|i|I|1)\](.+?)\[/table\]\n?#ies" , $txt ) )

$txt = preg_replace( "#<table cellSpacing=0 cellPadding=3 bordercolor=ffcc00 border=1><tr><td>#", "\[table\]", $txt );

$txt = preg_replace( "#</td><td>#", "\[tab\]" , $txt );

$txt = preg_replace( "#</td></tr><td>#", "\[tr\]" , $txt );

$txt = preg_replace( "#</td></tr></table>#", "\[/table\]", $txt );

}

вот ЧТО надо вставлять в фаел sources/lib/post_parser.php перед

//-------------------------

// Do [FLASH] tags

//-------------------------

Ссылка на комментарий
Поделиться на других сайтах

  • 5 месяцев спустя...

Таблица формируется, а потом начинаются странные вещи.

Про попытке отредактировать сообщение с таблицей все квадратные скобки тэгов меняются на треугольные, а все тэги форума превращаются в обычные HTML-тэги.

Естественно, после этого таблица пропадает. Как это исправить?

Повторяю, версия 1.3.1.

 

Помогите исправить этот чёртов косяк, он у меня, как бельмо на глазу :D

Ссылка на комментарий
Поделиться на других сайтах

$txt = preg_replace( "#\[table\]#i"  , "<table cellSpacing=0 cellPadding=3 bordercolor=999999 border=1><tr><td>" , $txt );

так не интересно :D

Слабо вот так:

1) просто [table]

2) [table + :

3) + ... bgcolor=xxxxx

4) + ....bordercolor=xxxx

5) + .... celllspacing=xx

6) + .... cellpadding=xx

7) + .... width=xxx%

 

?

 

;)

 

Ещё бы надо посчитать количество открывающих и закрывающих тегов. И если их нет, то не парсить всю таблицу.

Ещё бы надо ловить [td] и [tr] только внутри соответствующих [table] иначе случайное несоответствие покорёжит всю html страницу, учитывая, что она сама строится на таблице.

 

Т.е. вот так:

[table]

[tr]

[td]

[/td]

[/tr]

[/table]

 

должно отпарсится, а

 

[/td]

[/tr]

 

или

 

[/table]

 

или

 

[tr]

[/td]

[/tr]

[/table]

 

или в других ошибочных ситуациях - не парсилось.

Ссылка на комментарий
Поделиться на других сайтах

Всё, народ, я её поборол и даже дописал как ею пользоваться в справочник по ББ-коду.

А что означает слово "парситься" ?

:D

Ссылка на комментарий
Поделиться на других сайтах

парситься

парсить - в общем случае находить что-то из строки, в чего-то превращать и вставлять обратно на тоже место.

Ссылка на комментарий
Поделиться на других сайтах

  • 4 месяца спустя...
$txt = preg_replace( "#\[table\]#i"  , "<table cellSpacing=0 cellPadding=3 bordercolor=999999 border=1><tr><td>" , $txt );

так не интересно :)

Слабо вот так:

1) просто [table]

2) [table + :

3) + ... bgcolor=xxxxx

4) + ....bordercolor=xxxx

5) + .... celllspacing=xx

6) + .... cellpadding=xx

7) + .... width=xxx%

 

?

 

:)

 

Ещё бы надо посчитать количество открывающих и закрывающих тегов. И если их нет, то не парсить всю таблицу.

Ещё бы надо ловить [td] и [tr] только внутри соответствующих [table] иначе случайное несоответствие покорёжит всю html страницу, учитывая, что она сама строится на таблице.

 

Да, так интереснее! :) И правильнее ;).

 

А реально сделать bgcolor=xxxxx, bordercolor=xxxx, celllspacing=xx, cellpadding=xx, width=xxx% независимо от порядка?

 

А пользователю cellspacing и cellpadding может не следует давать менять ;)?

 

Да вообще хотя бы без всяких атрибутов чтобы нормально перерабатывало (с подсчетом [td]).

 

А может еще и [th] тогда не помешает :D ?

Ссылка на комментарий
Поделиться на других сайтах

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.