|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Jul 2006
Messaggi: 20
|
Warning: Division by zero
Riscontro un problema nel codice del mio sito che non riesco a capire in quanto al momento il mio programmatore non è disponibile, chiedo se qualcuno può aiutarmi, l'errore è il seguente:
Warning: Division by zero in /home/xxxxxxxxxx/public_html/xxxxxxx/xxxxxx/newsletter.php on line 7 Warning: Division by zero in /home/xxxxxxxxxx/public_html/xxxxxx/xxxxxxxxxx/newsletter.php on line 7 Warning: Division by zero in /home/xxxxxxxx/public_html/xxxxxxxx/xxxxxxxx/newsletter.php on line 30 Nel file indicato alla linea 7 trovo: $n = $mail_max_x_ora / (60 / $intervallo_spedizione); Alla linea 30 trovo: $ore_rimanenti = ceil($mail_rimanenti / $mail_max_x_ora); Cosa posso fare? grazie. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
Alla variabile $intervallo_spedizione è stato assegnato qualche valore? altrimenti gli viene assegnato 0 per default ... e l' errore si ripercuote anche alla riga 30 con la variabile $mail_max_x_ora
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
|
|
|
|
|
#3 | |
|
Junior Member
Iscritto dal: Jul 2006
Messaggi: 20
|
Quote:
|
|
|
|
|
|
|
#4 | ||
|
Moderatore
Iscritto dal: Nov 2003
Messaggi: 16211
|
Non conosco PHP, ma mi permetto di azzardare un'ipotesi basata sulla similitudine con altri linguaggi. Se sbaglio, correggetemi.
Quote:
In questo caso, se intervallo_spedizione è intero e maggiore di 60, allora 60 / $intervallo_spedizione è 0. Se non c'è rischio di overflow, puoi provare con: Codice:
$n = ($mail_max_x_ora * $intervallo_spedizione) / 60; Quote:
EDIT: qui, a guardar bene, sembra proprio che sia mail_max_x_ora a contenere il valore 0.
__________________
Ubuntu è un'antica parola africana che significa "non so configurare Debian" Scienza e tecnica: Matematica - Fisica - Chimica - Informatica - Software scientifico - Consulti medici REGOLAMENTO DarthMaul = Asus FX505 Ryzen 7 3700U 8GB GeForce GTX 1650 Win10 + Ubuntu Ultima modifica di Ziosilvio : 07-07-2006 alle 10:14. |
||
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
In questa formula
$n = $mail_max_x_ora / (60 / $intervallo_spedizione); ci sono 3 variabili: - $n - $mail_max_x_ora - $intervallo_spedizione Se la variabile $intervallo_spedizione non contiene alcun valore, gli viene assegnato il valore 0 in automatico generando così l' errore di divisione per 0 (non si possono fare le divisioni per 0 Quindi prima di quella riga di codice bisogna che ci sia qualche assegnazione di valori alla variabile ... Un qualcosa del tipo: $intervallo_spedizione = 10; o un altro valore ... Stessa cosa vale per la variabile $mail_max_x_ora ... deve essere assegnata altrimenti quando viene usata nella riga 30 genera lo stesso errore ...
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
Prova anche a modificare la formula come detto da ZioSilvio ...
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
|
|
|
|
|
#7 | |
|
Junior Member
Iscritto dal: Jul 2006
Messaggi: 20
|
Quote:
$num_utenti = $r[0]; $n = $mail_max_x_ora / (60 / $intervallo_spedizione); sopra la riga 30: $mail_rimanenti = ($num_utenti * $rC[0]) - $tot_indice; $ore_rimanenti = ceil($mail_rimanenti / $mail_max_x_ora); |
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
Con il termine "prima di quella riga" intendevo nel codice prima ... non solo la riga precedente ...
Deve esserci un qualcosa del tipo: $intervallo_spedizione = ............;
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
|
|
|
|
|
#9 | |
|
Junior Member
Iscritto dal: Jul 2006
Messaggi: 20
|
Quote:
<?php echo $intervallo_spedizione ?> |
|
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Jun 2005
Città: Mestre (VE)
Messaggi: 1415
|
Quote:
__________________
IN WIN 909 / AMD Ryzen 9 3950X / Gigabyte X570 Aorus Xtreme / 4x8gb G.Skill 3200 / Gigabyte Aorus RTX2080Ti Xterme / 2x Gigabyte Aorus NVMe M.2 1Tb / Corsair AX1200i / full liquid EK - Bitspower / circa 160 trattative nel mercatino |
|
|
|
|
|
|
#11 |
|
Junior Member
Iscritto dal: Jul 2006
Messaggi: 20
|
Problema risolto mancavano 2 righe di codice:
$intervallo_spedizione=valore; $mail_max_x_ora=valore; Grazie a tutti per la cortese collaborazione!!!! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:57.



















