source: trunk/client/modules/Elezioni/blocchi/01_votanti.php@ 400

Last change on this file since 400 was 389, checked in by roby, 22 months ago
  • ADMIN
  • ulteriori modifiche per la gestione di consultazioni circoscrizionali
  • correzione di un comando di aggiornamento del db
  • CLIENT
  • ulteriori modifiche per la gestione di consultazioni circoscrizionali
File size: 6.2 KB
Line 
1<?php
2/************************************************************************/
3/* Eleonline - Raccolta e diffusione dei dati elettorali */
4/* by Roberto Gigli & Luciano Apolito */
5/* http://www.eleonline.it */
6/* info@eleonline.it luciano@aniene.net rgigli@libero.it */
7/************************************************************************/
8
9if (!defined('MODULE_FILE')) {
10 die ("You can't access this file dirrectly...");
11}
12
13global $op, $prefix, $dbi, $offset, $min,$descr_cons,$genere,$votog,$votol,$votoc,$circo, $id_cons,$tipo_cons,$id_comune,$id_cons_gen,$id_circ,$csv,$w,$l,$siteistat,$flash,$tour;
14
15if (isset($circo) and $circo) $circos="and t2.id_circ='$id_circ'";
16else $circos='';
17
18if($genere=='4' || $votog) $tab="lista";
19 else $tab="gruppo";
20if ($genere==0) $tab="ref";
21
22
23 if ($genere!=0) { // referendum
24
25 $sql="select sum(t1.maschi+t1.femmine) from ".$prefix."_ele_sezioni as t1 left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t1.id_cons='$id_cons' and validi>0 $circos";
26 $res = $dbi->prepare("$sql");
27 $res->execute();
28
29 list($tot_aventi) = $res->fetch(PDO::FETCH_NUM);
30
31 $sql="select sum(t1.validi+t1.nulli+t1.bianchi+t1.contestati+t1.voti_nulli) as tot,
32 sum(t1.validi),sum(t1.nulli+t1.voti_nulli),sum(t1.bianchi),sum(t1.contestati), '0', '0', '0'
33 from ".$prefix."_ele_sezioni as t1 left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t1.id_cons='$id_cons' and validi>0 $circos";
34 $res = $dbi->prepare("$sql");
35 $res->execute();
36
37
38 }else{
39
40
41
42 $sql="SELECT sum(maschi+femmine) FROM ".$prefix."_ele_sezioni where id_cons='$id_cons'";
43 $res = $dbi->prepare("$sql");
44 $res->execute();
45
46 list($tot_aventi) = $res->fetch(PDO::FETCH_NUM);
47 $sql="SELECT sum(validi+nulli+bianchi+contestati) as tot,
48 sum(validi),sum(nulli),sum(bianchi),sum(contestati), id_gruppo, sum(si), sum(no)
49 from ".$prefix."_ele_voti_ref where id_cons=$id_cons group by id_gruppo having tot>'0'";
50 $res = $dbi->prepare("$sql");
51 $res->execute();
52
53 }
54
55 $i=0;
56
57 while (list($tot_votanti,$validi,$nulli,$bianchi,$contestati,$id,$si,$no) = $res->fetch(PDO::FETCH_NUM)){
58
59# calcolo sezioni
60if($genere==0) $sql="select count(0) from ".$prefix."_ele_voti_".$tab." where id_cons='$id_cons' and id_gruppo='$id'";
61else
62 if (!$circos) $sql="select count(0) from ".$prefix."_ele_sezioni as t2 where t2.id_cons='$id_cons' and t2.validi+t2.nulli+t2.bianchi+t2.contestati>0 ";
63 else $sql="select count(0) from ".$prefix."_ele_sezioni as t2 left join ".$prefix."_ele_sede as t1 on t1.id_sede=t2.id_sede where t1.id_sede in (select id_sede from ".$prefix."_ele_sede where id_circ='$id_circ') and t2.validi+t2.nulli+t2.bianchi+t2.contestati>0 ";
64
65$res_sez = $dbi->prepare("$sql");
66$res_sez->execute();
67
68if($res_sez->rowCount())
69 list($numero)=$res_sez->fetch(PDO::FETCH_NUM);
70else
71 $numero=0;
72#$sql="select t3.* from ".$prefix."_ele_voti_".$tab." as t3 left join ".$prefix."_ele_sezioni as t1 on t3.id_sez=t1.id_sez left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t3.id_cons='$id_cons' $circos group by t3.id_sez ";
73# $res_sez = $dbi->prepare("$sql");
74# $res_sez->execute();
75
76$sql="select t1.id_sez from ".$prefix."_ele_sezioni as t1 left join ".$prefix."_ele_sede as t2 on t1.id_sede=t2.id_sede where t1.id_cons='$id_cons' $circos";
77 $res_sez = $dbi->prepare("$sql");
78 $res_sez->execute();
79
80$sezioni=$res_sez->rowCount();
81
82 $tot_votanti=$validi+$bianchi+$nulli+$contestati;
83 $arvoti=array($validi,$nulli,$bianchi,$contestati);
84 $arperc=arrayperc($arvoti,$tot_votanti);
85 if($tot_votanti){
86 if($genere==0 and $validi) {$perc_si=number_format($si*100/$validi,2);$perc_no=number_format(100 - $si*100/$validi,2);}
87 else {$perc_si="0.00"; $perc_no="0.00";}
88 $perc_validi=number_format($arperc[0],2);#number_format($validi*100/$tot_votanti,2);
89 $perc_nulli=number_format($arperc[1],2);
90 $perc_bianchi=number_format($arperc[2],2);
91 $perc_conte=number_format($arperc[3],2);
92 }else {$perc_validi="0.00";$perc_nulli="0.00";$perc_bianchi="0.00";$perc_conte="0.00";}
93 if($tot_aventi)
94 $perc_votanti=number_format($tot_votanti*100/$tot_aventi,2);
95 else $perc_votanti="0.00";
96 $non_votanti=($tot_aventi - $tot_votanti);
97 $perc_non=100-$perc_votanti;
98
99 if ($genere==0) {
100 $sql="SELECT num_gruppo,descrizione from ".$prefix."_ele_gruppo where id_gruppo=$id";
101 $resg = $dbi->prepare("$sql");
102 $resg->execute();
103
104 list($num_gruppo,$descr_gruppo) = $resg->fetch(PDO::FETCH_NUM);
105 }
106
107 $i++;
108 if($i==1)echo "<h5><b>"._DETTAGLIO." "._VOTIE."</b></h5>";
109 if($i==1)echo "<div style=\"text-align:center;\">[ <i>Percentuali Relative</i> ]</div>";
110
111 if ($genere==0) {echo "<br><div style=\"text-align:center;\">Referendum n. <b>[$num_gruppo]</b></div>";}
112 echo "<div style=\"text-align:center;\"><i> "._SEZSCRU." $numero "._SU." $sezioni </i></div>";
113 echo "<table bgcolor=\"gray\" width=\"100%\" cellspacing=\"1\">";
114 echo "
115 <tr bgcolor=\"#ffffff\"><td ><b>"._AVENTI."</b></td><td align=\"right\">$tot_aventi</td><td align=\"right\"><span class=\"red\">100.00%</span></td></tr>
116
117 <tr bgcolor=\"#ffffff\"><td><b>"._VOTANTI."</b></td><td align=\"right\">$tot_votanti</td><td align=\"right\"><span class=\"red\">$perc_votanti%</span></td></tr>";
118 if ($genere==0){
119 echo "<tr bgcolor=\"#ffffff\"><td>"._SI."</td><td align=\"right\">$si</td><td align=\"right\"><span class=\"red\">$perc_si%</span></td></tr>
120
121 <tr bgcolor=\"#ffffff\"><td>"._NO."</td><td align=\"right\">$no</td><td align=\"right\"><span class=\"red\">$perc_no%</span></td></tr>";
122 }
123 echo "<tr bgcolor=\"#ffffff\"><td>"._VALIDI."</td><td align=\"right\">$validi</td><td align=\"right\"><span class=\"red\">$perc_validi%</span></td></tr>
124
125 <tr bgcolor=\"#ffffff\"><td>"._NULLI."</td><td align=\"right\">$nulli</td><td align=\"right\"><span class=\"red\">$perc_nulli%</span></td></tr>
126
127 <tr bgcolor=\"#ffffff\"><td>"._BIANCHI."</td><td align=\"right\">$bianchi</td><td align=\"right\"><span class=\"red\">$perc_bianchi%</span></td></tr>
128
129 <tr bgcolor=\"#ffffff\"><td>"._CONTESTATI."</td><td align=\"right\">$contestati</td><td align=\"right\"><span class=\"red\">$perc_conte%</span></td></tr>
130
131 </table>";
132
133
134}
135
136?>
Note: See TracBrowser for help on using the repository browser.