Топ голосующих. - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Движки сайтов (CMS)

Движки сайтов (CMS)
Обсуждения, решения проблем веб обвязок для ява сервера.

Ответ
Опции темы
Непрочитано 09.03.2009, 01:38   #1
Аватар для Evil-Soft
Пользователь

Автор темы (Топик Стартер) Топ голосующих.

Нужен скрипт для топа голосующих вот SQL каторый в бд мб есть к нему у кого скрипт плиз выложите если нетрудно =)
Код:
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for l2vote
-- ----------------------------
CREATE TABLE `l2vote` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(200) character set utf8 collate utf8_bin default NULL,
  `ip` varchar(25) character set utf8 collate utf8_bin NOT NULL default '',
  `date` varchar(255) NOT NULL default '0000-00-00',
  `status` varchar(255) character set utf8 collate utf8_bin NOT NULL default '',
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=51 DEFAULT CHARSET=latin1;

-- ----------------------------
-- Records 
-- ----------------------------
Evil-Soft вне форума Отправить сообщение для Evil-Soft с помощью ICQ Отправить сообщение для Evil-Soft с помощью Skype™ Ответить с цитированием
Непрочитано 09.03.2009, 03:55   #2
Аватар для PROGRAMMATOR
Администратор

По умолчанию Ответ: Топ голосующих.

А каким образом рассчитывается "ТОП"? Интересует так же что за колонка "status", то есть что в нее пишется после того как участник проголосует, если там количество голосов за все время, то это нормально, а если нет, то каким образом делать рейтинг?

Добавлено через 8 часов 30 минут
Ответа я так понял не дождусь... Ну да ладно, написал такой модуль, выводит последних проголосовавших в рейтинге. Количество проголосовавших регулируйте LIMIT'ом, на данный момент стоит вывод 10-ти участников, так же для гламура добавил всплывающую подсказку над ником, с IP-Адресом.

PHP код:
<?

/*
> Автор: Мостовой Юрий
> Адрес: http://zone-game.info/
*/

// Конфиг подключения к базе данных
$CONFIG['dbaddress'] = "localhost"// Хост, по умолчанию localhost
$CONFIG['dbuser']    = " -- ";      // Логин к базе данных
$CONFIG['dbpass']     = " -- ";    // Пароль к базе данных
$CONFIG['dbname']     = " -- ";     // База данных

$cont=mysql_connect($CONFIG['dbaddress'],$CONFIG['dbuser'],$CONFIG['dbpass'])or die("Could not connect");
mysql_select_db($CONFIG['dbname'],$cont);
$res mysql_query("SELECT name, ip FROM l2vote ORDER BY date DESC LIMIT 10",$cont);
$i 1;
$html .= "
<div align=\"center\">
     <table border=\"0\">
         <tr>
               <td width=\"20\" align=\"left\"><font size = \"2\">№</font></td>
               <td width=\"100\" align=\"center\"><font size = \"2\">Имя игрока</font></td>
         </tr>
     </table>
</div>"
;

while(
$row=mysql_fetch_row($res)){

$name $row[0];
$ip $row[1];

$html .= "
<div align=\"center\">
     <table border=\"0\">
         <tr>
               <td width=\"20\" align=\"left\"><font size = \"2\">
{$i}</font></td>
               <td width=\"100\" align=\"center\"><font size = \"2\"><abbr title=\"IP-Адрес: 
{$ip}\">{$name}</abbr></font></td>
         </tr>
     </table>
</div>"
;
$i++;
}

echo 
$html;

mysql_close($cont);

?>
__________________
composer require laravel/framework
yarn add vue

Последний раз редактировалось PROGRAMMATOR; 09.03.2009 в 12:25. Причина: Добавлено сообщение
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 10.03.2009, 17:49   #3
Аватар для Evil-Soft
Пользователь

Автор темы (Топик Стартер) Ответ: Топ голосующих.

Спасибо ) Скрипт неплохой но я думаю многим пригодится скрипт показывающий топ 10 с никами и количеством голосов еще и на каком месте персонаж по голосам =)
Evil-Soft вне форума Отправить сообщение для Evil-Soft с помощью ICQ Отправить сообщение для Evil-Soft с помощью Skype™ Ответить с цитированием
Непрочитано 10.03.2009, 18:30   #4
Аватар для PROGRAMMATOR
Администратор

По умолчанию Ответ: Топ голосующих.

Во-первых в задании этого не было, во-вторых это не нужно править сам скрипт голосования или как там его. Он же дает какой то предмет после голосования? Если да, то все просто, после передачи предмета, вписать запрос, который будет в таблицу добавлять +1 и создать новую колонку в таблице l2vote, например totall_vote в которую и будут вписываться эти +1, а дальше все просто, сравниваем Nik голосующего и если это он, приплюсовываем голос ему. Все, пищи вам хватит, тренируйтесь!
__________________
composer require laravel/framework
yarn add vue
PROGRAMMATOR вне форума Отправить сообщение для PROGRAMMATOR с помощью ICQ Отправить сообщение для PROGRAMMATOR с помощью Skype™ Ответить с цитированием
Непрочитано 10.03.2009, 18:45   #5
Аватар для Evil-Soft
Пользователь

Автор темы (Топик Стартер) Ответ: Топ голосующих.

Цитата:
Сообщение от PROGRAMMATOR Посмотреть сообщение
Во-первых в задании этого не было, во-вторых это не нужно править сам скрипт голосования или как там его. Он же дает какой то предмет после голосования? Если да, то все просто, после передачи предмета, вписать запрос, который будет в таблицу добавлять +1 и создать новую колонку в таблице l2vote, например totall_vote в которую и будут вписываться эти +1, а дальше все просто, сравниваем Nik голосующего и если это он, приплюсовываем голос ему. Все, пищи вам хватит, тренируйтесь!
Я балбес мне это неочем не говорит )
Evil-Soft вне форума Отправить сообщение для Evil-Soft с помощью ICQ Отправить сообщение для Evil-Soft с помощью Skype™ Ответить с цитированием
Непрочитано 17.04.2009, 13:18   #6
Аватар для Evil-Soft
Пользователь

Автор темы (Топик Стартер) Ответ: Топ голосующих.

Скрипт я надыбал

в файле parce.php после
Код:
add2log('Новый проголосовавший игрок добавлен в таблицу на ожидание передачи приза...('.$url[$i].')');
mysql_query('insert into l2vote (id,ip,name,date,status) values ("'.$maxid.'","'.$ip[$i].'","'.$nickname[$i].'","'.$mydate[$i].'","no")',$my_auth);
вставляешь следующий код
Код:
if (!empty($nickname[$i]))
{
   $queryX=mysql_query("SELECT COUNT(*) FROM vote_top WHERE nick='$nickname[$i]'",$my_auth);
   $resX=mysql_fetch_array($queryX);
   if ($resX[0] > 0)
   {
      mysql_query("UPDATE vote_top SET count=count+1",$my_auth);
   }
   else
   {
      mysql_query("INSERT INTO vote_top VALUES ('$nickname[$i]',1)",$my_auth);
   }
}
в БД, заливаешь файл со следующим содержанием... тупо все что было в дампе)
Код:
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for vote_top
-- ----------------------------
DROP TABLE IF EXISTS `vote_top`;
CREATE TABLE `vote_top` (
  `nick` varchar(30) character set utf8 collate utf8_bin default NULL,
  `count` int(5) NOT NULL default '0'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

-- ----------------------------
-- Records 
-- ----------------------------
Для вывода на сайте топ20:
Код:
$queryY=mysql_query("SELECT * FROM vote_top ORDER BY count DESC LIMIT 20", $my_auth);
while($resY = mysql_fetch_array($queryY))
{
   $str = "$resY[0] - $resY[1] голоса(ов)";
   echo "$str";
}
только вот то что я выдилил жирным шрифтом туда чтото нужно дописать и потом добавить в модуль ? или тут еще чегото нехватает ??
Evil-Soft вне форума Отправить сообщение для Evil-Soft с помощью ICQ Отправить сообщение для Evil-Soft с помощью Skype™ Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 09:00. Часовой пояс GMT +3.

Вверх