Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Differenza di due numeri uguali diversa da 0
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • marcocarrieri
      marcocarrieri ModSenior • ultima modifica di

      Meglio aspettare altri allora... prima di fare danni eh eh..
      Posso solo suggerirti di fare un echo di ogni singola variabile per fare un debug?

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • S
        siremar User • ultima modifica di

        Provato anche quello e mi escono i valori che sarebbero per l'esattezza:

        5528.74
        2141.69
        3387.05

        la cui differenza è appunto 0... credimi non so più che provare.
        In ogni modo grazie per i consigli che mi hai dato.

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • marcocarrieri
          marcocarrieri ModSenior • ultima modifica di

          Ora lo provo in locale!
          E ti so dire ok?

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • marcocarrieri
            marcocarrieri ModSenior • ultima modifica di

            Bene mi da la stessa cosa con questo codice.

            [PHP]
            <?php
            $totale_acc=5528.74;
            $totale_add=2141.69;
            $rimesse_array[0]=3387.05;
            $finale_corr=floatval($totale_acc)-floatval($totale_add)-floatval($rimesse_array[0]);
            echo $finale_corr;
            ?>
            [/PHP]

            Dammi il tempo che il mio cervello ricordi il php e cerco di trovare una soluzione. 🙂

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • T
              tigrone User Attivo • ultima modifica di

              <?php
              $totale_acc=number_format(5528.74, 2, ".", "");
              $totale_add=number_format(2141.69, 2, ".", "");
              $rimesse_array[0]=number_format(3387.05, 2, ".", "");
              $finale_corr=$totale_acc-$totale_add-$rimesse_array[0];
              echo $finale_corr;
              ?>

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • marcocarrieri
                marcocarrieri ModSenior • ultima modifica di

                Vedi bisognava solo aspettare. 🙂

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • T
                  tigrone User Attivo • ultima modifica di

                  @marcocarrieri said:

                  Vedi bisognava solo aspettare. 🙂

                  Ehm... no.. non funziona bene neanche così... :gtsad:

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • marcocarrieri
                    marcocarrieri ModSenior • ultima modifica di

                    Come no ma se ho provato e dava zero a me...

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • marcocarrieri
                      marcocarrieri ModSenior • ultima modifica di

                      Cosi sembra andare...

                      [PHP]<?php
                      $totale_acc=number_format(5528.74, 2);
                      $totale_add=number_format(2141.69, 2);
                      $rimesse_array[0]=number_format(3387.05, 2);
                      $finale_corr=$totale_acc-$totale_add-$rimesse_array[0];
                      echo $finale_corr;
                      ?>[/PHP]

                      Ricordiamoci che potrebbe entrare in conflitto l'uso del punto piuttosto della virgola... i soliti problemi della formattazione americana italiana ecc...

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        tigrone User Attivo • ultima modifica di

                        Allora... ho fatto un po' di prove...
                        number_format() non serve a nulla nel tuo caso... serve solo per formattare il numero da stampare a video...

                        Così dovrebbe andare:

                        [php]
                        <?php
                        $totale_acc=5528.74;
                        $totale_add=2141.69;
                        $rimesse_array[0]=3387.05;
                        $finale_corr=$totale_acc-$totale_add-$rimesse_array[0];
                        $risultato=round($finale_corr, 2);
                        if ($risultato == "-0") $risultato = 0;
                        echo $risultato;
                        ?>
                        [/php]Ho fatto un po' di prove modificando i numeri e "sembra" riportare risultati corretti ma è da testare bene...

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • T
                          tigrone User Attivo • ultima modifica di

                          @marcocarrieri said:

                          Come no ma se ho provato e dava zero a me...
                          Eh lo so... ma dava zero anche se cambiavi i numeri!!!

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • marcocarrieri
                            marcocarrieri ModSenior • ultima modifica di

                            Non avevo provato... 😄
                            Per fortuna che hai riprovato senno,... 😛

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • S
                              siremar User • ultima modifica di

                              Vi ringrazio entrambi per le soluzioni fornitemi, l'ultimo script funziona a meraviglia anche se mi chiedo ancora perchè mi esce quel piccolissimo numero con potenza negativa. Gli arcani misteri del php.

                              Grazie ancora.

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • marcocarrieri
                                marcocarrieri ModSenior • ultima modifica di

                                Hai provato come suggerito che non ritorni sempre 0? 🙂

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • T
                                  tigrone User Attivo • ultima modifica di

                                  @Siremar said:

                                  l'ultimo script funziona a meraviglia anche se mi chiedo ancora perchè mi esce quel piccolissimo numero con potenza negativa.

                                  Quello devi usare (con la funzione round())...

                                  "-0" non dovrebbe visualizzarlo se hai messo anche il controllo if

                                  Edit: quel numero con potenza negativa, imho appare perchè php è diciamo preciso e elabora numeri con molte cifre decimali; se fai operazioni con solo 2 decimali ti tocca arrotondare (round oppure ceil)...

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • S
                                    siremar User • ultima modifica di

                                    Funziona alla grande adesso 🙂

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    Caricamento altri post
                                    Rispondi
                                    • Topic risposta
                                    Effettua l'accesso per rispondere
                                    • Da Vecchi a Nuovi
                                    • Da Nuovi a Vecchi
                                    • Più Voti