用php写一个在线投票程序,这段代码是用户投票的,但是只能投一票就死掉了,我希望每副作品都能投一票

<?session_set_cookie_params(86400);session_start();if(session_is_registered("tp")){ec... <?
session_set_cookie_params(86400);
session_start();

if (session_is_registered("tp"))
{
echo "<script>alert('您已经投过票了哦^_^');location='index.php';</script>";
exit;
}
else
{

$tp="ok";
session_register("tp");

}
require_once("sys_conf.inc");
$link_id=mysql_connect($DBHOST,$DBUSER,$DBPWD);
mysql_select_db($DBNAME);
mysql_query("SET NAMES 'GBK'");
$sql="update photo set p=p+1 where id=".$_GET["id"];
mysql_query($sql);
echo "<script>alert('投票成功');location='index.php';</script>";

?>
有没哪位高手帮忙修改一下,非常感谢啊~~
展开
 我来答
windblast
2012-04-11 · 知道合伙人软件行家
windblast
知道合伙人软件行家
采纳数:5633 获赞数:13623
毕业于空军第一航空学院电子专业,1991年开始接触电脑,从事多年计算机编程,具有较丰富的经验。

向TA提问 私信TA
展开全部
“一个用户每天对同一个作品只能投一票,能投的作品数量不限制。”

如果要达到这样的效果,你需要$_GET["id"] 与 Session联系起来,就是说,需要对于每个作品设置一个session变量。大概代码如下:

<?
session_set_cookie_params(86400);
session_start();

if (session_is_registered("tp_".$_GET['id'])) { //此处修改为tp_id
echo "<script>alert('您已经投过票了哦^_^');location='index.php';</script>";
exit;
} else {
$tp = "ok";
session_register("tp_".$_GET['id']);//此处修改为tp_id
}

require_once ("sys_conf.inc");
$link_id = mysql_connect($DBHOST, $DBUSER, $DBPWD);
mysql_select_db($DBNAME);
mysql_query("SET NAMES 'GBK'");
$sql = "update photo set p=p+1 where id=" . $_GET["id"];
mysql_query($sql);
echo "<script>alert('投票成功');location='index.php';</script>";
?>
坦率且灵敏的国宝O
2012-04-11 · 超过21用户采纳过TA的回答
知道答主
回答量:109
采纳率:100%
帮助的人:33.9万
展开全部
你用session来做判断,投一次就有值了 要多投的话 用其他方法吧;OK
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
日出之心浪人
2012-04-11 · TA获得超过414个赞
知道小有建树答主
回答量:236
采纳率:0%
帮助的人:131万
展开全部
页面结构呢?
为什么死掉,你提交了一次?没有正确连接数据库?
追问
不是死掉,只是只能投一票,因为参赛作品很多,不能只限于一个作品投一票,可以限制为一个用户每天对同一个作品只能投一票,能投的作品数量不限制。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式