Просмотр полной версии : Antichat UserBar on 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;
}
//работа в массиве мне удобней :)
$img = array();
$img['WIDTH'] = 350; //ширина юзербара
$img['HEIGHT'] = 20; //высота юзербара
$img['FONT_SIZE'] = 8; //размер шрифта
$img['FONT_NAME'] = 'REFSAN.TTF'; //имя шрифта #1
$img['FONT_NAME_2'] = 'visitor1.ttf'; //имя шрифта #2
$image = imagecreatetruecolor($img['WIDTH'],$img['HEIGHT']) or die();
imagefill($image, 0, 0, 0x2B2F34);
$img['USER'] = '24820'; //ваш ID на форуме
$open = file_get_contents('http://forum.antichat.ru/member.php?u='.$img['USER']);
$open = preg_match('|(.+) \(<b>(\d+)</b>/<b>(\d+)</b>\)|i',$open,$repa);
$img['TEXT'] = win2uni('Репутация: '.$repa[1].' ('.$repa[3].')');
imagerectangle($image, 0, 0, 349, 19, 0x000000);
imagefilledrectangle($image,1,1,348,8,0x2F3439);
imagettftext($image, $img['FONT_SIZE'], 0, 215, 14, 0xB9B9B9, $img['FONT_NAME'], $img['TEXT']);
imagettftext($image, $img['FONT_SIZE'] + 2, 0, 10, 14, 0x228B22, $img['FONT_NAME_2'], 'ANTICHAT.RU');
header('Content-type: image/gif');
imagegif($image);
imagedestroy($image);
?>
Шрифты
[WebFile] (http://webfile.ru/1469940)
[Slil] (http://slil.ru/24635765)
[Dump] (http://dump.ru/files/9/9529272256/)
Его довольно просто подделать под любой другой форум/сайт, что хотите. Самый нормальный бесплатный хостинг под этот скрипт - www.6te.net
P.S. Сильно не ругайте, я не так хорошо освоился в PHP.
Красиво!
Быстро ты осваиваешь пхп+)
боянище...
но идея с репой ничё...
NOmeR1
может antichat.ru лучше заменить на ник? так будет лучше выглядеть
Ошибочка в начале...
Файл шрифта показа репутации неправильно формат его написан...
Необходимо изменить REFSAN.ttf на REFSAN.TTF
GreenBear
16.07.2007, 03:01
но я бы сделал по крону, например раз в час.. так если где на популярном форуме разместишь нах ачат задосишь =\
GreenBear, не ачат заддосит, а тот сайт где разместит =)
GreenBear
16.07.2007, 03:43
а я что сказал?
на популярном форуме разместишь нах ачат задосишь =\
...
•••™NO FEAR™•••
16.07.2007, 06:45
Нормально так сделал, интересно :)
Молодец, интересно сделал (;
BlackCats
16.07.2007, 10:28
нифигаааа!!! номер!!! это была моя идея, и ты её купиздил! :'( сам хотел замутить дня 4 назад но всёравно +
NOmeR1
может antichat.ru лучше заменить на ник? так будет лучше выглядеть
Замени, то тогда не будет понятно для какого сайта ЮзерБар.
нифигаааа!!! номер!!! это была моя идея, и ты её купиздил! :'( сам хотел замутить дня 4 назад но всёравно +
хы) быстрее надо было делать. Ну рас уж ты первый придумал, лови +
Ошибочка в начале...
Файл шрифта показа репутации неправильно формат его написан...
Необходимо изменить REFSAN.ttf на REFSAN.TTF
С заглавными не работает
Если бы Егорыч включил приём аватаров в формате PHP, то я бы такой аватар намутил :)
Замени, то тогда не будет понятно для какого сайта ЮзерБар.
хы) быстрее надо было делать. Ну рас уж ты первый придумал, лови +
Исправил, спс.
Если бы Егорыч включил приём аватаров в формате PHP, то я бы такой аватар намутил :)
avatarshell.php ? :)
avatarshell.php ? :)
Нет, не загружать, а указывать ссылку.
Егорыч+++
16.07.2007, 13:37
Данная штука конечно интересна. Но есть одно НО.
По сути эта штука работает как ддос. Каждое обращение к странице на которой такая картинка, будет вызывать еще один конект к форуму. А если, кто нибудь захочит пофлудить, ему будет просто достаточно эту картинку перегружать (тогда естественно будет бан Ip серверу на котором картинка). Поэтому нужно реализовывать кеширование информации и ее обновление не при каждом конекте, а скажем через каждые полчаса.
Про что гринбир и говарил =\\
GreenBear
16.07.2007, 13:49
...
обрати внимание на ишь
Antichat (14:12:33 16/07/2007)
подписи с сегодняшнего дня отключены
Den (14:13:12 16/07/2007)
навсегда?
Antichat (14:13:49 16/07/2007)
для обычныхх пользователей возможно навсегда.. для пользователей из групп подписи разрешены
Доигрались бля(((((((
GreenBear
16.07.2007, 14:22
http://forum.antichat.ru/thread44545.html - написано же.
и я думаю, что этот бар нужен не для этого форума, зачем дублировать одно и тоже? если ставить, то на других форумах.
Думаю, GreenBear правильно сказал, что лучше использовать CRON для этого скрипта.
Ещё можно попробовать sleep() но я с ним не работал =\
А лучше использовать Cache, который хорошо реализован в ZendFramework...
Isis, ися перепил чтоли?)
Мишка прав - постоянный рефреш - сакс.
Ниче.. зато на другом форуме будет оригинальая подпись)) а то у всех будет эта фигня.. во прикол блин =\
Обновил скрипт, убрал ненужное, исправил неправильное, добавил ещё один "эффект" юзербара - осветление вверху.
Ещё раз обновил: добавил ещё полосы по всему юзербару, кто хочет, раскоментируйте и юзайте! :)
работал с человеком, можно доверять. Статья понравилась, для новичков как раз сойдёт, держи плюс
Добавил "тень", хотя на самом деле, теже самые буквы, только написаны чёрным цветом и их загораживает слово. Смотрится ярко, красиво, отчётливо.
создаешь бд на хосте где лежит скрипт.
в скрипт добавляешь функцию проверки в плане последнего обращения к ачату.
тоесть, перед тем как обратиться и снять инфу, скрипт смотрит базу, если в таблице время последнего обращения больше предположим на пол часа, то можно делать запрос, при этом добавив данное время в базу. надеюсь понятно обьяснил.
создаешь бд на хосте где лежит скрипт.
в скрипт добавляешь функцию проверки в плане последнего обращения к ачату.
тоесть, перед тем как обратиться и снять инфу, скрипт смотрит базу, если в таблице время последнего обращения больше предположим на пол часа, то можно делать запрос, при этом добавив данное время в базу. надеюсь понятно обьяснил.
зачем делать базу? можно просто текстовой файлик, куда будет записываться последнее обращение, а потом затираться новым =)
как х*й разница? я же не приводил кусок кода. просто предложил идею. а уже как реализовывать, это уже другое дело. кстати файлик, тоже бд :)
Как переделать этот скрипт под ipb , где в скрипте указываеться строчка для парсинка регуляркой ?
Перезалейте шрифты! =/
Тема вообще актуальна на данный момент?
Deathdreams
06.05.2010, 16:44
Перезалейте шрифты! =/
Тема вообще актуальна на данный момент?
скрипт писался криво в 2007 году.
лучше перепеши заново, исходник есть.
ReduKToR
08.05.2010, 11:04
<?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;
}
$img = array();
$img['USER'] = '72566'; //ваш ID на форуме
$img['WIDTH'] = 350; //ширина юзербара
$img['HEIGHT'] = 20; //высота юзербара
$img['FONT_SIZE'] = 8; //размер шрифта
$img['FONT_NAME'] = 'tahoma.ttf';
$img['FONT_NAME_2'] = 'tahoma.ttf';
$image = imagecreatetruecolor($img['WIDTH'],$img['HEIGHT']) or die();
imagefill($image, 0, 0, 0x2B2F34);
$open=file_get_contents('http://antichat-family.ru/member.php?u='.$img['USER'].'');
$open = preg_match('|(.+) \(<b>(\d+)</b>/<b>(\d+)</b>\)|i',$open,$repa);
$img['TEXT'] = win2uni('Репутация: '.$repa[1].' ('.$repa[2].'/'.$repa[3].')');
imagerectangle($image, 0, 0, 349, 19, 0x000000);
imagefilledrectangle($image,1,1,348,8,0x2F3439);
imagettftext($image, $img['FONT_SIZE'], 0, 205, 14, 0xB9B9B9, $img['FONT_NAME'], $img['TEXT']);
imagettftext($image, $img['FONT_SIZE'] + 2, 0, 10, 14, 0x228B22, $img['FONT_NAME_2'], 'ANTICHAT.RU');
header('Content-type: image/gif');
imagegif($image);
imagedestroy($image);
?>
Вот седня посидел минут 10.
Рабочая версия скрипта
Репутация полная отображается через сайт http://antichat-family.ru
BlackSun
08.05.2010, 11:24
Добавьте кэширование, изверги =\
_==wolf==_
08.05.2010, 11:31
ReduKToR, эмм, а зачем через family? ее и с ачата очень легко посмотреть
POS_troi
08.05.2010, 12:17
Кэш однозначно нужен
ReduKToR, эмм, а зачем через family? ее и с ачата очень легко посмотреть
На фэмэли вся репа на одной простыне
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot