📄 ivote.php3
字号:
<?
//############################################################################[LOCK]
function LOCK($db)
{
if(file_exists("./db/$db/lock")) {
sleep(1);
}
$fp = fopen("./db/$db/lock", "w");
fwrite($fp, "");
fclose($fp);
}
function UNLOCK($db)
{
if(file_exists("./db/$db/lock")) {
unlink ("./db/$db/lock");
}
}
//############################################################################[保存意见]
function USER_DATA()
{
global $OPI_CUT,$PHP_SELF,$db,$USER_MSG,$OPI_OPTION,$HTTP_COOKIE_VARS,$REMOTE_ADDR,$HTML;
if(!$USER_MSG || ereg("其它意见", $USER_MSG)) {
$msg = "请输入意见."; ERROR($msg);
}
if($HTTP_COOKIE_VARS[ivote_opi] == $REMOTE_ADDR && $OPI_OPTION == "checked") {
$msg = "意见只能发布一次."; ERROR($msg);
}
$DATE = date("[m-d]");
if($HTML != "checked") {
$USER_MSG = htmlspecialchars($USER_MSG);
}
LOCK($db);
if(!file_exists("./db/$db/usermsg")) {
$fp = fopen("./db/$db/usermsg", "w");
fwrite($fp, "$DATE $USER_MSG\n");
fclose($fp);
}
else {
$V_USER = file("./db/$db/usermsg");
$fp = fopen("./db/$db/usermsg", "w");
fwrite($fp, "$DATE $USER_MSG\n");
while($DATA = each($V_USER)) {
if($i < $OPI_CUT - 1) {
fwrite($fp, "$DATA[1]");
$i++;
}
}
fclose($fp);
}
UNLOCK($db);
setcookie("ivote_opi", "$REMOTE_ADDR", "" , "/");
echo "<html>
<META http-equiv=\"refresh\" content =\"0;url=$PHP_SELF?db=$db&action=view\">
</html>";
exit;
}
//############################################################################[结果页面]
function VIEW_DATA()
{
global $db,$ImgUrl,$PHP_SELF,$OPINION,$TABLE_COLOR,$BGCOLOR,$CELL_COLOR;
global $OPINION_COLOR,$ETC_COLOR,$ETC_BGCOLOR,$ETC_BORDER_COLOR,$CELL_COLOR1,$CUT_NUM;
if(!file_exists("./db/$db/total")) {
$V_MSG = "数据不存在."; ERROR($V_MSG);
}
$TOTAL = file("./db/$db/total");
$TOTAL_NUM = $TOTAL[0];
$VOTE_DATE = file("./db/$db/date");
$V_DATE = $VOTE_DATE[0];
$RECORD = file("./db/$db/record");
$V_NUM = split("\|", $RECORD[0]);
$V_MSG_RECORD = file("./db/$db/msg");
$V_MSG = split("\|", $V_MSG_RECORD[0]);
echo "
<!---------------------------------------------------------------------------
PROGRAM NAME : iVOTE
VERSION : 1.0.0 PHP RELEASE (TEXT FILE SAV
URL : http://www.e0433.com
COPYRIGHT E0433.COM ALL RIGHTS RESERVED.
---------------------------------------------------------------------------->
<HTML>
<HEAD>
<TITLE>调查结果</TITLE>
<STYLE>
A:LINK {text-decoration:none;}
A:VISITED {text-decoration:none;}
V:HOVER {text-decoration:none; hover:red;}
body,p,br,table,tr,td,form,input {font-size:9pt; font-family:宋体;}
</STYLE>
<script language=javascript>
function clearField(field){
if (field.value == field.defaultValue) {
field.value = '';
}
}
function checkField(field){
if (field.value == '') {
field.value = field.defaultValue;
}
}
</script>
</HEAD>
<BODY bgcolor='$BGCOLOR'>
<DIV align=center>
<TABLE BORDER=0 CELLSPACING=1 WIDTH=400>
<tr>
<td align=center><a href=http://www.e0433.com target=_blank>在线调查 - iVOTE 1.0.0</a></td>
</tr>
</TABLE>
<TABLE BORDER=0 CELLSPACING=1 BGCOLOR='$TABLE_COLOR' WIDTH=400>
<TR>
<TD align=right colspan=2> 调查结果
[总投票人数 : <FONT color=red>$TOTAL_NUM</FONT>人 开始日期 $V_DATE]
<A href=javascript:self.close();>关闭
</A>
</TD>
</TR>";
if ( !$TOTAL_NUM ) { $TOTAL_NUM = 1; }
for($i = 0; ($i <= 9) && ($V_MSG[$i]); $i++) {
$x = $i+1;
$percent[$x] = intval($V_NUM[$i]/$TOTAL_NUM*100);
$length[$x] = $percent[$x]*2;
echo "<TR>
<TD width=100 bgcolor='$CELL_COLOR'>
$V_MSG[$i]
</TD>
<TD width=300 bgcolor='$CELL_COLOR1'>
<IMG src=$ImgUrl/$x.gif width=$length[$x] height=5 align=absmiddle>
<FONT color=gray>$V_NUM[$i]人 ($percent[$x]%)</font>
</TD>
</TR>";
}
echo "<TR>
<TD colspan=2 align=right height=20>
<FONT color=gray>
<a href=http://www.e0433.com target=_blank>iVOTE 1.0.0</a>
</FONT>
</TD>
</TR>
</TABLE>
</DIV>";
if($OPINION == "checked") {
echo "<DIV align=center>
<TABLE BORDER=0 CELLSPACING=1 WIDTH=403>
<TR>
<TD>
<FORM METHOD=POST ACTION='$PHP_SELF'>
<INPUT type=hidden name=action value=usermsg>
<INPUT type=hidden name=db value='$db'>
<INPUT type=text name=USER_MSG size=48 MAXLENGTH='$CUT_NUM' class=OPINION onBlur='checkField(this)' onFocus='clearField(this)' value='※ 发表意见 (${CUT_NUM}字以内)'>
<INPUT type=image src=$ImgUrl/serv_button3.gif border=0 align=absmiddle><P>";
if(file_exists("./db/$db/usermsg")) {
echo "<FONT color='$OPINION_COLOR'>
<IMG src=$ImgUrl/line.gif border=0><BR>";
$V_USER = file("./db/$db/usermsg");
while($DATA = each($V_USER)) {
$DATA[1] = chop($DATA[1]);
if($DATA[1]) {
echo "<IMG src=$ImgUrl/dot2.gif border=0> $DATA[1]
<BR><IMG src=$ImgUrl/line.gif border=0><BR>";
}
}
echo "</FONT>";
}
echo "</TD>
</TR>
</TABLE>
</DIV>
</FORM>";
}
echo "</BODY>
</HTML>";
exit;
}
//##############################################################################[投票]
function VOTE_DATA()
{
global $db,$num,$HTTP_COOKIE_VARS,$REMOTE_ADDR,$PHP_SELF;
if ($HTTP_COOKIE_VARS[ivote] != $db) {
if( !$num ) {
$msg = "请选择调查选项"; ALERT($msg);
}
if(!file_exists("./db/$db/total")) {
$V_MSG = "数据不存在."; ERROR($V_MSG);
}
$TOTAL = file("./db/$db/total");
$TOTAL_NUM = $TOTAL[0] + 1;
$RECORD = file("./db/$db/record");
$V_NUM = split("\|", $RECORD[0]);
LOCK($db);
$fp = fopen("./db/$db/total", "w");
fwrite($fp, "$TOTAL_NUM");
fclose($fp);
$V_NUM[$num-1] += 1;
$fp = fopen("./db/$db/record", "w");
fwrite($fp, "$V_NUM[0]|$V_NUM[1]|$V_NUM[2]|$V_NUM[3]|$V_NUM[4]|$V_NUM[5]|$V_NUM[6]|$V_NUM[7]|$V_NUM[8]|$V_NUM[9]|");
fclose($fp);
UNLOCK($db);
setcookie("ivote", "$db", "" , "/");
}
else {
echo ( "<script language=javascript>
window.alert('您已经投票了!.');
</script>" );
}
echo "<html>
<META http-equiv=\"refresh\" content =\"0;url=$PHP_SELF?db=$db&action=view\">
</html>";
exit;
}
//##############################################################################[调查表单]
function VOTE_FORM()
{
global $PHP_SELF,$ImgUrl,$db;
$V_MSG_RECORD = file("./db/$db/msg");
$V_MSG = split("\|", $V_MSG_RECORD[0]);
echo "<HTML>
<HEAD>
<TITLE>在线调查 - iVOTE 1.0.0</TITLE>
<STYLE>
A:LINK {text-decoration:none;}
A:VISITED {text-decoration:none;}
V:HOVER {text-decoration:none; hover:red;}
</STYLE>
<SCRIPT LANGUAGE=javascript>
function VOTE(URL) {
window.open(URL,'VOTE','resizable=no,scrollbars=yes,status=0,width=440,height=300');
}
function iVOTE(){
window.open('','iVOTE','width=440,height=300,status=0,resizable=no,scrollbars=yes');
}
</SCRIPT>
</HEAD>
<BODY>
<FORM METHOD=POST ACTION='$PHP_SELF' target='iVOTE'>
<INPUT type=hidden name=action value=vote>
<INPUT type=hidden name=db value='$db'>";
for( $i = 0; ( $i <= 10 ) && ($V_MSG[$i]); $i++) {
$num = $i + 1;
echo "<INPUT type=radio name='num' value='$num'> $V_MSG[$i]<BR>\n";
}
echo "<BR><INPUT type=image src='$ImgUrl/serv_button1.gif' border=0 onClick='iVOTE()' target='iVOTE'>
<A href=javascript:VOTE('$PHP_SELF?db=$db&action=view')>
<IMG src='$ImgUrl/serv_button2.gif' border=0></A>
</FORM>
</BODY>
</HTML>";
exit;
}
function ERROR($msg)
{
echo ( "<script language=javascript>
window.alert('$msg');
history.go(-1);
</script>" );
exit;
}
function ALERT($msg)
{
echo ( "<script language=javascript>
window.alert('$msg');
self.close();
</script>" );
exit;
}
$ImgUrl = "./image";
if ( $db && is_dir("./db/$db")) {
$LAYOUT = file("./db/$db/layout");
$LAY = split("\|", $LAYOUT[0]);
$OPINION = $LAY[0];
$OPINION_COLOR = $LAY[1];
$BGCOLOR = $LAY[2];
$TABLE_COLOR = $LAY[3];
$CELL_COLOR = $LAY[4];
$CELL_COLOR1 = $LAY[5];
$ETC_COLOR = $LAY[6];
$ETC_BGCOLOR = $LAY[7];
$ETC_BORDER_COLOR = $LAY[8];
$CUT_NUM = $LAY[9];
$OPI_OPTION = $LAY[10];
$OPI_CUT = $LAY[11];
$HTML = $LAY[12];
if ( $action == "view" ) { VIEW_DATA(); }
elseif ( $action == "vote" ) { VOTE_DATA(); }
elseif ( $action == "usermsg" ) { USER_DATA(); }
else { VOTE_FORM(); }
}
else {
$V_MSG = "项目不存在."; ERROR($V_MSG);
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -