0
我有基於IP的投票代碼,但問題是當我從我的電腦投票(使用相同的網絡連接到互聯網)我不能!如何解決基於IP的投票?
下面是代碼:
global $wpdb;
$post_ID = $_POST['id'];
$ip = $_SERVER['REMOTE_ADDR'];
$irt_textOnclick = get_option('irt_textOnclick');
$recommend = get_post_meta($post_ID, '_recommended', true);
if($post_ID != '') {
$voteStatusByIp = $wpdb->get_var("SELECT COUNT(*) FROM ".$wpdb->prefix."irecommendthis_votes WHERE post_id = '$post_ID' AND ip = '$ip'");
if (!isset($_COOKIE['recommended-'.$post_ID]) && $voteStatusByIp == 0) {
$recommendNew = $recommend + 1;
update_post_meta($post_ID, '_recommended', $recommendNew);
setcookie('recommended-'.$post_ID, time(), time()+3600*24*365, '/');
$wpdb->query("INSERT INTO ".$wpdb->prefix."irecommendthis_votes VALUES ('', NOW(), '$post_ID', '$ip')");
$return_text = $recommendNew . ' ' . $irt_textOnclick;
echo $return_text; //$recommendNew; //
}
else {
$return_text = $recommend . ' ' . $irt_textOnclick;
echo $return_text; //$recommendNew; //
}
}
你的IP可能每次都是一樣的,而你的腳本只允許每IP一個投票...檢查你的IP的'irecommendthis_votes'表。 –
你爲什麼不能?你有錯誤嗎?你在代理服務器後面嗎?您需要提供有關問題的更多信息。 – j08691
我認爲這裏的問題是,在同一個網絡上的其他計算機不能投票,因爲他們使用相同的公共IP地址 –