Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Fare una sommatoria con $_POST

    Codice PHP:
    <?
    include "config.php";
    $db mysql_connect("$server""$username""$password");
    mysql_select_db("$database",$db);
    foreach(
    $_POST as $key => $value) { if ($value!=""){
    $ricerca="_"//tolgo dalla stampa a video i valori ==== INIZIO
    $testo="$key";
    $testo=str_replace($ricerca,' ',$testo);
    echo 
    "$testo = $value 
    "
    ;
    echo
    "
    "
    ;
    $calcolo mysql_query("Select * from valori where voce='$testo'");
    while (
    $data mysql_fetch_object($calcolo))
    {
    $tot $data->pe $value;
    echo 
    "
    "
    .$tot;

    }


    }
    }
    ?>
    Ho questo script che mi servirebbe in ufficio per vedere quanto abbiamo lavorato
    Praticamente io gli passo dei valori tramite un form che estraggo dal db e gli inserisco il numero di pratiche nel campo di testo
    Pero ci sono oltre 200 tipo di pratiche
    ad esempio :

    la pratica chiamata NIP vale 1.4
    la pratica chiamata TEP vale 0.9

    adesso io i dati glieli passo tramite form e di qua li recupero

    Il mio problema ora è farli sommare tra di loro
    io li ottengo i valori (se gli metto 2 nip lo script mi stampa 2.8 e se metto 3 tep mi stampa 2.7) ma ora se volessi fare la somma di 2.7 + 2.8 come posso fare ??

  2. #2
    la risposta che mi viene in mente e' cosi' ovvia che temo, allora, di nn aver capito cosa effettivamente ti serve

    cmq, visto che come diceva il buon vecchio sherlock holmes la soluzione, alle volte, e' quella piu' semplice...

    se devi sommare tra di loro tutti i campi di un form suppongo basti una semplice:
    codice:
    $somma = array_sum($_POST);
    Gabriele B. - http://9thcircle.it

  3. #3
    no IO DEvo sommare tra di loro i campi di :

    $tot = $data->pe * $value;

  4. #4
    quindi hai tanti $tot, uno per ogni iterazione del ciclo while da sommare tra di loro per ottenere un unico totale?

    beh...memorizza tutti i $tot in un array allora e poi li sommi...

    (temo ancora di nn aver capito, mi sa...forse e' meglio sottoporre la cosa a persone piu' esperte di me...)
    Gabriele B. - http://9thcircle.it

  5. #5
    è qeullo che sto cercando di fare :

    io ho fatto cosi :
    $a[] = array ($tot);
    print_r ($a);
    $b = array_sum($a);
    echo "tot $b";

    poi se metto
    e questo è il ristulato :

    Array ( [0] => Array ( [0] => 0.96 ) ) tot 0

  6. #6
    prova cosi':

    inizializzi l'array fuori dal ciclo while
    Codice PHP:
    $tot = array(); 
    sostituisci $tot con $tot[] all'interno del ciclo

    e poi fuori dal ciclo uno sportivissimo

    Codice PHP:
    echo array_sum($tot); 
    cosi' dovrebbe andare...
    Gabriele B. - http://9thcircle.it

  7. #7
    avevo gia provato a fare cosi ... ma non va!!

  8. #8
    nn so che dirti...sembrava un problema dalla soluzione molto lineare...

    mi spiace nn poterti aiutare...sei stato sfortunato...hai beccato il niubbo
    Gabriele B. - http://9thcircle.it

  9. #9
    NON MI sembri tanto niubbo

  10. #10
    questo era quello che mi dicevi tu giusto :

    $tot=array();
    while ($data = mysql_fetch_object($calcolo))
    {
    $tot[]= $data->pe * $value;

    }
    echo array_sum($tot);

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.