<?
include_once("./_common.php");

$po = sql_fetch(" select * from $g4[poll_table] where po_id = '$_POST[po_id]' ");
if (!$po[po_id]) 
    alert_close("po_id 数据传输出错！");

if ($member[mb_level] < $po[po_level]) 
    alert_close("只有等级$po[po_level]以上才能参与投票！");

// 如果没有投票编号
if (get_cookie("ck_po_id") != $po[po_id]) 
{
    // 超找曾经投票的ip
    $search_ip = false;
    $ips = explode("\n", trim($po[po_ips]));
    for ($i=0; $i<count($ips); $i++) 
    {
        if ($_SERVER[REMOTE_ADDR] == trim($ips[$i])) 
        {
            $search_ip = true;
            break;
        }
    }

    // 查找已投票的id
    $search_mb_id = false;
    if ($is_member)
    {
        $ids = explode("\n", trim($po[mb_ids]));
        for ($i=0; $i<count($ids); $i++) 
        {
            if ($member[mb_id] == trim($ids[$i])) 
            {
                $search_mb_id = true;
                break;
            }
        }
    }

    // 如果没有就继续下一步
    if (!($search_ip || $search_mb_id)) 
    {
        $po_ips = $po[po_ips] . $_SERVER[REMOTE_ADDR] . "\n";
        $mb_ids = $po[mb_ids];
        if ($member[mb_id])
            $mb_ids .= $member[mb_id] . "\n";
        sql_query(" update $g4[poll_table] set po_cnt{$gb_poll} = po_cnt{$gb_poll} + 1, po_ips = '$po_ips', mb_ids = '$mb_ids' where po_id = '$po_id' ");
    }

    if (!$search_mb_id)
        insert_point($member[mb_id], $po[po_point], $po[po_id] . ". " . cut_str($po[po_subject],20) . "参与投票", "@poll", $po[po_id], "投票");
}

set_cookie("ck_po_id", $po[po_id], 86400 * 15); // 保存缓存15天

goto_url("/bbs/poll_result.php?po_id=$po_id&skin_dir=$skin_dir");
?>
