//检查文件是否存在,若不存在则新建并初始化
if (!file_exists("title.txt")) {
print("找不到文件!");
exit;
}
else $title=file("title.txt");
if (!file_exists("data.txt")) {
$initfile=fopen("data.txt","w");
for ($index=0;$index<count($title)+1;$index++) {
fputs($initfile,"0\r\n");
}
fclose($initfile);
}
//将文件读入矩阵
$data=file("data.txt");
//锁住文件,防止其他进程打开
$myfile=fopen("data.txt","r");
flock($myfile,"3");
//将矩阵类型转化为整型
for ($index=0;$index<count($data)-1;$index++) {
$data[$index]+=0;
}
if ($result!=1) {
//检测投票者的IP
$remote_addr=getenv("REMOTE_ADDR");
//根据IP防止重复投票
//投票项加1
if ($data[count($data)-1]!=$remote_addr) {
$data[$test]+=1;
}
else {
print("<font style=\"font-family: 宋体; font-size: 9pt\">对不起!您已经投过票了...</font>");
exit;
}
//将结果重新写入文件
$mynewfile=fopen("data.txt","w");
for ($index=0;$index<count($data)-1;$index++) {
fputs($mynewfile,"$data[$index]\r\n");
}
//将最近一次投票的IP写入文件末尾
fputs($mynewfile,"$remote_addr");
fclose($mynewfile);
}
//投票总数
for ($index=0;$index<count($data)-1;$index++) {
$total+=$data[$index];
}
//显示结果
$colors=array("#0099cc","#cc3300","#ff9900","#996699","#000000","#99cc00");
print("<style type=\"TEXT/CSS\">table { font-family: 宋体; font-size: 9pt; color:#000000}</style>");
for ($index=0;$index<count($data)-1;$index++) {
$len=intval(count($title)*100*($data[$index]/$total));
$per=intval(1000*($data[$index]/$total))/10;
print("<table cellpadding=0 cellspacing=0>\n");
print("<tr><td width=30 align=left>\n");
print($data[$index]);
print("</td>\n");
print("<td bgcolor=$colors[$index] width=$len></td>\n");
print("<td>$per%</td></tr>\n");
print("<tr><td colspan=2 height=1></td></tr></table>\n");
}
print("<br>");
for ($index=0;$index<count($data)-1;$index++) {
print("<table cellpadding=0 cellspacing=0>\n");
print("<tr><td width=15 bgcolor=$colors[$index]></td><td width=5></td><td>$title[$index]</td></tr>\n");
print("<tr><td colspan=4 height=2></td></tr></table>");
}
?>