cosmos
Профессор
- Регистрация
- 26 Ноя 2006
- Сообщения
- 129
- Реакции
- 38
- Автор темы
- #1
Может кому-то и понадобится
Как устанавливать:
1. Создаем файл votelist.php и кидаем его в /engine/modules/
с таким кодом
	
	
	
		
2. Создаем файл votelist.tpl (в шаблоне) с кодом
	
	
	
		
Либо меняем на ваш.
3. в файле /engine/engine.php
после
	
	
	
		
вставляем
	
	
	
		
4. если хотим то в .htaccess в корне пишем после RewriteEngine On
	
	
	
		
Все мод готов проверить как он работает вы можете проверить так: Для просмотра ссылки Войди или  Зарегистрируйся или Для просмотра ссылки Войди или  Зарегистрируйся
	
		
			
		
		
	
				
			Как устанавливать:
1. Создаем файл votelist.php и кидаем его в /engine/modules/
с таким кодом
		PHP:
	
	<?php
if(!defined('DATALIFEENGINE'))
{
  die("Hacking attempt!");
}
$vote_info = get_vars ("vote");
      $vote_info = array ();
    $db->query("SELECT id, title, category, body, vote_num, approve FROM " . PREFIX . "_vote");  
    while($row = $db->get_row()){
        $vote_info[$row['id']] = array (
        'id'        => $row['id'],
        'title'     => $row['title'],
        'category'     => $row['category'],
        'body'         => $row['body'],
        'vote_num'  => $row['vote_num'],
        'approve'   => $row['approve'],
        );
    }
    $db->free();
    foreach ($vote_info as $votes) {
        $title = stripslashes($votes['title']);
        $body  = stripslashes($votes['body']);
        $body  = explode("<br />", $body);
        $max   = $votes['vote_num'];
        $rid   = $votes['id'];
        $db->query("SELECT answer, count(*) as count FROM ".PREFIX."_vote_result WHERE vote_id='$rid' GROUP BY answer");
        $flag = 1;
        $pn = 0;
        $answer = array ();
        while ($row = $db->get_row()) {
            $answer[$row['answer']]['count']  = $row['count'];
        }
        $db->free();
$entry = "";
    for ($i = 0; $i < sizeof($body); $i++) {
     ++$pn; if ($pn > 5) $pn = 1;
     $num = $answer[$i]['count'];
     if (!$num) $num = 0;
     if ($max != 0)
     $proc = (100 * $num) / $max;
     else $proc = 0;
     $proc = round($proc, 0);
     $entry .=
     "<div class="vote" align="left">$body[$i] - $num ($proc%)</div>
      <div class="vote" align="left">
        <img src="{$config['http_home_url']}templates/{$vote_skin}/dleimages/poll{$pn}.gif" height="10" width="$proc%" style="border:1px solid black">
      </div>n";
     }
     $entry = "<div id="dle-vote">$entry</div>";
     $tpl->load_template('votelist.tpl');
     $tpl->set('{list}', $entry);
     $tpl->set('{vote_id}', $rid);
     $tpl->set('{title}', $title);
     $tpl->set('{votes}', $max);
     $tpl->set('[voteresult]','');
     $tpl->set('[/voteresult]','');
    $tpl->compile('content');
    }
     $tpl->clear();
?>
		PHP:
	
	          <table width="100%" class="title"><tr><td>{title}</td></tr><tr><td height=5></td></tr></table>
          {list}
          <table width="100%" class="slink">
          <tr><td height=10></td></tr>
          <tr><td>Всего проголосовало: {votes}</td></tr></table><br><br>3. в файле /engine/engine.php
после
		PHP:
	
	  case "pm" :
        include ENGINE_DIR.'/modules/pm.php';
        break;
		PHP:
	
	case "votelist" :
        include ENGINE_DIR.'/modules/votelist.php';
        break;
		PHP:
	
	RewriteRule ^votelist/(.*)$ index.php?do=votelist&$1 [L] 
				
 
 
		![h0ttab[sun]](/data/avatars/m/32/32933.jpg?1322997401) 
 
		 
 
		
 
 
		 а существует ли способ вывести список или блоки опросов которые открыты для голосования в "активном" режиме? (с возможностью отдать голос)
 а существует ли способ вывести список или блоки опросов которые открыты для голосования в "активном" режиме? (с возможностью отдать голос)