Salve,
secondo voi c'è un modo per alleggerire questo ciclo che riesegue decine e decine di volte questa query?
Codice PHP:
for($dataCorrenteUnix = $dataInserimento;(time() - $dataCorrenteUnix) > -$secondiMeseCorrente;$dataCorrenteUnix = strtotime('+1 month', $dataCorrenteUnix)) {
//creo il tag per il mese che sto analizzando $dataCorrente = gmdate('Y-m', $dataCorrenteUnix);
//prendo il primo giorno del mese che mi servirà per la query $primoDataCorrente = "$dataCorrente-01"; $primoDataCorrenteUnix = strtotime($primoDataCorrente);
//primo giorno del mese successivo, serve per la query $primoMeseSuccessivoUnix = strtotime ('+1 month', $primoDataCorrenteUnix);
//azzero il contatore $totaleQuantita = 0;
//conto le vendite $totaleQuantita = $mysqli->query("SELECT SUM(quantita) AS totaleQuantita FROM vendite WHERE idProdotto = $idProdotto AND data > $primoDataCorrenteUnix AND data < $primoMeseSuccessivoUnix"); $totaleQuantita = mysqli_fetch_assoc($totaleQuantita); $totaleQuantita = $totaleQuantita['totaleQuantita']; if($totaleQuantita == NULL){$totaleQuantita = 0;}
$dati .= "{mese: '$dataCorrente', value: '$totaleQuantita'},"; } $dati = substr($dati,0,-1); echo $dati;