Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Цитаты с башорга себе в подпись (https://forum.antichat.xyz/showthread.php?t=33787)

gemaglabin 20.02.2007 17:36

Цитаты с башорга себе в подпись
 
Давно грела эта идея,наконец реализовал.Дергает случайные цитаты с любимого нами башорга и помещает на картинку.Решил взять цитаты , максимальное число строк которых не превышает четыре - побережем нервы людей,смотрящих десятисантиметровые подписи.Скачать можно тут

blaga 20.02.2007 17:45

Цитата:

Вы должны добавить репутацию кому-то еще, прежде чем сможете снова добавить ее gemaglabin.
Молодец, Гема... чего еще сказать... :)

GreenBear 20.02.2007 17:55

если у кого нету хостинга, то можете использовать с моего.

http://gb.netsec.ru/bash/bash.php

nerezus 20.02.2007 17:56

у меня раньше такая тут была =)
ща она на форуме sources.ru стоит, можете глянуть.
И вроде на дамаглабе.

DIAgen 20.02.2007 17:57

Ну что Гема пригодилась функция?

gemaglabin 20.02.2007 18:01

Диаген,спасибо что помог , вот только фукнция не пригодилась.Почему то она работала только на локалхосте

PHP код:

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,но все равно спасибо.

blaga 20.02.2007 18:02

Блин, на моем хосте канает через раз... :( ща другой хост поищу...

ZaCo 20.02.2007 18:03

гем, харе уже парсеры писать. делом займись)

Thanat0z 20.02.2007 18:08

теоретически можно переделать под "now playing"

gemaglabin 20.02.2007 18:10

Это нужен плагин к винампу который бы передавал скрипту название current music , winamp api хорошо описан , вот только делать лень

Thanat0z 20.02.2007 18:14

Цитата:

Сообщение от gemaglabin
Это нужен плагин к винампу который бы передавал скрипту название current music , winamp api хорошо описан , вот только делать лень

зачем? AMIP от фубара или винамп в текстовик пишет нужную инфу, и всё

Trinux 20.02.2007 18:53

Цитата:

Сообщение от Thanat0z
зачем? AMIP от фубара или винамп в текстовик пишет нужную инфу, и всё

ага, лишь маленькая проблемка - достать с харда посткреатера тот самый файлик =)))

Вообще идея с башоргом прикольная. Однако реализация не блещет =( Ибо намного проще было бы, если бы это не было бы картинкой (и не надо кричать что это никак не реализовать) ну и на крайний случай - нужно передавать параметры скрипту типа цвета фона и шрифта, чтобы было как можно более похоже на текст.

ZaCo 20.02.2007 19:34

>>(и не надо кричать что это никак не реализовать)
на этом форуме в подписи? не поверю пока не увижу:)

Helios 20.02.2007 20:13

Гема, проблеммка у твоего релиза: когда цитата меньше чем в 4 строки, текст растягивается и смотрится ИМХО некрасиво)

А так идея рулезз

nc.STRIEM 21.02.2007 00:21

Цитата:

Сообщение от Trinux
(и не надо кричать что это никак не реализовать)

А можно поинтересоваться как? саму идею..
прост я не представляю как ты этот текст вставиш в подпись.

NOmeR1 21.02.2007 00:54

Отличный скрипт)
2nc.STRIEM, просто вместо картинки (в теге [img]) пишешь путь до скрипта %)

И будет типо этого :
http://underwater.xtoolz.ru/bash/bash.php

Нажимаешь обновить рисунок, там другая цитата. Кул скрипт))

Trinux 21.02.2007 03:48

Цитата:

Сообщение от nc.STRIEM
А можно поинтересоваться как? саму идею..
прост я не представляю как ты этот текст вставиш в подпись.

Я не знаю =) но точно уверен что можно.
Способ всегда найти можно, в этом я точно уверен.

c411k 21.02.2007 08:47

ы, еще летом такую фишку делал, немного кривовато, но работает (бывает что через раз, так что обновить тыкайте) :p
-----------------------------
http://www.spazioblog.it/statistiche/temp/img/a.png
-----------------------------

nerezus 21.02.2007 09:38

Конечно можно: запросом в панельку профиля по крону. Но этот способ очень глупый, т.к. если все так будут делать - то будет большая нагрузка на серв.

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

Цитата:

Сообщение от NOmeR1
2nc.STRIEM, просто вместо картинки (в теге [img]) пишешь путь до скрипта %)

И будет типо этого :
http://underwater.xtoolz.ru/bash/bash.php

Нажимаешь обновить рисунок, там другая цитата. Кул скрипт))

Работать будет когда скрипт возвращает картинку, а когда текст не будет!

Цитата:

Сообщение от nerezus
Конечно можно: запросом в панельку профиля по крону. Но этот способ очень глупый, т.к. если все так будут делать - то будет большая нагрузка на серв.

есле я тя праильно понял, то это при каждом обновлении, скрипт будет логиниться под юзером, и менять в его профиле подпись! правильно?
но тогда сам юзер не сможет нормально работать т.к. ипри авторизации идет привязка к IP!

хотя можно все сделать через проксю..

Вобще это уж извращения пошли....

Abra 24.02.2007 18:45

nc.STRIEM все верно говорит. На ЭТОМ форуме сделать нечто такое ТЕКСТОМ простому пользователю невозможно как ни крути. Да и в любом другом скорее всего тоже.
для этого нужен минимум доступ в админку чтобы создать в ней модуль, устанавливающий подпись для конкретного пользователя. Там уже можно сделать так, чтоб подпись возвращалась текстом. Массовости такая идея не получит - вряд ли админам будет в кайф прописывать в шаблонах подпись каждому желающему.

NOmeR1 16.07.2007 00:02

Гем, твой скрипт не работает, вот мой вариант
PHP код:

<?

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$outPREG_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("&lt;","<",$row[1]);
    
$row[1] = str_replace("&gt;",">",$row[1]);
    
$row[1] = str_replace('&quot;','"',$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($image000x363940);

$text win2uni($row[1]);

$X 1;
$Y 11;

imagettftext($image$font_size0$X$Y0xB9B9B9$font_name$text);

header('Content-type: image/png');
imagepng($image);
imagedestroy($image);

?>


GreenBear 16.07.2007 00:07

Цитата:

На ЭТОМ форуме сделать нечто такое ТЕКСТОМ простому пользователю невозможно как ни крути.
я делал. может даже помнит кто.

Zitt 16.07.2007 00:57

Я помню было такое...

genom-- 18.07.2007 00:43

все накрылись подписи --))))) у некоторых

NOmeR1 18.07.2007 01:16

Цитата:

Сообщение от genom--
все накрылись подписи --))))) у некоторых

Ну не обязательно использовать на ачате :)


Время: 07:09