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

    HELP prodotto tra più righe e valori e somma per singolo utente

    E' un pò complesso da spiegare ma ci provo.
    Ho questa situazione, tabelle UTENTI e OPERAZIONI, ogni utente mi costa 40 al giorno.
    Nelle OPERAZIONI salvo "idoperazione", i "giorni impiegati", quanti "operatori" hanno partecipato.
    Quello che ora serve a me è calcolare e stampare per ogni UTENTE il costo totale.
    Esempio. utente1 : (idoperazione1, giorni 1, operatori 2 x40) = 80
    utente1: (idoperazione2, giorni 2, operatori 1 x40) = 80
    utente2: (idoperazione2, giorni 3, operatori 2 x40) = 240

    Non riesco proprio a trovare un metodo. Riesco solo a stampare il totale per tutti gli utenti e non so come sommarlo e stamparlo solo per singolo utente.

  2. #2
    Utente di HTML.it L'avatar di swec
    Registrato dal
    Oct 2012
    Messaggi
    21
    i dati sono su un database SQL?

  3. #3
    Si, sono su mysql, tramite la select e SUM per user_id non riesco a fare le operazioni che mi interessano. Forse un foreach o un while.
    Mi sono avvicinato da pochi mesi al php. datemi un consiglio

  4. #4
    Utente di HTML.it L'avatar di swec
    Registrato dal
    Oct 2012
    Messaggi
    21
    table OPERAZIONI(id, giorni_impiegati, num_operatori)
    questa dovrebbe essere la tabella operazioni, su quella UTENTI cosa c'è?? il codice è semplice, dammi la definizione della tabella UTENTI e te lo posto! ciao

  5. #5
    UTENTI è formata da user_id, username, email, pwd, mentre OPERAZIONI : user_id (su cui faccio la join) idoperazione, giorni, operatori.

  6. #6
    Utente di HTML.it L'avatar di swec
    Registrato dal
    Oct 2012
    Messaggi
    21
    quindi se ho ben capito gli utenti sarebbero i committenti delle operazioni e vogliamo estrapolare quando spendono in totale per tutte le loro operazioni. le posto come farei io:

    Codice PHP:
    <?php
        
    //mi connetto al database
        
    include('include/connessione.php');
        
    //seleziono ogni utente singolarmente
        
    $query 'select distinct(uder_id) from utenti';
        
    $cur mysql_query($query,$db) or die(mysql_error());
        while (
    $riga mysql_fetch_row($cur)){
            
    //per ognuno controllo tutte le operazioni
            
    $query2 'select * from operazioni where user_id ='.$riga[0];
            
    $cur2 mysql_query($query2,$db) or die(mysql_error());
            
    $tot 0;
            while (
    $riga2 mysql_fetch_row($cur2)){
                
    $giorni $riga2[2];
                
    $operatori $riga2[3];
                
    $costo_fisso 40;
                
    $tot $tot + ($costo_fisso*$operatori*$giorni);
            }
            echo 
    "l'utente con id ".$riga[0]."e username ".$riga[1]." ha speso ".$tot;
        }
    ?>

  7. #7
    Bhè complimenti per la risposta veloce e funzionante! l'ho provata velocemente in un angolino della mia pagina e funziona. Ora devo incasellare la risposta $tot nella tabella dell'elenco degli utenti tramite un while.

  8. #8
    Utente di HTML.it L'avatar di swec
    Registrato dal
    Oct 2012
    Messaggi
    21
    buon lavoro allora.. se hai problemi posta qui almeno vedo direttamente il messaggio.. ciao

  9. #9
    rieccomi, sii gentile aiutami ancora un pò.
    allora prima per estrarre i dati e stamparli in una tabella usavo questo
    Codice PHP:
     $sql="SELECT users.user_id, users.nome, users.name, users.active, operazioni.user_id, operazioni.giorni, operazioni.operatori, SUM(operazioni.giorni) AS tot_giorni  FROM operazioni RIGHT JOIN users ON operazioni.user_id=users.user_id WHERE users.liv=2 AND users.azienda=$userAzienda GROUP BY users.user_id ORDER BY users.nome ASC"
    in while mysql_fetch_array stampo una bella tabella con nome username totale giornate effettuate. Ora accanto al nome devo stampare per ogni utente il $tot di cui sopra.
    Non ho bene capito come incastrare quei due while che mi hai postato con la mia tabella

  10. #10
    Utente di HTML.it L'avatar di swec
    Registrato dal
    Oct 2012
    Messaggi
    21
    ecco qua, la tabella la costruisco con il php e tutto va , spero di non aver fatto errori!

    Codice PHP:
    <?php
        
    echo "<table><tr> <td colspan='2'> Tabella utenti by swec :) </td> </tr>";
        
    //mi connetto al database
        
    include('include/connessione.php');
        
    //seleziono ogni utente singolarmente
        
    $query 'select distinct(uder_id) from utenti';
        
    $cur mysql_query($query,$db) or die(mysql_error());
        while (
    $riga mysql_fetch_row($cur)){
            
    //per ognuno controllo tutte le operazioni
            
    $query2 'select * from operazioni where user_id ='.$riga[0];
            
    $cur2 mysql_query($query2,$db) or die(mysql_error());
            
    $tot 0;
            while (
    $riga2 mysql_fetch_row($cur2)){
                
    $giorni $riga2[2];
                
    $operatori $riga2[3];
                
    $costo_fisso 40;
                
    $tot $tot + ($costo_fisso*$operatori*$giorni);
            }
            echo 
    "<tr> <td> ".$riga[1]." </td> <td> ".$tot." </td> </tr>";
        }
        echo 
    "</table>";
    ?>

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.