Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Calcolare la somma

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    209

    Calcolare la somma

    Ciao ho una funzione che calcola la somma in automatico , vorrei farla calcolare in automatica su + campi

    Ho preso uno script dal web , ho inserito dei campi facendo un ciclo con php ma non funziona più.

    di javascript ho scarsissima conoscenza e non so da quale punto inziare a modificare la funzione.

    Mi dareste un aiuto


    Codice PHP:
    <script> 
    function somma() {

    a=eval(document.all.prima.value);

    b=eval(document.all.seconda.value);

    c=a+b;

    document.all.terza.value=c;

    }

    </script>

    Questo è un programma che fa la somma di due numeri.


    Scrivi qui il primo numero:

    <input type="text" name="prima" onKeyUp="somma()"> 


    <?php 
    for($i=0;$i<=5;$i++)
    {
    ?>
    Scrivi qui il secondo numero<input name="seconda" type="text" onKeyUp="somma()" value="5"> 

    risultao: 
    <input type="text" name="terza">

    <?php 
    }
    ?>

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Il risultato lo devi mettere fuori dal ciclo...

    poi dai name ai campi dipendente dall'indice del ciclo e inseriscili nella funzione di somma...
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    209
    Chiedo scusa ma non ho capito come fare queste modifiche


    1. Il risultato lo devi mettere fuori dal ciclo ( a me servono piu risultati perchè il campo seconda viene ricavato da una lettura dal db quindi non è un unico risultato)

    2. poi dai name ai campi dipendente dall'indice del ciclo e inseriscili nella funzione di somma (non so come farlo perchè non conosco le sintassi di javascript)

    potresti darmi una mano

    grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    209
    ho fatto delle modifiche ma neanche funziona

    mi dice document.all.seconda è nullo o non è un oggetto

    Codice PHP:
    <script> 
    function somma() {
    a=eval(document.all.prima.value);
    for (var i=0; i<seconda.length; i++) {
    b=eval(document.all.seconda[i].value);
    c=a+b;
    }
    document.all.terza.value=c;
    }

    </script>
    Questo è un programma che fa la somma di due numeri.

    Scrivi qui il primo numero:
    <input type="text" name="prima" onKeyUp="somma()"> 

    <?php 
    for($i=0;$i<=3;$i++)
    {
    ?>
    Scrivi qui il secondo numero<input name="seconda[]" type="text" onKeyUp="somma()" value="5"> 
    risultao: 
    <input type="text" name="terza">

    <?php 
    }
    ?>

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133

    Re: Calcolare la somma

    Originariamente inviato da gasparroa
    ....di javascript ho scarsissima conoscenza e non so da quale punto inziare...
    Io inizierei da qui, andare per tentativi non ti porrà a nulla
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    209
    ti ringrazio per la guida che mi hai sugerito ho letto un po il tutto e sono riuscito a farlo funzionare in parte

    ho apportato delle modifiche allo script solo che la funzione è troppo lunga ed è limitata a 5 elementi si puo semplificare e farla funzionare per n elementi

    mi dareste un aiuto che non riesco a modificarlo

    Codice PHP:
    <script>
    function somma() { 
    var a=eval(document.getElementById("primo").value) ; 
    var b=eval(document.getElementById("secondo0").value);
    var somma0=(a) - ((a) * (b)) / 100;
    var somma0=Math.round(somma0 * 100) / 100;
    document.getElementById("somma0").value=somma0; 

    var b1=eval(document.getElementById("secondo1").value);
    var somma1=(a) - ((a) * (b1)) / 100;
    var somma1=Math.round(somma1 * 100) / 100;
    document.getElementById("somma1").value=somma1; 

    var b2=eval(document.getElementById("secondo2").value);
    var somma2=(a) - ((a) * (b2)) / 100;
    var somma2=Math.round(somma2 * 100) / 100;
    document.getElementById("somma2").value=somma2; 

    var b3=eval(document.getElementById("secondo3").value);
    var somma3=(a) - ((a) * (b3)) / 100;
    var somma3=Math.round(somma3 * 100) / 100;
    document.getElementById("somma3").value=somma3; 

    var b4=eval(document.getElementById("secondo4").value);
    var somma4=(a) - ((a) * (b4)) / 100;
    var somma4=Math.round(somma4 * 100) / 100;
    document.getElementById("somma4").value=somma4; 
    }
    </script>
    <input type="text" id="primo" onKeyUp="somma()" />


    <?php 
    for($i=0;$i<=4;$i++)
     {
    ?>

    <input type="text" id="secondo<?php echo $i?>" name="secondo" onKeyUp="somma()" value="6" />
    <input type="text" id="somma<?php echo $i?>" />

    <?php 
     
    }
    ?>

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    209

    nessun di buona volonta che mi da una mano. a trasformare

    questa funzione
    Codice PHP:
    <script
    function 
    somma() {  
    var 
    a=document.getElementById("primo").value;  

    var 
    b0=document.getElementById("secondo0").value
    var 
    somma0=(a) - ((a) * (b0)) / 100
    var 
    somma0=Math.round(somma0 100) / 100
    document.getElementById("somma0").value=somma0;  

    var 
    b1=document.getElementById("secondo1").value
    var 
    somma1=(a) - ((a) * (b1)) / 100
    var 
    somma1=Math.round(somma1 100) / 100
    document.getElementById("somma1").value=somma1;  

    var 
    b2=document.getElementById("secondo2").value
    var 
    somma2=(a) - ((a) * (b2)) / 100
    var 
    somma2=Math.round(somma2 100) / 100
    document.getElementById("somma2").value=somma2;  

    var 
    b3=document.getElementById("secondo3").value
    var 
    somma3=(a) - ((a) * (b3)) / 100
    var 
    somma3=Math.round(somma3 100) / 100
    document.getElementById("somma3").value=somma3;  
    }
    </script> 
    in una funzione simile a questa

    Codice PHP:
    <script>  
    function 
    somma() { 
    a=eval(document.all.prima.value); 
    for (var 
    i=0i<seconda.lengthi++) { 
    b=eval(document.all.seconda[i].value); 
    c=a+b

    document.all.terza.value=c


    </script> 

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.