include_once("server1.server.php"); #servidor para XAJAX
$xajax->printJavascript();
?>
global $db;
$poll = $db->getRow("select * from TBL_POLL order by poll_id desc limit 1");
$poll_id = $poll["poll_id"];
$pollitems = $db->getAll("select * from TBL_POLLITEM where poll_id=$poll_id");
?>
服务器端
function poll($formData){
global $db;
$tmp="";
$objResponse = new xajaxResponse();
$poll_id = $formData['poll_id'];
$pollitem_id = $formData['pollitem'];
if($pollitem_id > 0 && $poll_id > 0) {
$db->query("update ".TBL_POLLITEM." set count=count+1 where pollitem_id = $pollitem_id");
}
$poll = $db->getRow("select * from TBL_POLL where poll_id = $poll_id");
$pollitems = $db->getAll("select * from TBL_POLLITEM where poll_id=$poll_id");
$tmp .="
";
for ($i = 0, $count = count($pollitems); $i < $count; $i++) {
$tmp .="
}
$tmp .="
$objResponse->addAssign("pollresult","innerHTML",$tmp);
return $objResponse->getXML();
}
数据库的表如下
CREATE TABLE TBL_POLL (
poll_id int(11) unsigned NOT NULL default '0',
title varchar(100) NOT NULL default '',
created_date bigint(20) unsigned NOT NULL default '0',
user_id int(11) unsigned NOT NULL default '0',
PRIMARY KEY (poll_id)
) TYPE=MyISAM;
CREATE TABLE TBL_POLLITEM (
pollitem_id int(11) unsigned NOT NULL default '0',
poll_id int(11) unsigned NOT NULL default '0',
content varchar(100) NOT NULL default '',
count int(11) unsigned NOT NULL default '0',
PRIMARY KEY (pollitem_id)
) TYPE=MyISAM;
这个例子中,调查的选项只在页面装载时读出,投票后在原地显示最新的投票信息。不需要弹出窗口
Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=514436
本文介绍了一个简单的投票系统的实现方法,包括前端展示、用户投票及后端处理等功能。通过PHP与MySQL结合,实现了投票选项的动态加载与实时更新结果。
1990

被折叠的 条评论
为什么被折叠?



