|
Рейтинг как в Контакте (продолжение)
|
|
| Hak | Дата: 14 Июля 2010, 16:45 | Сообщение # 1 |  ● ● ● ● ● 489 сообщений Статус: Offline | Мужики, я там как то кидал свой способ вывода ранга пользователей как Вконтакте. Но там с картинками, я уже забаелся их рисовать. Нашёл вот такой скрипт, там по методу заполнения таблицы. Только там много лишнего и он кривой какой то, цыфры показуются не по середины таблички а рядом с ней. Помогите мне подправить его Code <div style="cursor:pointer;" onclick="rep_id()"> <?if($_REPUTATION$='0')?> <div> <table width="202" border="0" cellspacing="0" cellpadding="0" style="background: #ffffff; border: 1px solid #dedede"> <tr> <td height="18"> <table height="18" cellspacing="0" cellpadding="0" style="background: #c2d0db;"> <tr> <?if($_AOL$)?><td width="10"></td><?endif?> <?if($_CITY$)?><td width="25"></td><?endif?> <?if($_WWW$)?><td width="5"></td><?endif?> <?if($_ICQ$)?><td width="20"></td><?endif?> <?if($_SIGNATURE$)?><td width="100"></td><?endif?> <?if($_BIRTHDAY$)?><td width="32"></td><?endif?> <?if($_IS_ACTIVITY$)?><td width="20"></td><?endif?> </tr> </table> </td> </table> <div class="pro_zap"> <script language="JavaSсript"> star = 0<?if($_AOL$)?> + 5<?endif?><?if($_CITY$)?> + 20<?endif?><?if($_WWW$)?> + 5<?endif?><?if($_ICQ$)?> + 10<?endif?><?if($_SIGNATURE$)?> + 30<?endif?><?if($_BIRTHDAY$)?> + 20<?endif?><?if($_IS_ACTIVITY$)?> + 10<?endif?><?if($_NEWS_ENTRIES$)?> + $_NEWS_ENTRIES$<?endif?><?if($_PHOTO_ENTRIES$)?> +$_PHOTO_ENTRIES$<?endif?><?if($_BOARD_ENTRIES$)?> +$_BOARD_ENTRIES$<?endif?><?if($_DIR_ENTRIES$)?> +$_DIR_ENTRIES$<?endif?><?if($_STUFF_ENTRIES$)?> +$_STUFF_ENTRIES$<?endif?><?if($_PUBL_ENTRIES$)?> +$_PUBL_ENTRIES$<?endif?><?if($_LOAD_ENTRIES$)?> +$_LOAD_ENTRIES$<?endif?><?if($_FORUM_ENTRIES$)?> +$_FORUM_ENTRIES$<?endif?>
document.write(''+star+'%') </script> </div> </div> <?else?>
<?if($_REPUTATION$>'0' and $_REPUTATION$<'1000')?> <table width="202" border="0" cellspacing="0" cellpadding="0" style="background: #d4e9ba; border: 1px solid #dedede"> <tr> <td height="18"> <table height="18" cellspacing="0" cellpadding="0" style="background:#b2cc91;"> <tr> <?if($_REPUTATION$<'140')?><td width="$_REPUTATION$"></td><?else?><td width="140"></td><?endif?> </tr> </table> </td> </table><div class="rep_zap"><kbd class="rep_st">$_REPUTATION$</kbd></div> <?endif?> <script language="JavaScript"src="http://xdiz.ucoz.net/jquery.js"></script><?if($_REPUTATION$<'-1')?> <table width="202" border="0" cellspacing="0" cellpadding="0" style="background: #e08c8c; border: 1px solid #dedede;"> <tr> <td height="18" align="right"> <table height="18" cellspacing="0" cellpadding="0" style="background: #d74040;"> <tr> <?if($_REPUTATION$<'-10')?><td width="55"></td><?else?><td width="5"></td><?endif?> </tr> </table> </td> </table> <div style="position:relative;top:-17"><kbd class="repno">$_REPUTATION$</kbd></div><?else?>
<?if($_REPUTATION$>'999' and $_REPUTATION$<'7000')?> <table width="202" border="0" cellspacing="0" cellpadding="0" style="background: #82ac4e; border: 1px solid #eeeeee; height:18px;"> <tr><td height="15"> <div><table height="18" cellspacing="0" cellpadding="0" style="background:#5b7d31;"><tr> <?if($_REPUTATION$>'999' and $_REPUTATION$<'1500')?> <td width="20"></td><?endif?> <?if($_REPUTATION$>'1500' and $_REPUTATION$<'1700')?> <td width="30"></td><?endif?> <?if($_REPUTATION$>'1700' and $_REPUTATION$<'2000')?> <td width="40"></td><?endif?> <?if($_REPUTATION$>'2000' and $_REPUTATION$<'2300')?> <td width="50"></td><?endif?> <?if($_REPUTATION$>'2300' and $_REPUTATION$<'2500')?> <td width="60"></td><?endif?> <?if($_REPUTATION$>'2500' and $_REPUTATION$<'2600')?> <td width="70"></td><?endif?> <?if($_REPUTATION$>'2600' and $_REPUTATION$<'2900')?> <td width="90"></td><?endif?> <?if($_REPUTATION$>'2900' and $_REPUTATION$<'3000')?> <td width="100"></td><?endif?> <?if($_REPUTATION$>'3000' and $_REPUTATION$<'3300')?> <td width="115"></td><?endif?> <?if($_REPUTATION$>'3300' and $_REPUTATION$<'3500')?> <td width="125"></td><?endif?> <?if($_REPUTATION$>'3500' and $_REPUTATION$<'3900')?> <td width="140"></td><?endif?> <?if($_REPUTATION$>'3900' and $_REPUTATION$<'4100')?> <td width="155"></td><?endif?> <?if($_REPUTATION$>'4100' and $_REPUTATION$<'4400')?> <td width="170"></td><?endif?> <?if($_REPUTATION$>'4400' and $_REPUTATION$<'4800')?> <td width="190"></td><?endif?> <?if($_REPUTATION$>'4799' and $_REPUTATION$<'5000')?> <td width="191"></td><?endif?> <?if($_REPUTATION$>'4999' and $_REPUTATION$<'7000')?> <td width="191"></td><?endif?></tr></table> </td></table><div class="rep_zap"><kbd class="rephit">$_REPUTATION$</kbd></div>
<?else?>
<?endif?> <?endif?>
<?if($_REPUTATION$>'6999' and $_REPUTATION$<'100000')?> <table width="202" border="0" cellspacing="0" cellpadding="0" style="background: #7e9b5a; border: 1px solid #eeeeee; height:18px;"> <tr><td height="15"> <div><table height="18" cellspacing="0" cellpadding="0" style="background:#5e7542;"><tr> <?if($_REPUTATION$>'6999' and $_REPUTATION$<'8500')?> <td width="20"></td><?endif?> <?if($_REPUTATION$>'1499' and $_REPUTATION$<'1700')?> <td width="30"></td><?endif?> <?if($_REPUTATION$>'8499' and $_REPUTATION$<'10000')?> <td width="40"></td><?endif?> <?if($_REPUTATION$>'9999' and $_REPUTATION$<'12000')?> <td width="50"></td><?endif?> <?if($_REPUTATION$>'11999' and $_REPUTATION$<'15000')?> <td width="60"></td><?endif?> <?if($_REPUTATION$>'14999' and $_REPUTATION$<'18000')?> <td width="70"></td><?endif?> <?if($_REPUTATION$>'17999' and $_REPUTATION$<'19000')?> <td width="90"></td><?endif?> <?if($_REPUTATION$>'18999' and $_REPUTATION$<'21000')?> <td width="100"></td><?endif?> <?if($_REPUTATION$>'20999' and $_REPUTATION$<'23000')?> <td width="115"></td><?endif?> <?if($_REPUTATION$>'22999' and $_REPUTATION$<'26000')?> <td width="125"></td><?endif?> <?if($_REPUTATION$>'25999' and $_REPUTATION$<'29000')?> <td width="140"></td><?endif?> <?if($_REPUTATION$>'28999' and $_REPUTATION$<'35000')?> <td width="155"></td><?endif?> <?if($_REPUTATION$>'34999' and $_REPUTATION$<'39000')?> <td width="170"></td><?endif?> <?if($_REPUTATION$>'38999' and $_REPUTATION$<'42000')?> <td width="190"></td><?endif?> <?if($_REPUTATION$>'41999' and $_REPUTATION$<'49000')?> <td width="191"></td><?endif?> <?if($_REPUTATION$>'48999' and $_REPUTATION$<'100000')?> <td width="191"></td><?endif?></tr></table> </td></table><div class="rep_zap"><kbd class="rephit2">$_REPUTATION$</kbd></div> <?endif?>
<?endif?> </div> <style> .rep_zap {position:relative;top:-17;color:#fff2c8;text-align:center;} .pro_zap {position:relative;top:-17;color:#415a6d;text-align:center;} .rephit {color:#c4e79e;font-family: Arial, Helvetica, sans-serif; font-weight:bold;} .rephit2 {color:#cfe7b5;font-family: Arial, Helvetica, sans-serif;} // .rep_st {font-family: Arial, Helvetica, sans-serif; color:#387937;} .repto {padding:0;border-top:#3c8a34 1px solid} .repno {color:#ffe3e3;font-weight:bold;font-family: Arial, Helvetica, sans-serif; text-align:center} </style> Вот эту хероту вобще можно убрать, ну там рейтинг даётся за заполнение данных, мне оно не нужно Code <?if($_AOL$)?><td width="10"></td><?endif?> <?if($_CITY$)?><td width="25"></td><?endif?> <?if($_WWW$)?><td width="5"></td><?endif?> <?if($_ICQ$)?><td width="20"></td><?endif?> <?if($_SIGNATURE$)?><td width="100"></td><?endif?> <?if($_BIRTHDAY$)?><td width="32"></td><?endif?> <?if($_IS_ACTIVITY$)?><td width="20"></td><?endif?> В общем помогите подправить так, что бы за 1 ранг дабличка заливалась на 1 процент, за 2 ранга на 2 процента и так до 100. Что бы на 100 ранга табличка была полностью залита А начиная с 101 начиналась заливаться с начала по верх того но другим цветом. Плиз хелп | | |
|
| Infamous | Отредактировал Infamous - Среда, 14 Июля 2010, 17:11 Дата: 14 Июля 2010, 17:10 | Сообщение # 2 |  ● ● ● ● ● 1670 сообщений Статус: Offline | Code <div style="width: 100px; height: 10px; border: 1px solid black;"> <div style="width: $_REPUTATION$px; height: 10px; background: #555;"> </div> </div> | | |
|
| cucYa | Дата: 14 Июля 2010, 17:26 | Сообщение # 3 |  ● ● ● ● ● Совращенный мальчик.7317 сообщений Статус: Offline | Лучше задать произвольное значение для максимальной репутации, допустим 1000, и получать процент от числа. | | |
|
| B-Rozzy | Дата: 14 Июля 2010, 17:48 | Сообщение # 4 |  ● ● ● ● ● 259 сообщений Статус: Offline | Hak,ху*ь вы делаете люди-то(простите за выражение). ну что фантазии не хватает,все срисовать,слизать,списать,стянуть,РИПАНУТЬ(как бесит это слово) надо? чуть-чуть фантазии подключить и все получиться... все-равно ваши эти говно-контакты не получаться... я не отрицаю что и у контакта идея слизана с фэйсбука,но там,как минимум,умные люди сидять...которые хоть идеи кач-венно воруют...не то что вы) удаляйтте сайты идите работайте или учитесь..без б  | | |
|
| Hak | Дата: 14 Июля 2010, 18:05 | Сообщение # 5 |  ● ● ● ● ● 489 сообщений Статус: Offline | B-Rozzy, та ну я ж не делаю второй контакт. Просто нужно сделать рейтинг пользователям. А такой как в контакте довольно таки хороший) Infamous, Спасибо за скрипт , отлично. Только не ещё кое что нужно смотри. По пикселям не совсем то. Ибо у меня ширина таблички под дизайн 155 px. И что бы её всю заполнить нужно рейтинга 155 А мне нужно что бы вся табличка в ширину 155 px заполнялась за 100 голосов. Может как то так сделать: Code
<div style="width: 155px; height: 17px; border: 1px solid black;"> <div style="width: <?$_COM_ENTRIES$px * 1.55 ?>; height: 17px; background: #555;"> </div> </div>
Где: $_REPUTATION$px меняем на <?$_COM_ENTRIES$px * 1.55 ?> Получается людая цыфра в рейтинге умножается на 1.55 И того если 100 голосов будет равны 155 px Только чёт эта система не работает, значит где то я допустил ошибку. И ещё, ну вот дошла полоска до 100 процентов (100% = 100 голосов) Как сделать что бы начиная со 101 голоса шёл новый слой ? | | |
|
| MegaFill | Дата: 14 Июля 2010, 18:06 | Сообщение # 6 |  ● ● ● ● ● 1588 сообщений Статус: Offline | И это сказал человек с http://ololo.name/  Добавлено (14 Июль 2010, 18:06) ---------------------------------------------
Простите, но что вы за хуйню пишите <?$_COM_ENTRIES$px * 1.55 ?> | | |
|
| Hak | Дата: 14 Июля 2010, 18:12 | Сообщение # 7 |  ● ● ● ● ● 489 сообщений Статус: Offline | Простите, но что вы за хуйню пишите <?$_COM_ENTRIES$px * 1.55 ?> Ну я таким методом складывал числа репутации и количества комментов Code <?$_COM_ENTRIES$ + $_REPUTATION$?> а тут в место плюса влепил знак умножения) Code <?$_COM_ENTRIES$px * 1.55 ?> | | |
|
| Infamous | Дата: 14 Июля 2010, 18:18 | Сообщение # 8 |  ● ● ● ● ● 1670 сообщений Статус: Offline | Code <?$_COM_ENTRIES$ * 1.55 ?>px | | |
|
| CrazyFENIX | Дата: 14 Июля 2010, 18:20 | Сообщение # 9 |  ● ● ● ● ● 299 сообщений Статус: Offline | <?$_COM_ENTRIES$px * 1.55 ?> <?$_COM_ENTRIES$*1.55?>px ?? O___________o | | |
|
| Hak | Дата: 14 Июля 2010, 18:21 | Сообщение # 10 |  ● ● ● ● ● 489 сообщений Статус: Offline | Infamous, о, точняк, спасиб. Ну и последние кто подскажет, как после 100 голосов начать новый слой таблички к, примеру от 101 голоса до 500 голоса. | | |
|
| cucYa | Дата: 14 Июля 2010, 18:30 | Сообщение # 11 |  ● ● ● ● ● Совращенный мальчик.7317 сообщений Статус: Offline | | | |
|
| Hak | Дата: 14 Июля 2010, 18:35 | Сообщение # 12 |  ● ● ● ● ● 489 сообщений Статус: Offline | Ну допустим сделал я так: Code <?if($_REPUTATION$)?> <div style="width: 100px; height: 10px; border: 1px solid black;"> <div style="width: $_REPUTATION$ * 1.55 ?>px; height: 10px; background: #555;">
<?else?> <div style="width: 100px; height: 10px; border: 1px solid black;"> <div style="width: $_REPUTATION$ * 1.55 ?>px; height: 10px; background: #ffd500;"> </div> </div> <?endif?> А где мне ограничения прописать что первая табличка показывается от 0до100 а вторая от 101 до 200 ? | | |
|
| cucYa | Дата: 14 Июля 2010, 18:36 | Сообщение # 13 |  ● ● ● ● ● Совращенный мальчик.7317 сообщений Статус: Offline | Code <?if($_REPUTATION$ > 100)?>  | | |
|
| Infamous | Отредактировал Infamous - Среда, 14 Июля 2010, 18:37 Дата: 14 Июля 2010, 18:37 | Сообщение # 14 |  ● ● ● ● ● 1670 сообщений Статус: Offline | Code <div style="width: 155px; height: 17px; border: 1px solid black;"> <div style="width: <?$_COM_ENTRIES$ * 1.55?>px; height: 17px; background: #555;"> </div> <?if($_COM_ENTRIES$ > 100)?> <div style="width: <?$_COM_ENTRIES$ * (500 / 1.55)?>px; height: 17px; background: #333; margin-top: -17px"> </div> <?endif?> </div> | | |
|
| kydapodatsya | Дата: 14 Июля 2010, 18:38 | Сообщение # 15 |  ● ● ● ● ● Дизайнер 2557 сообщений Статус: Offline | Infamous , я думаю он имел в виду, как вконтакте новую табличку на старом месте другого цвета) | | |
|
| Infamous | Дата: 14 Июля 2010, 18:39 | Сообщение # 16 |  ● ● ● ● ● 1670 сообщений Статус: Offline | А я что дал? | | |
|
| kydapodatsya | Дата: 14 Июля 2010, 18:39 | Сообщение # 17 |  ● ● ● ● ● Дизайнер 2557 сообщений Статус: Offline | Infamous,/egc// маргин не заметил  | | |
|
| B-Rozzy | Дата: 14 Июля 2010, 18:44 | Сообщение # 18 |  ● ● ● ● ● 259 сообщений Статус: Offline | MegaFill, это же не мой сайт :D)Добавлено (14 Июль 2010, 18:44) --------------------------------------------- хотя,этот сайт не плагиатит ничего) | | |
|
| Hak | Дата: 14 Июля 2010, 18:54 | Сообщение # 19 |  ● ● ● ● ● 489 сообщений Статус: Offline | Code <div style="width: 155px; height: 17px; border: 1px solid black;"> <div style="width: <?$_COM_ENTRIES$ * 1.55?>px; height: 17px; background: #555;"> </div> <?if($_COM_ENTRIES$ > 100)?> <div style="width: <?$_COM_ENTRIES$ * (500 / 1.55)?>px; height: 17px; background: #333; margin-top: -17px"> </div> <?endif?> </div> Так не получается(( заполнение тупо начинает вылазить за рамки таблицы и всё. Добавлено (14 Июль 2010, 18:54) --------------------------------------------- точнее за рамки таблицы начинает выходить первый слой | | |
|
| Infamous | Дата: 14 Июля 2010, 18:55 | Сообщение # 20 |  ● ● ● ● ● 1670 сообщений Статус: Offline | К сведению: это DIV, а не таблица. Но крутым веб-мастерам вроде тебя не нужно уметь их различать. Я видимо с коэффициентом тупанул, вместо 500 / 1.55 надо написать 0.31 | | |
|