从cookie投票5次

时间:2014-10-10 07:25:32

标签: php mysql

我需要允许cookie投票5次。将IP设置为DB我无法做到,因为人们坐在网络中,具有相同的远程地址。

有一次我这样检查:

if( $dif_cookies == 1 ) //from DB
        if($_COOKIE["m_questioning3-$external_id"] == $external_id) {
            $q_show_status = 3;   
        } 

但我需要允许5次,怎么样?谢谢

2 个答案:

答案 0 :(得分:0)

亲爱的哈罗达斯,

    if(!isset($_COOKIE["m_questioning3-$external_id"])){
          $_COOKIE["m_questioning3-$external_id"]["count"] = 1;
    }else{
          $_COOKIE["m_questioning3-$external_id"]["count"]++;
    }

    if($_COOKIE["m_questioning3-$external_id"]["count"]<=5){
          your work
    }

它会起作用。请检查一下。

答案 1 :(得分:0)

感谢您的帮助,但我自己找到了解决方案:

我在投票提交后发送帖子并设置cookie:

if (isset($_COOKIE["m_questioning3-$form_id"])) {
    if ($_COOKIE["m_questioning3-$form_id"] <= 5)
        setcookie("m_questioning3-$form_id", (int)$_COOKIE["m_questioning3-$form_id"]+1);
} else {
    setcookie("m_questioning3-$form_id", 1);
}

以形式检查cookie值:

if ( $dif_cookies == 1 )
    if($_COOKIE["m_questioning3-$external_id"] >= 5) {
        $q_show_status = 3;  
} else {           
    switch ($q_form_type) {
        //... bla bla bla ...
}