为什么红色部分怎么也获取不到,其它的地方都能正常获取到!
global $fdyu,$db;
$tp_id = intval($_GET['tp_id']);
$hd_id = intval($_GET['hd_id']);
$all_toupiao = $_GET['all_toupiao'];
$tp_star_time = $_GET['tp_star_time'];
$tp_end_time = $_GET['tp_end_time'];
$ajax = array();
if(strtotime(date('Y-m-d H:i:s',time()))>strtotime($tp_end_time))
{
$ajax['record']['all_tp'] = 3;
echo json_encode($ajax);
exit;
}
if(strtotime(date('Y-m-d H:i:s',time()))
$ajax['record']['all_tp'] = 4;
echo json_encode($ajax);
exit;
}
//获取投票次数
$sql_c="select cishu from ".$fdyu->table('cms')." as cms
where cms.cms_id=".$hd_id."";
$row_c = $db->getRow($sql_c,true);
if($row_c['cishu']==0)
{
$cs='';
}
else
{
$cs=" and DATE_FORMAT(add_time,'%Y-%m-%d')='".date('Y-m-d',time())."'";
}
if($all_toupiao==0)
{
//单选提示
$tp_count = $db->getOne("SELECT COUNT(*) FROM ".$fdyu->table('oa_toupiao_xx')." WHERE tp_ip='".$_SERVER["REMOTE_ADDR"]."' and huodong_id=".$hd_id." ".$cs."");
if($tp_count>0)
{
if($row_c['cishu']==0)
{
$ajax['record']['all_tp'] = 1;
}
else
{
$ajax['record']['all_tp'] = 5;
}
echo json_encode($ajax);
exit;
}
}
$tp_count_1 = $db->getOne("SELECT COUNT(*) FROM ".$fdyu->table('oa_toupiao_xx')." WHERE tp_ip='".$_SERVER["REMOTE_ADDR"]."' and huodong_id=".$hd_id." and toupiao_id=".$tp_id." ".$cs."");
if($tp_count_1>0)
{
if($row_c['cishu']==0)
{
$ajax['record']['all_tp'] = 2;
}
else
{
$ajax['record']['all_tp'] = 6;
}
echo json_encode($ajax);
exit;
}
$sql = "update ".$fdyu->table('oa_huodong_toupiao')." set count=count+1
WHERE toupiao_id=".$tp_id;
$db->query($sql);
$field_values = array(
"toupiao_id" => $tp_id,
"huodong_id" => $hd_id,
"tp_ip" => $_SERVER["REMOTE_ADDR"],
"add_user" => $_SESSION['userName'],
"add_time" => date('Y-m-d H:i:s',time())
);
$db->autoExecute($fdyu->table('oa_toupiao_xx'),$field_values);
$sql_t='SELECT count FROM '.$fdyu->table('oa_huodong_toupiao')." where toupiao_id=".$tp_id;
$row_t = $db->getRow($sql_t,true);
if($row_t !== false)
{
$ajax['record']['tp_count'] = $row_t['count'];
$ajax['status']['code'] = '1'; //成功
echo json_encode($ajax);
exit;
回复讨论(解决方案)
漏了一个大括号
if($row_t !== false)
{
$ajax['record']['tp_count'] = $row_t['count'];
}
$.get("/show.php?act=get_toupiao",{
tp_id:tp_id,
all_toupiao:all_toupiao,
hd_id:hd_id,
tp_star_time:tp_star_time,
tp_end_time:tp_end_time,
async:false,
rand: Math.random()
},function(data){
if(data.record.all_tp=="5")
{
alert("今天您已经投票,请明天再投吧!");
return false;
}
if(data.record.all_tp=="6")
{
alert("今天您已经投票,请明天再投吧!");
return false;
}
if(data.record.all_tp=="3")
{
alert("投票时间已过,不能投票");
return false;
}
if(data.record.all_tp=="4")
{
alert("投票时间还没到,不能投票");
return false;
}
if(data.record.all_tp=="1")
{
alert("该活动您已投票,不能重复投票");
return false;
}
if(data.record.all_tp=="2")
{
alert("该项目您已投票,不能重复投票");
return false;
}
if(data.status.code=="1")
{
//成功
$("#tp_"+tp_id+"").empty();
$("#tp_"+tp_id+"").append(""+data.record.tp_count+"");
alert("投票成功!");
return false;
}
},"json");
if(data.status.code=="1")
{
//成功
$("#tp_"+tp_id+"").empty();
$("#tp_"+tp_id+"").append(""+data.record.tp_count+"");
alert("投票成功!");
return false;
}
这里为什么没有提示!
先检查 $sql_t 的内容
toupiao_id name huodong_ID user_id time count
31 张三 62 彭斌 2016-05-09 23:23:27 21
内容好像没问题呀,好奇怪呀!
还有一个问题,我的这个IP,如果是在同一个路由器上的机子,IP都是一样的,导到同一个网络不同的机子只能投一次票,怎么办?
我又发现,QQ浏览器打开的,在同一路由器的不同手机获取到的IP就不一样,其它的浏览器在同一路由路网络不同的手机获取到的IP是一样的
Wifi 接入的, ip 不会是一样的!
流量接入的,ip 应该是一样的
你需要有作为用户识别的唯一标志(通过 cookie 或 url)