Alexander Ipp
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Dina Да. И лучше код скрпита не тот, что там, а такой: Код: use CGI::Carp qw (fatalsToBrowser); $| = 1; #open(FILE,"/home/212/s290/public_html/cgi-bin/ikonboard/data/recentpost.dat"); ### Фиксим кривизну рук автора хака. :)) | Alexander Ipp require "data/boardinfo.cgi"; # Вызываем файл с инфой о борде. open(FILE,"$ikondir" . "data/recentpost.dat"); # Подставляем абсолютный путь к папке с бордой... И не надо ничего делать ручками. лол @datas = <FILE>; close (FILE); $ranks = 4; while ($ranks > -1) { @top5 = split(/\|/,@datas[$ranks]); $top5[3] = substr($top5[3],0,70) . "..." if (length($top5[3]) > 70); ### Убираем коды IB из текста... | Alexander Ipp $top5[3] = join('',split(/<br>/,$top5[3])); $top5[3] = join('',split(/<p>/,$top5[3])); $top5[3] =~ s/\<p>/<br><br>/isg; $top5[3] =~ s|\[\[|\{\{|g; $top5[3] =~ s|\]\]|\}\}|g; $top5[3] =~ s|\n\[|\[|g; $top5[3] =~ s|\]\n|\]|g; $top5[3] =~ s|<br>| <br>|g; $top5[3] =~ s|\[hr\]\n||g; $top5[3] =~ s|\[hr\]||g; $top5[3] =~ s/\[q\]\s*(.*?)\s*\[\/q\]/$1/isg; $top5[3] =~ s/\[quote\]\s*(.*?)\s*\[\/quote\]/$1/isg; $top5[3] =~ s/\[url\](\S+?)\[\/url\]/$1/isg; $top5[3] =~ s/\[url=http:\/\/(\S+?)\]/$1/isg; $top5[3] =~ s/\[url=(\S+?)\]/$1/isg; $top5[3] =~ s/\[\/url\]//isg; $top5[3] =~ s/(^|\s|\<br\>)(http:\/\/\S+)/$1 $2 /isg; $top5[3] =~ s/(^|\s|\<br\>)(https:\/\/\S+)/$1 $2 /isg; $top5[3] =~ s/(^|\s|\<br\>)(ftp:\/\/\S+)/$1 $2 /isg; $top5[3] =~ s/(^|\s|\<br\>)(www\.\S+)/$1 $2 /isg; $top5[3] =~ s/\[c\](.*?)\[\/c\]/$1/isg; $top5[3] =~ s/\[s\](.*?)\[\/s\]/$1/isg; $top5[3] =~ s/\[b\]//isg; $top5[3] =~ s/\[\/b\]//isg; $top5[3] =~ s/\[i\]//isg; $top5[3] =~ s/\[\/i\]//isg; $top5[3] =~ s/\[size=\s*(.*?)\s*\]\s*(.*?)\s*\[\/size\]/$2/isg; $top5[3] =~ s/\[font=\s*(.*?)\s*\]\s*(.*?)\s*\[\/font\]/$2/isg; $top5[3] =~ s/\[u\]//isg; $top5[3] =~ s/\[br\]//isg; $top5[3] =~ s/\[\/u\]//isg; $top5[3] =~ s/\[img\](.*?)(script:)(.*?)\[\/img\]/$1$3/isg; $top5[3] =~ s/\[img\](.*?)(mailto:)(.*?)\[\/img\]/$1$3/isg; $top5[3] =~ s/\[img\](.+?)\[\/img\]/ $1 /isg; $top5[3] =~ s/\[color=(\S+?)\]/$1/isg; $top5[3] =~ s/\[\/color\]//isg; $top5[3] =~ s/\\http:\/\/(\S+)/$1/isg; $top5[3] =~ s/(\[list\])(.+?)(\[\/list\])/ $2/isg; $top5[3] =~ s/(\[list=)(A|1)(\])(.+?)(\[\/list\])/ $4/isg; $top5[3] =~ s/(\[\*\])/ /isg; $top5[3] =~ s/\[code\](.+?)\[\/code\]/ $1/isg; $top5[3] =~ s/\[code\](.+?)\[\/code\]/ $1/isg; $top5[3] =~ s/\[email=(\S+?)\]/ $1/isg; $top5[3] =~ s/\[\/email\]//isg; $top5[3] =~ s/(\[FLASH SIZE=1\])(.+?)(\[\/FLASH\])/ $2 /isg; $top5[3] =~ s/(\[FLASH SIZE=2\])(.+?)(\[\/FLASH\])/ $2 /isg; $top5[3] =~ s/(\[FLASH SIZE=3\])(.+?)(\[\/FLASH\])/ $2 /isg; $top5[3] =~ s/(\[FLASH=)(\S+?)(\,)(.+?)(\])(.+?)(\[\/FLASH\])/ $6 /isg; $top5[3] =~ s/(\[center\])(.+?)(\[\/center\])/$2/isg; $top5[3] =~ s/(\[sound\])(\S+?)(\.mid|\.midi|\.wav)(\[\/sound\])/ $2 $3 /isg; $top5[3] =~ s|\{\{|\[|g; $top5[3] =~ s|\}\}|\]|g; ######### Убрали коды. лол | Alexander Ipp $ranks--; $html .= "<font face=\"Garamond\" size=\"3\">> "; #if ($top5[0]) { # $html .= "<a href=\"http://the-sims.pp.ru/cgi-bin/ikonboard/topic.cgi?forum=$top5[0]&topic=$top5[1]\"><b>$top5[2]</b></a><br></font><font face=\"verdana,arial,helvetica\" size=1> \"$top5[3]\"</font><br>"; # } else { # $html .= "<a href=\"http://the-sims.pp.ru/cgi-bin/ikonboard/board.cgi\">Forums</a><br>"; # } ########### Снова фиксим кривизну рук... | Alexander Ipp if ($top5[0]) { $html .= "<a href=\"$boardurl/topic.cgi?forum=$top5[0]&topic=$top5[1]\"><b>$top5[2]</b></a><br></font><font face=\"verdana,arial,helvetica\" size=1> \"$top5[3]\"</font><br>"; } else { $html .= "<a href=\"$boardurl/board.cgi\">Главная страница конференции</a><br>"; } } print "Content-type: text/html\n\n"; print "$html"; exit; | Для кого-то делал, уже не помню для кого, так или иначе сейчас у него не ИБ2, так что юзайте наздоровье. гы Этот код всунте в top5.cgi вместо того что там уже лежит. | Всего записей: 1943 | Зарегистр. 20-08-2001 | Отправлено: 19:33 23-07-2002 | Исправлено: Alexander Ipp, 19:34 23-07-2002 |
|