PHP投票 每天只能投票一次

目前為止還沒(méi)有一種方法能完全避免網(wǎng)上重復(fù)投票
如果記錄ip,一般ADSL斷網(wǎng)再連ip就變了設(shè)置cookie,瀏覽器都有禁用或者清除cookie的功能設(shè)置session,關(guān)閉瀏覽器就沒(méi)了所以,我們只能盡量防止重復(fù)投票現(xiàn)象

PHP投票 24小時(shí)內(nèi)只能投票一次

session_start();//獲取ip地址
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$cip = $_SERVER["HTTP_CLIENT_IP"];
}
if(($_COOKIE['VoteIP']==$cip) or ($_SESSION['VoteIP']==$cip)){
//拒絕投票
}
//記錄到cookie中
SetCookie("VoteIP", $cip, time()+3600*24);//3600秒=1小時(shí) 過(guò)期時(shí)間為24小時(shí)

//記錄到session中
$_SESSION['VoteIP']=$cip;

//設(shè)置session存活時(shí)間
$lifeTime = 24 * 3600; 
session_set_cookie_params($lifeTime);

PHP投票 每天投票一次

if(!empty($_SERVER["HTTP_CLIENT_IP"])){
  $cip = $_SERVER["HTTP_CLIENT_IP"];
}
//獲取當(dāng)前時(shí)間
$date=date('y:m:d');
//以數(shù)組形式存入session
$info = array('ip'=>$cip,'time'=>$date);
//取出
$_SESSION['voteip'] = $info;
$arr = $_SESSION['voteip'];
//取出儲(chǔ)存的日期
$t1 = strtotime($arr['time']);
//取出當(dāng)前日期
$t2 = strtotime(date('y:m:d'));
//計(jì)算當(dāng)前相差天數(shù)
$t = $t2 - $t1;
echo (int)($t / 86400);
//判斷是否大于一天
if($t>=1){
//允許投票
}else{
//拒絕
}
?>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容