"._CNFR_CONS.""; //visualizza le consultazioni tra le quali scegliere quelle da confrontare function sceglicons(){ global $param,$id_cons_gen, $dbi, $prefix, $id_comune; $_SESSION['confr']=array(); $_SESSION['grulis']=array(); $_SESSION['grp1']=array(); $_SESSION['grp2']=array(); $_SESSION['grp3']=array(); $x=1; while (isset($_SESSION['num_lista'.$x])) unset($_SESSION['num_lista'.$x]); /*$x=1; while (isset($param['num_lista'.$x])) { if ($param['num_lista'.$x]==$gruppo) array_push($collegate,$_SESSION['num_lista'.$x]); elseif ($param['num_lista'.$x]!=0) array_push($collperd,$_SESSION['num_lista'.$x]); $x++; }*/ $sql="SELECT t1.descrizione,t2.id_cons FROM ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2, ".$prefix."_ele_tipo as t3 where t1.id_cons_gen=t2.id_cons_gen and t1.tipo_cons=t3.tipo_cons and t3.circo='0' and t3.genere>'2' and t2.id_comune='$id_comune' order by t1.data_fine,t1.descrizione"; $res = $dbi->prepare("$sql"); $res->execute(); if ($res->rowCount()){ echo "
"; echo "
" .""; echo ""; echo ""; echo ""; $x=1; while (list($descr_cons,$id_cons)= $res->fetch(PDO::FETCH_NUM)){ echo ""; $x++; } echo "
Dai un nome
al il primo gruppo
Dai un nome
al secondo gruppo
Se vuoi un raffronto
con il totale degli altri gruppi

"._SCELTA_CONS."
$descr_cons"; echo ""; echo "

Help on line


Esempi di uso


Raffronto centrodestra-centrosinistra
- Mettere i nomi ai gruppi da assemblare
- Scegliere se confrontarli anche con i restanti gruppi
- Scegliere le consultazioni, almeno una, da raffrontare e premere ok
- Scegliere le liste da abbinare ad ogni gruppo

Raffronto andamento per un solo gruppo o lista
- Immettere solo un nome del gruppo lasciando vuoto l'altro
- Scegliere le consultazioni premere ok
- Scegliere le liste da abbinare ad ogni gruppo

"; } } //visualizza le liste per consultazione e permette di associarle ai gruppi function scegliliste(){ global $bgcolor1,$bgcolor2,$param,$id_cons_gen, $dbi, $prefix, $id_comune, $pag, $pags,$id_cons,$grp1,$grp2,$grp3,$fascia; $limite=0; // ipotesi di campi vuoti if(!$grp1 && !$grp2 && !$grp3){echo "Metti il nome di almeno un gruppo oppure il check al raffronto totale"; include("footer.php"); exit;} $verifica=0; if (!$pag) //alla prima esecuzione filtra le consultazioni selezionate { $pag=1; $x=1; $y=1; while (isset($param['cons'.$x])) { if(isset($param[('check'.$x)]) and $param[('check'.$x)]) { $_SESSION['confr'][$y]=$param[('cons'.$x)]; $y++; $verifica++; // verifica di scelte consultazioni } else $pags--; $x++; } if ($verifica<=1){echo "Scegli almeno due consultazioni"; include("footer.php"); exit;} //esce }else{ $_SESSION['grp1'][$pag]=array(); $_SESSION['grp2'][$pag]=array(); $_SESSION['grp3'][$pag]=array(); $x=1; while (isset($param['num_lista'.$x])) { if ($param['num_lista'.$x]=='grp1') {array_push($_SESSION['grp1'][$pag],$_SESSION['num_lista'.$x]);} if ($param['num_lista'.$x]=='grp2') {array_push($_SESSION['grp2'][$pag],$_SESSION['num_lista'.$x]);} if ($param['num_lista'.$x]=='grp3') {array_push($_SESSION['grp3'][$pag],$_SESSION['num_lista'.$x]);} unset($_SESSION['num_lista'.$x]); $x++; } $pag++; } if($pag>=$pags) return(1); //in $pags il numero delle consultazioni $id_cons2=$_SESSION['confr'][$pag]; $sql="SELECT t1.descrizione,t1.tipo_cons,t2.id_conf from ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2 where t1.id_cons_gen=t2.id_cons_gen and t2.id_cons='$id_cons2'"; $res_lis = $dbi->prepare("$sql"); $res_lis->execute(); list($descr,$tipoc,$legge)=$res_lis->fetch(PDO::FETCH_NUM); if($legge){ $sql="SELECT limite from ".$prefix."_ele_conf where id_conf='$legge'"; $res = $dbi->prepare("$sql"); $res->execute(); list($limite)=$res->fetch(PDO::FETCH_NUM); } if($tipoc==3 and $fascia<=$limite){ $_SESSION['grulis'][$id_cons2]='1'; $sql="SELECT t2.id_gruppo,t1.descrizione,t2.descrizione from ".$prefix."_ele_lista as t1 left join ".$prefix."_ele_gruppo as t2 on t1.id_gruppo=t2.id_gruppo where t1.id_cons='$id_cons2' order by t2.num_gruppo"; }else{ $sql="SELECT t1.id_lista,t1.descrizione,t2.descrizione from ".$prefix."_ele_lista as t1 left join ".$prefix."_ele_gruppo as t2 on t1.id_gruppo=t2.id_gruppo where t1.id_cons='$id_cons2' order by t2.num_gruppo"; $_SESSION['grulis'][$id_cons2]='0'; } $res_lis = $dbi->prepare("$sql"); $res_lis->execute(); $yy=$res_lis->rowCount(); if ($yy){ echo "
" .""; echo ""; echo ""; if($grp1)echo ""; if($grp2)echo ""; if($grp3)echo ""; echo "
"; echo ""; if($grp1)echo ""; if($grp2)echo ""; echo ""; echo ""; $z=1; while(list($id_lista,$descr,$gruppo) = $res_lis->fetch(PDO::FETCH_NUM)) { $_SESSION['num_lista'.$z]=$id_lista; echo ""; if($grp1)echo ""; if($grp2)echo ""; echo ""; echo ""; $z++; } echo "
"._CONSULTAZIONE.": $descr
"._SCELTA_LISTE."
$grp1$grp2"._ALTROGRP."
$gruppo$descr
"; echo "
"; } return(0); } // stampa a video i risultati function outgraf($ar1,$ar2,$ar3){ global $pags,$id_comune,$prefix,$dbi,$grp1,$grp2,$grp3; $riga1=""; $riga5=""; foreach($_SESSION['confr'] as $y=>$x){ $sql="SELECT sum(maschi+femmine) from ".$prefix."_ele_sezioni where id_cons='$x'"; $res = $dbi->prepare("$sql"); $res->execute(); list($elet)=$res->fetch(PDO::FETCH_NUM); if($_SESSION['grulis'][$x]=='1') $sql="SELECT sum(voti) from ".$prefix."_ele_voti_gruppo where id_cons='$x'"; else $sql="SELECT sum(voti) from ".$prefix."_ele_voti_lista where id_cons='$x'"; $res = $dbi->prepare("$sql"); $res->execute(); list($tot[$y])=$res->fetch(PDO::FETCH_NUM); $sql="SELECT t1.descrizione FROM ".$prefix."_ele_consultazione as t1, ".$prefix."_ele_cons_comune as t2 where t1.id_cons_gen=t2.id_cons_gen and t2.id_comune='$id_comune' and t2.id_cons='$x'"; $res = $dbi->prepare("$sql"); $res->execute(); list($descr)=$res->fetch(PDO::FETCH_NUM); $riga1.=""; $riga5.=""; // dati per grafico $descriz[$y]=$descr; $perctot[$y]=number_format($tot[$y]*100/$elet); } $riga1.=""; if($grp1)$riga2=""; if($grp2)$riga3=""; if($grp3)$riga4=""; else $riga4=''; #for ($x=1;$x<=$pags;$x++){ foreach($_SESSION['confr'] as $x=>$y){ $perc1=number_format(($ar1[$x]*100/$tot[$x]),2); $perc2=number_format(($ar2[$x]*100/$tot[$x]),2); $perc3=number_format(($ar3[$x]*100/$tot[$x]),2); $perc4=number_format(($ar1[$x]*100/$tot[$x]),3); $perc5=number_format(($ar2[$x]*100/$tot[$x]),3); $perc6=number_format(($ar3[$x]*100/$tot[$x]),3); if (($perc1+$perc2+$perc3)>(100.00)){ if((($perc4*1000)%10)<(($perc5*1000) % 10)) $max=1; else $max=2; if ($max==1) if((($perc4*1000)%10)>(($perc6*1000)%10)) $max=3; elseif((($perc5*1000)%10)>(($perc6*1000)%10)) $max=3; if($max==1)$perc1-=0.01; elseif($max==2)$perc2-=0.01; else $perc3-=0.01; }elseif (($perc4+$perc5+$perc6)<(100.00)) { if((($perc4*1000)%10)>(($perc5*1000) % 10)) $max=1; else $max=2; if ($max==1) if((($perc4*1000)%10)<(($perc6*1000)%10)) $max=3; elseif((($perc5*1000)%10)<(($perc6*1000)%10)) $max=3; if($max==1)$perc1+=0.01; elseif($max==2)$perc2+=0.01; else $perc3+=0.01; } if($grp1)$riga2.= ""; if($grp2)$riga3.= ""; if($grp3)$riga4.= ""; // per grafici $percg1[$x]=$perc1; $percg2[$x]=$perc2; $percg3[$x]=$perc3; } if($grp1)$riga2.="";if($grp2)$riga3.="";if($grp3)$riga4.="";$riga5.="
"._VOTANTI."$descr".$tot[$y]."
".number_format($tot[$y]*100/$elet)."%
$grp1
$grp2
"._ALTROGRP."".$ar1[$x]."
$perc1%
".$ar2[$x]."
$perc2%
".$ar3[$x]."
$perc3%
"; echo $riga1.$riga2.$riga3.$riga4.$riga5; /* dati da inviare in array al grafico $descrizione: consultazione $grp1 e grp2: nome dei gruppi $ar1 fino a 3 : numero voti gruppi e altri percg1 fino a 3 : percentuali gruppi e altri $tot : totale voti $perctot : percentuale totale voti $altro="Altro"; echo "
"; foreach($_SESSION['confr'] as $x=>$y){ echo "$descriz[$x]
"; echo "$grp1 : $ar1[$x] - $percg1[$x]%
"; echo "$grp2 : $ar2[$x] - $percg2[$x]%
"; echo "Altri : $ar3[$x] - $percg3[$x]%
"; echo "Totali: $tot[$x] - $perctot[$x]%
"; } */ // preparazione per grafico foreach($ar1 as $val) $ars1[]=$val; foreach($ar2 as $val) $ars2[]=$val; foreach($ar3 as $val) $ars3[]=$val; foreach($percg1 as $val) $per1[]=$val; foreach($percg2 as $val) $per2[]=$val; foreach($percg3 as $val) $per3[]=$val; foreach($descriz as $val) $desc[]=$val; // includere nel linguaggio define("_TITOLOVOTI","Raffronti per voto"); define("_TITOLOPERC","Raffronti percentuali"); define("_ALTRO","Altri"); if(!$grp1 && !$grp2)$altro=""._ALL.""; else $altro=""._ALTRO.""; $titolovoti=urlencode(_TITOLOVOTI); $titoloperc=urlencode(_TITOLOPERC); $altro=urlencode($altro); $desc=serialize($desc); //$desc=urlencode($desc); $grp1=urlencode($grp1); $grp2=urlencode($grp2); $grp3=urlencode($grp3); $altro=urlencode($altro); // voti $ars1=serialize($ars1); $ars1=urlencode($ars1); $ars2=serialize($ars2); $ars2=urlencode($ars2); $ars3=serialize($ars3); $ars3=urlencode($ars3); // percentuali $per1=serialize($per1); $per1=urlencode($per1); $per2=serialize($per2); $per2=urlencode($per2); $per3=serialize($per3); $per3=urlencode($per3); $logo=verificasimbolo(); echo "
\"Grafico\"
"; echo "
\"Grafico\"
"; } $zz=0; if (!$pags) sceglicons(); elseif($pag<=$pags) {$zz=scegliliste(); } if($zz !=0) { for ($x=1;$x<$pags;$x++){ $ar1[$x]=0; $ar2[$x]=0; $ar3[$x]=0; $id_cons2=$_SESSION['confr'][$x]; foreach ($_SESSION['grp1'][$x] as $key=>$val){ if($_SESSION['grulis'][$id_cons2]=='1') $sql="SELECT sum(voti) from ".$prefix."_ele_voti_gruppo where id_gruppo='$val'"; else $sql="SELECT sum(voti) from ".$prefix."_ele_voti_lista where id_lista='$val'"; $res = $dbi->prepare("$sql"); $res->execute(); list($voti)=$res->fetch(PDO::FETCH_NUM); $ar1[$x]+=$voti; } foreach ($_SESSION['grp2'][$x] as $key=>$val){ if($_SESSION['grulis'][$id_cons2]=='1') $sql="SELECT sum(voti) from ".$prefix."_ele_voti_gruppo where id_gruppo='$val'"; else $sql="SELECT sum(voti) from ".$prefix."_ele_voti_lista where id_lista='$val'"; $res = $dbi->prepare("$sql"); $res->execute(); list($voti)=$res->fetch(PDO::FETCH_NUM); $ar2[$x]+=$voti; } foreach ($_SESSION['grp3'][$x] as $key=>$val){ if($_SESSION['grulis'][$id_cons2]=='1') $sql="SELECT sum(voti) from ".$prefix."_ele_voti_gruppo where id_gruppo='$val'"; else $sql="SELECT sum(voti) from ".$prefix."_ele_voti_lista where id_lista='$val'"; $res = $dbi->prepare("$sql"); $res->execute(); list($voti)=$res->fetch(PDO::FETCH_NUM); $ar3[$x]+=$voti; } } outgraf($ar1,$ar2,$ar3); } ?>