Просмотр полной версии : Цитаты с башорга себе в подпись
gemaglabin
20.02.2007, 17:36
Давно грела эта идея,наконец реализовал.Дергает случайные цитаты с любимого нами башорга и помещает на картинку.Решил взять цитаты , максимальное число строк которых не превышает четыре - побережем нервы людей,смотрящих десятисантиметровые подписи.Скачать можно тут (http://underwater.xtoolz.ru/bash/bash.rar)
Вы должны добавить репутацию кому-то еще, прежде чем сможете снова добавить ее gemaglabin.
Молодец, Гема... чего еще сказать... :)
GreenBear
20.02.2007, 17:55
если у кого нету хостинга, то можете использовать с моего.
http://gb.netsec.ru/bash/bash.php
у меня раньше такая тут была =)
ща она на форуме sources.ru стоит, можете глянуть.
И вроде на дамаглабе.
Ну что Гема пригодилась функция?
gemaglabin
20.02.2007, 18:01
Диаген,спасибо что помог , вот только фукнция не пригодилась.Почему то она работала только на локалхосте
function wrap_text($text, $wrap) {
$wrap -= 2; //wrapped phrase is started and ended by a char
preg_match_all("/\b\w.{1,$wrap}\w\b/",$text,$parts);
return (implode("<br>", $parts[0]));
}
Я заменил стандартной функцией wordwrap,но все равно спасибо.
Блин, на моем хосте канает через раз... :( ща другой хост поищу...
гем, харе уже парсеры писать. делом займись)
Thanat0z
20.02.2007, 18:08
теоретически можно переделать под "now playing"
gemaglabin
20.02.2007, 18:10
Это нужен плагин к винампу который бы передавал скрипту название current music , winamp api хорошо описан , вот только делать лень
Thanat0z
20.02.2007, 18:14
Это нужен плагин к винампу который бы передавал скрипту название current music , winamp api хорошо описан , вот только делать лень
зачем? AMIP от фубара или винамп в текстовик пишет нужную инфу, и всё
зачем? AMIP от фубара или винамп в текстовик пишет нужную инфу, и всё
ага, лишь маленькая проблемка - достать с харда посткреатера тот самый файлик =)))
Вообще идея с башоргом прикольная. Однако реализация не блещет =( Ибо намного проще было бы, если бы это не было бы картинкой (и не надо кричать что это никак не реализовать) ну и на крайний случай - нужно передавать параметры скрипту типа цвета фона и шрифта, чтобы было как можно более похоже на текст.
>>(и не надо кричать что это никак не реализовать)
на этом форуме в подписи? не поверю пока не увижу:)
Гема, проблеммка у твоего релиза: когда цитата меньше чем в 4 строки, текст растягивается и смотрится ИМХО некрасиво)
А так идея рулезз
nc.STRIEM
21.02.2007, 00:21
(и не надо кричать что это никак не реализовать)
А можно поинтересоваться как? саму идею..
прост я не представляю как ты этот текст вставиш в подпись.
Отличный скрипт)
2nc.STRIEM, просто вместо картинки (в теге ) пишешь путь до скрипта %)
И будет типо этого :
[IMG]http://underwater.xtoolz.ru/bash/bash.php
Нажимаешь обновить рисунок, там другая цитата. Кул скрипт))
А можно поинтересоваться как? саму идею..
прост я не представляю как ты этот текст вставиш в подпись.
Я не знаю =) но точно уверен что можно.
Способ всегда найти можно, в этом я точно уверен.
ы, еще летом такую фишку делал, немного кривовато, но работает (бывает что через раз, так что обновить тыкайте) :p
-----------------------------
http://www.spazioblog.it/statistiche/temp/img/a.png
-----------------------------
Конечно можно: запросом в панельку профиля по крону. Но этот способ очень глупый, т.к. если все так будут делать - то будет большая нагрузка на серв.
gemaglabin
24.02.2007, 16:29
Обновил,теперь можно задать цвет фона,текста и рамки,а также текст теперь выдается true color шрифтом.Скачать скрипт можно тут www.underwater.xtoolz.ru/projects/bash/bash.rar , сгенерировать тут www.underwater.xtoolz.ru/projects/bash/
nc.STRIEM
24.02.2007, 17:41
2nc.STRIEM, просто вместо картинки (в теге ) пишешь путь до скрипта %)
И будет типо этого :
[IMG]http://underwater.xtoolz.ru/bash/bash.php
Нажимаешь обновить рисунок, там другая цитата. Кул скрипт))
Работать будет когда скрипт возвращает картинку, а когда текст не будет!
Конечно можно: запросом в панельку профиля по крону. Но этот способ очень глупый, т.к. если все так будут делать - то будет большая нагрузка на серв.
есле я тя праильно понял, то это при каждом обновлении, скрипт будет логиниться под юзером, и менять в его профиле подпись! правильно?
но тогда сам юзер не сможет нормально работать т.к. ипри авторизации идет привязка к IP!
хотя можно все сделать через проксю..
Вобще это уж извращения пошли....
nc.STRIEM все верно говорит. На ЭТОМ форуме сделать нечто такое ТЕКСТОМ простому пользователю невозможно как ни крути. Да и в любом другом скорее всего тоже.
для этого нужен минимум доступ в админку чтобы создать в ней модуль, устанавливающий подпись для конкретного пользователя. Там уже можно сделать так, чтоб подпись возвращалась текстом. Массовости такая идея не получит - вряд ли админам будет в кайф прописывать в шаблонах подпись каждому желающему.
Гем, твой скрипт не работает, вот мой вариант
<?
function win2uni($s)
{
$s = convert_cyr_string($s,'w','i');
for ($result='', $i=0; $i<strlen($s); $i++)
{
$charcode = ord($s[$i]);
$result .= ($charcode>175)?"&#".(1040+($charcode-176)).";":$s[$i];
}
return $result;
}
$ps = file_get_contents('http://bash.org.ru/random');
preg_match_all("#<div id=\"quotes\">(.*?)<hr class=\"iq\">#is", $ps, $out, PREG_SET_ORDER);
foreach($out as $row)
{
$row[1] = preg_replace("#<div class=\"q\">(.*?)</div>(.*?)<div>(.*?)</div>(.*?)</div>#is","\\3",$row[1]);
$row[1] = preg_replace("#\n(.*?)#is","\\1",$row[1]);
$row[1] = str_replace('<br />',"\n",$row[1]);
$row[1] = str_replace('<br>',"\n",$row[1]);
$row[1] = str_replace(" ","",$row[1]);
$row[1] = '<ANTICHAT>'.$row[1].'<ANTICHAT close=1>';
$row[1] = preg_replace("#<ANTICHAT> (.*?) <ANTICHAT close=1>#is","\\1",$row[1]);
$row[1] = str_replace("<","<",$row[1]);
$row[1] = str_replace(">",">",$row[1]);
$row[1] = str_replace('"','"',$row[1]);
}
$row[1] = wordwrap($row[1], 100, "\n");
$count = substr_count($row[1],"\n");
$strl = strlen($row[1]);
$a=split("\n",$row[1]);
for($i=count($a), $max=0;$i>0;$i--)
if(strlen($a[$i-1])>$max)
$max=strlen($a[$i-1]);
$font_name = 'REFSAN.ttf'; //имя шрифта
$font_size = 8; //размер шрифта
$w = $max * ($font_size - 1); //ширина картинки
$h = (($count + 1) * ($font_size * 2)) - 1; //высота картинки
$image = imagecreatetruecolor($w,$h) or die('Cannot create image');
imagefill($image, 0, 0, 0x363940);
$text = win2uni($row[1]);
$X = 1;
$Y = 11;
imagettftext($image, $font_size, 0, $X, $Y, 0xB9B9B9, $font_name, $text);
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
?>
GreenBear
16.07.2007, 00:07
На ЭТОМ форуме сделать нечто такое ТЕКСТОМ простому пользователю невозможно как ни крути.
я делал. может даже помнит кто.
все накрылись подписи --))))) у некоторых
все накрылись подписи --))))) у некоторых
Ну не обязательно использовать на ачате :)
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot