<?php /** * @link: http://www.Awcore.com/dev/2/2/jquery-dynamic-poll-with-animated-colors_en */ function get_poll($id){ $query = mysql_query("SELECT * FROM `polls` WHERE `poll_id` = '$id'"); return mysql_fetch_array($query, MYSQL_ASSOC ); } function poll_options($poll_id){ $query = mysql_query("SELECT x . * , z.rates FROM poll_options x LEFT JOIN (SELECT option_id, COUNT( id ) AS `rates` FROM poll_votes GROUP BY option_id) z ON x.id = z.option_id where x.poll_id = '$poll_id' ORDER BY x.id asc"); $total = total_votes($poll_id); while( $row = mysql_fetch_array( $query, MYSQL_ASSOC ) ){ $row['percent'] = @round((($row['rates'] / $total) * 100),1); $list[] = $row; } return $list; } function results($poll_id){ foreach (poll_options($poll_id) as $value) { $list[$value['id']] = $value['percent']; } return $list; } function total_votes($poll_id){ $query = mysql_query("SELECT sum(z.rates) as total FROM poll_options x JOIN (SELECT option_id, COUNT( id ) AS `rates` FROM poll_votes GROUP BY option_id) z ON x.id = z.option_id where x.poll_id = '$poll_id'"); $row = mysql_fetch_array( $query, MYSQL_ASSOC ); return $row['total']; } function get_votes($poll_id){ $query = mysql_query("SELECT * FROM `poll_votes` where `poll_id` = '$poll_id' and `ip` = '{$_SERVER["REMOTE_ADDR"]}'"); $row = mysql_fetch_array( $query ); if($row or isset($_COOKIE['p_'.$poll_id])){ return $row; }else{ return false; } } function add_vote($option_id,$poll_id){ $row = get_votes($poll_id); if(!$row){ mysql_query("INSERT INTO `poll_votes` (`poll_id` ,`option_id` ,`ip`) VALUES ( '$poll_id','$option_id', '{$_SERVER["REMOTE_ADDR"]}')"); }else{ mysql_query("UPDATE `poll_votes` set `option_id` = '$option_id' where `id` = '{$row['id']}'"); } } ?>