⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 read_vote.php

📁 通达OA官方提供的30源代码,感觉很实在
💻 PHP
字号:
<?
include_once("inc/auth.php");
include_once("inc/utility_all.php");
include_once("inc/utility_file.php");

function ParseItemName($ITEM_NAME,$ITEM_ID,$COUNT=1)
{
   $POS=strpos($ITEM_NAME, "{");
   if($POS===false)
      return $ITEM_NAME;
   
   if(substr($ITEM_NAME, $POS, 6)=="{text}")
      return substr($ITEM_NAME, 0, $POS)."<input name=VOTE_DATA_".$ITEM_ID."_".$COUNT++." type=text size=20 class=SmallInput>".ParseItemName(substr($ITEM_NAME, $POS+6),$ITEM_ID,$COUNT);
   if(substr($ITEM_NAME, $POS, 8)=="{number}")
      return substr($ITEM_NAME, 0, $POS)."<input name=VOTE_DATA_".$ITEM_ID."_".$COUNT++." type=text size=5 class=SmallInput number=true>".ParseItemName(substr($ITEM_NAME, $POS+8),$ITEM_ID,$COUNT);
   if(substr($ITEM_NAME, $POS, 10)=="{textarea}")
      return substr($ITEM_NAME, 0, $POS)."<textarea name=VOTE_DATA_".$ITEM_ID."_".$COUNT++." cols=45 rows=5 class=SmallInput></textarea>".ParseItemName(substr($ITEM_NAME, $POS+10),$ITEM_ID,$COUNT);
   
   return substr($ITEM_NAME, 0, $POS+1).ParseItemName(substr($ITEM_NAME, $POS+1), $ITEM_ID);
}

 $query = "SELECT * from VOTE_TITLE where VOTE_ID='$VOTE_ID' and PUBLISH='1' and (TO_ID='ALL_DEPT' or find_in_set('$LOGIN_DEPT_ID',TO_ID)".dept_other_sql("TO_ID")." or find_in_set('$LOGIN_USER_ID',USER_ID) or find_in_set('$LOGIN_USER_PRIV',PRIV_ID)".priv_other_sql("PRIV_ID").")";
 $cursor= exequery($connection,$query);
 if($ROW=mysql_fetch_array($cursor))
 {
    $FROM_ID=$ROW["FROM_ID"];
    $SUBJECT=$ROW["SUBJECT"];
    $CONTENT=$ROW["CONTENT"];
    $TYPE=$ROW["TYPE"];
    $ANONYMITY=$ROW["ANONYMITY"];
    $VIEW_PRIV=$ROW["VIEW_PRIV"];
    $BEGIN_DATE=$ROW["BEGIN_DATE"];
    $END_DATE=$ROW["END_DATE"];
    $READERS=$ROW["READERS"];
	$ATTACHMENT_ID=$ROW["ATTACHMENT_ID"];
	$ATTACHMENT_NAME=$ROW["ATTACHMENT_NAME"];
    
    if($END_DATE=="0000-00-00")
       $END_DATE="";

    $SUBJECT=htmlspecialchars($SUBJECT);
    $CONTENT=htmlspecialchars($CONTENT);
    $CONTENT=nl2br($CONTENT);

    $query1 = "SELECT USER_NAME,DEPT_ID from USER where USER_ID='$FROM_ID'";
    $cursor1= exequery($connection,$query1);
    if($ROW=mysql_fetch_array($cursor1))
    {
       $FROM_NAME=$ROW["USER_NAME"];
       $DEPT_ID=$ROW["DEPT_ID"];
       $DEPT_NAME=dept_long_name($DEPT_ID);
    }
	
    if($ATTACHMENT_NAME!="")
    {
       $ATTACHMENT_ID_ARRAY=explode(",",$ATTACHMENT_ID);
       $ATTACHMENT_NAME_ARRAY=explode("*",$ATTACHMENT_NAME);
       for($I=0;$I<count($ATTACHMENT_ID_ARRAY);$I++)
       {
           if($ATTACHMENT_ID_ARRAY[$I]=="")
              continue;

           if(is_image($ATTACHMENT_NAME_ARRAY[$I]))
              $IMAGE_COUNT++;
        }
    }
 }
 else
    exit;
 ?>
<html>
<head>
<title>查看投票</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script src="/inc/js/attach.js"></script>
<script Language="JavaScript">
function IsNumber(str)
{
   return str.match(/^[0-9]*$/)!=null;
}

function CheckForm()
{
   var voteArray=document.form1.VOTE_IDS.value.split(",");
   for(i=0; i<voteArray.length;i++)
   {
      var obj=document.all("VOTE"+voteArray[i]);
      if(!obj)
         continue;
      
      for(j=0;j< obj.length;j++)
      { 
      	 if(obj.item(j).checked)
      	    break;
      }
      
      if(j==obj.length)
      {
      	 alert("请选择选择每个问题!");
         return (false);
      }
   }
   
   for(i=0; i< document.form1.elements.length; i++)
   {
      if(document.form1.elements(i).name.substr(0,10)!="VOTE_DATA_")
         continue;
      
      var name_array=document.form1.elements(i).name.split("_");
      var item = document.getElementById("ITEM"+name_array[2]);
      if(item && (item.type=="radio" || item.type=="checkbox") && !item.checked)
         continue;
      
      if(document.form1.elements(i).value=="")
      {
         alert("所有项目都必填!");
         document.form1.elements(i).focus();
         return false;
      }
      
      if(document.form1.elements(i).number && !IsNumber(document.form1.elements(i).value))
      {
         alert("请输入数字!");
         document.form1.elements(i).focus();
         return false;
      }
   }
   
   if(document.form1.TYPE_DESC.value=="checkbox" && document.form1.MIN_NUM.value!="0" && document.form1.MIN_NUM.value!="")
   {
      checked_count=0;
	  vote_id=document.form1.VOTE_ID.value;
	  for (i=0; i< document.all("VOTE"+vote_id).length; i++)
	  {
	     if(document.all("VOTE"+vote_id).item(i).checked)
            checked_count++;
	  }
	  
	  if(checked_count<document.form1.MIN_NUM.value)//////////////////////////////
      { 
	     alert("最少要选择"+document.form1.MIN_NUM.value+"项!");
         return (false);
      }
   }   
   
   document.form1.submit();
}

function AddValue(vote_id,item_id,max_num)
{
   var item_id_str=document.form1.ITEM_ID.value;
   if(document.all("ITEM"+item_id).type=="checkbox" && max_num>0)
   {
      checked_count=0;
      for (i=0; i< document.all("VOTE"+vote_id).length; i++)
      {
         if(document.all("VOTE"+vote_id).item(i).checked)
            checked_count++;
         if(checked_count>max_num)
         {
            alert("最多只能选择"+max_num+"项!");
            document.all("ITEM"+item_id).checked=false;
            return;
         }
      }
  }
  else if(document.all("ITEM"+item_id).type=="radio")
  {
     for (i=0; i< document.all("VOTE"+vote_id).length; i++)
     {
         var radio_id = document.all("VOTE"+vote_id).item(i).value;
         if(item_id_str.indexOf(radio_id+",")==0)
   	        item_id_str=item_id_str.replace(radio_id+",","");
         else if(item_id_str.indexOf(","+radio_id+",")>0)
   	        item_id_str=item_id_str.replace(","+radio_id+",",",");
     }
  }
   
   if(item_id_str.indexOf(item_id+",")==0)
   	 item_id_str=item_id_str.replace(item_id+",","");
   else if(item_id_str.indexOf(","+item_id+",")>0)
   	 item_id_str=item_id_str.replace(","+item_id+",",",");
   else
      item_id_str+=item_id+",";
   
   document.form1.ITEM_ID.value=item_id_str;
}

</script>
</head>

<body class="bodycolor" topmargin="5">
<?
 if($FROM_ID=="")
 {
    Message("","尚未定义投票项目");
    exit;
 }
?>
<script>
function view_result()
{
<?
if($VIEW_PRIV=="0"&&!find_id($READERS,$LOGIN_USER_ID))
   echo "alert(\"投票后才能查看投票结果!\");";
else
   echo "location=\"show_reader.php?VOTE_ID=$VOTE_ID\";";
?>
}
</script>

<table border="0" width="100%" cellspacing="0" cellpadding="3" class="small">
  <tr>
    <td class="Big3" align="center"><?=$SUBJECT?></td>
    </td>
  </tr>
  <tr>
    <td class="small1"><?=$CONTENT?></td>
  </tr>
  <tr>
    <td align="right" class="small1">发布人:<u title="部门:<?=$DEPT_NAME?>" style="cursor:hand"><?=$FROM_NAME?></u>
<?
if($END_DATE!="")
{
?>
      有效期:<?=$BEGIN_DATE?>至<?=$END_DATE?>
<?
}
else
{
?>
      发布日期:<?=$BEGIN_DATE?>
<?
}
?></td>
    </tr>
</table>
<table class="TableBlock" width="100%" align="center">
<form name="form1" method="post" action="vote.php">
<?
$query = "SELECT count(*) from VOTE_ITEM where VOTE_ID='$VOTE_ID'";
$cursor= exequery($connection,$query);
if($ROW=mysql_fetch_array($cursor))
  $ITEM_COUNT=$ROW[0];
  
if($ITEM_COUNT>0)
{
 $query = "SELECT * from VOTE_TITLE where VOTE_ID='$VOTE_ID'";
 $cursor2= exequery($connection,$query);
 
 $ITEM_COUNT=0;
 if($ROW2=mysql_fetch_array($cursor2))
 {
     $ITEM_COUNT++;
     $VOTE_ID1=$ROW2["VOTE_ID"];
     $SUBJECT=$ITEM_COUNT."、".$ROW2["SUBJECT"];
     $CONTENT=$ROW2["CONTENT"];
     $TYPE=$ROW2["TYPE"];
     $MAX_NUM=$ROW2["MAX_NUM"];
	 $MIN_NUM=$ROW2["MIN_NUM"];
     
     $VOTE_IDS.=$VOTE_ID1.",";
     
     $SUBJECT=htmlspecialchars($SUBJECT);
     $CONTENT=htmlspecialchars($CONTENT);
     $CONTENT=nl2br($CONTENT);
     
    if($TYPE=="0")
       $TYPE_DESC="radio";
    else
       $TYPE_DESC="checkbox";
?>
    <tr class="TableHeader">
      <td><?=$SUBJECT?></td>
    </tr>
    <tr class="TableData">
      <td><?=$CONTENT?><br>
<?
    if($TYPE=="0" || $TYPE=="1")
    {
       $query = "SELECT * from VOTE_ITEM where VOTE_ID='$VOTE_ID1' order by ITEM_ID";
       $cursor= exequery($connection,$query);
       $NO=0;
       while($ROW=mysql_fetch_array($cursor))
       {
          $ITEM_ID=$ROW["ITEM_ID"];
          if($NO>26)
             $ITEM_NAME=chr($NO%26+65).floor($NO/26)."、".$ROW["ITEM_NAME"];
          else
             $ITEM_NAME=chr($NO%26+65)."、".$ROW["ITEM_NAME"];
          $ITEM_NAME=ParseItemName($ITEM_NAME,$ITEM_ID);
          $NO++;
?>
          <input name="VOTE<?=$VOTE_ID1?>" id="ITEM<?=$ITEM_ID?>" type="<?=$TYPE_DESC?>" value="<?=$ITEM_ID?>" onClick="AddValue('<?=$VOTE_ID1?>','<?=$ITEM_ID?>',<?=$MAX_NUM?>);"><label for="ITEM<?=$ITEM_ID?>"> <?=$ITEM_NAME?></label><br>
<?
       }
    }
    else
    {
?>
          <textarea name="VOTE_DATA_<?=$VOTE_ID1?>_0" cols="45" rows="5"></textarea>
<?
    }
?>
      </td>
    </tr>
<?
 }
}

 $query = "SELECT * from VOTE_TITLE where PARENT_ID='$VOTE_ID' order by VOTE_NO,SEND_TIME";
 $cursor2= exequery($connection,$query);
 while($ROW2=mysql_fetch_array($cursor2))
 {
     $ITEM_COUNT++;
     $VOTE_ID1=$ROW2["VOTE_ID"];
     $SUBJECT=$ITEM_COUNT."、".$ROW2["SUBJECT"];
     $CONTENT=$ROW2["CONTENT"];
     $TYPE=$ROW2["TYPE"];
     $MAX_NUM=$ROW2["MAX_NUM"];
	 $MIN_NUM=$ROW2["MIN_NUM"];
     
     $VOTE_IDS.=$VOTE_ID1.",";
     
     $SUBJECT=htmlspecialchars($SUBJECT);
     $CONTENT=htmlspecialchars($CONTENT);
     $CONTENT=nl2br($CONTENT);
     
    if($TYPE=="0")
       $TYPE_DESC="radio";
    else
       $TYPE_DESC="checkbox";
?>
    <tr class="TableHeader">
      <td><?=$SUBJECT?></td>
    </tr>
    <tr class="TableData">
      <td><?=$CONTENT?><br>
<?
    if($TYPE=="0" || $TYPE=="1")
    {
       $query = "SELECT * from VOTE_ITEM where VOTE_ID='$VOTE_ID1' order by ITEM_ID";
       $cursor= exequery($connection,$query);
       $NO=0;
       while($ROW=mysql_fetch_array($cursor))
       {
          $ITEM_ID=$ROW["ITEM_ID"];
          if($NO>26)
             $ITEM_NAME=chr($NO%26+65).floor($NO/26)."、".$ROW["ITEM_NAME"];
          else
             $ITEM_NAME=chr($NO%26+65)."、".$ROW["ITEM_NAME"];
          $ITEM_NAME=ParseItemName($ITEM_NAME,$ITEM_ID);
          $NO++;
?>
          <input name="VOTE<?=$VOTE_ID1?>" id="ITEM<?=$ITEM_ID?>" type="<?=$TYPE_DESC?>" value="<?=$ITEM_ID?>" onClick="AddValue('<?=$VOTE_ID1?>','<?=$ITEM_ID?>',<?=$MAX_NUM?>);"><label for="ITEM<?=$ITEM_ID?>"> <?=$ITEM_NAME?></label><br>
<?
       }
    }
    else
    {
?>
          <textarea name="VOTE_DATA_<?=$VOTE_ID1?>_0" cols="45" rows="5"></textarea>
<?
    }
?>
      </td>
    </tr>
<?
}
?>
   
<?
if($ATTACHMENT_NAME!="")
{
?>
    <tr>
      <td class="TableData">附件文件:<br><?=attach_link($ATTACHMENT_ID,$ATTACHMENT_NAME,1,1,1)?></td>
    </tr>
<?
}	
	
if($IMAGE_COUNT>0)
{
?>
    <tr class="TableData">
      <td colspan="2">
        <img src="/images/image.gif" align="absmiddle" border="0">&nbsp;附件图片: <br><br>

<?
   $MODULE=attach_sub_dir();
   for($I=0;$I<count($ATTACHMENT_ID_ARRAY);$I++)
   {
      if($ATTACHMENT_ID_ARRAY[$I]=="" || stristr($CONTENT, $ATTACHMENT_ID_ARRAY[$I]) || stristr($CONTENT, $ATTACHMENT_NAME_ARRAY[$I]))
         continue;

      $IMG_ATTR=@getimagesize(attach_real_path($ATTACHMENT_ID_ARRAY[$I],$ATTACHMENT_NAME_ARRAY[$I]));
      if(is_array($IMG_ATTR) && $IMG_ATTR[0]>0 && $IMG_ATTR[1]>0)
	  {
         //$WIDTH=floor($IMG_ATTR[0]*100/$IMG_ATTR[1]);
		 $WIDTH=$IMG_ATTR[0];
		 $HEIGHT=$IMG_ATTR[1];
      }
	  else
	  {
         $WIDTH=100;
		 $HEIGHT=100;
      }
      $ATTACHMENT_ID=$ATTACHMENT_ID_ARRAY[$I];
      $YM=substr($ATTACHMENT_ID,0,strpos($ATTACHMENT_ID,"_"));
      if($YM)
         $ATTACHMENT_ID=substr($ATTACHMENT_ID,strpos($ATTACHMENT_ID,"_")+1);
      $ATTACHMENT_ID_ENCODED=attach_id_encode($ATTACHMENT_ID,$ATTACHMENT_NAME_ARRAY[$I]);

      if(is_image($ATTACHMENT_NAME_ARRAY[$I]))
      {
?>
          <a href="/inc/attach.php?MODULE=<?=$MODULE?>&YM=<?=$YM?>&ATTACHMENT_ID=<?=$ATTACHMENT_ID_ENCODED?>&ATTACHMENT_NAME=<?=urlencode($ATTACHMENT_NAME_ARRAY[$I])?>"><img src="/inc/attach.php?MODULE=<?=$MODULE?>&YM=<?=$YM?>&ATTACHMENT_ID=<?=$ATTACHMENT_ID_ENCODED?>&ATTACHMENT_NAME=<?=urlencode($ATTACHMENT_NAME_ARRAY[$I])?>" border="1"  width="<?=$WIDTH?>" height="<?=$HEIGHT?> alt="文件名:<?=$ATTACHMENT_NAME_ARRAY[$I]?>"></a> 
<?
      }
   }
?>
      </td>
    </tr>
<?
}
?>
    <tr align="center" class="TableControl">
      <td colspan="2">
<?
if(!find_id($READERS,$LOGIN_USER_ID) && ($END_DATE=="" || $END_DATE>= date("Y-m-d",time())))
{
?>
        <input type="button" value="投票" class="BigButton" onClick="CheckForm();">&nbsp;&nbsp;
<?
}
if($VIEW_PRIV!="2")
{
?>
        <input type="button" value="查看结果" class="BigButton" onClick="view_result();">&nbsp;&nbsp;
<?
}
?>
        <input type="button" value="关闭" class="BigButton" onClick="javascript:window.close();">
      </td>
    </tr>
  </table>
  
  <input name="ITEM_ID" type="hidden" value="">
  <input name="VOTE_ID" type="hidden" value="<?=$VOTE_ID?>">
  <input name="VOTE_IDS" type="hidden" value="<?=$VOTE_IDS?>">
  <input name="ANONYMITY" type="hidden" value="<?=$ANONYMITY?>">
  <input name="TYPE_DESC" type="hidden" value="<?=$TYPE_DESC?>">
  <input name="MIN_NUM" type="hidden" value="<?=$MIN_NUM?>">
</form>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -