Pagina 1 di 1

Problema in funzione arrayperc()

Inviato: lun feb 25, 2013 6:06 pm
da margottid
Salve,
ho modificato la funzione arrayperc() (riga 440 del file /client/modules/Elezioni/funzioni.php) da:
if($temp2tot>100)
a
if($temp2tot>100 && ($temp2tot-100)>0.01)

Ho notato che, in una sezione che aveva esattamente 500 voti validi (e quindi con delle percentuali, bene o male, senza arrotondamenti con troppe virgole), la visualizzazione di "Risultati" ==> "Lista per sezioni" mi blocca il server.
Se volete verificare, ho caricato nell'area demo una consultazione, con una sola sezione, riportando pari pari i risultati:
http://www.eleonline.it/moduli/client/m ... ons_gen=57

Andando in "Risultati" ==> "Lista per sezioni", Apache si inchioda (uscendo dopo 120 secondi - ovvero, il tempo massimo di esecuzione di uno script PHP).

La modifica che ho fatto mette un "tampone", probabilmente dovuto alla gestione dei numeri in virgola mobile di PHP.
Nel caso specifico, la variabile $temp2tot è sì superiore a 100, ma di una frazione infinitesimale, e quindi non è necessario procedere ad ulteriori "aggiustamenti" delle percentuali.

Lascio ai programmatori la verifica e l'implementazione di una soluzione più elegante...

Daniele