Visualizzazione risultati 1 fino 6 di 6

Discussione: [PHP] Calcolare voto

  1. #1
    Guest

    Predefinito [PHP] Calcolare voto

    Salve
    volevo creare un sistema di votazione degli articoli presenti sul mio sito
    la mia idea era questa:
    grazie a un form immetto sul db il voto ogni volta separando con il segno | e fino a qua la cosa è facilissima, arriva il momento di leggere il voto ma sul db ho tanti voti separati dal segno | quindi pensavo di fare:
    Codice PHP:
    <?php
    $voto
    =explode("|",$row[voto]);
    ?>
    e ho ottenuto un array contenente i voti.
    ecco che arriva il problema:
    ora devo sommarli tutti gli elementi dell array $voto e dividere il risultato per il numero di elementi nell' array e arrotondare il risultao.
    mi potete aiutare?
    grazie in anticipo

  2. #2
    L'avatar di matt93
    matt93 non è connesso Utente
    Data registrazione
    01-09-2008
    Messaggi
    241

    Predefinito

    [php]
    <?php
    $voti=explode("|",$row['voto']);
    $somma=0;
    $nvoti=0;
    foreach($voti as $voto){
    if(!empty($voto)){
    $nvoti++;
    $somma+=$voto;
    }
    }

    $media=round(($somma/$nvoti),2);
    echo $media;
    ?>

  3. #3
    L'avatar di sliver
    sliver non è connesso Utente storico
    Data registrazione
    09-03-2001
    Messaggi
    505

    Predefinito

    solo un consiglio su come puoi migliorare il tuo script, e cioè...invece di inserire tutti i voti divisi da una pipe (|), nel db puoi tenere traccia della somma e del numero torale di voti, ad es:
    -------------------
    |id|somma|votanti|
    -------------------
    |1| 21 | 3 |
    |2| 29 | 4 |
    |3| 15 | 2 |

    etc..etc..
    ti verrà poi molto piu semplice ;)
    aru culu

  4. #4
    L'avatar di Xsescott
    Xsescott non è connesso AlterGuru
    Data registrazione
    08-02-2004
    Messaggi
    1,413

    Predefinito

    Citazione Originalmente inviato da sliver Visualizza messaggio
    solo un consiglio su come puoi migliorare il tuo script, e cioè...invece di inserire tutti i voti divisi da una pipe (|), nel db puoi tenere traccia della somma e del numero torale di voti, ad es:
    -------------------
    |id|somma|votanti|
    -------------------
    |1| 21 | 3 |
    |2| 29 | 4 |
    |3| 15 | 2 |

    etc..etc..
    ti verrà poi molto piu semplice ;)
    quoto, anche perchè più salgono i voti e più tempo ci vuole per calcolarli.

    ps. sliver la tua firma è molto indicativa , sei calabrese?
    "Quando il potere dell'amore supererà l'amore per il potere il mondo conoscerà la pace" Jimmy Hendrix


    [ Richiesta: http://www.unibologna.eu/ ] --> [Risposta: http://www.magazine.unibo.it/Magazin...al_Portale.htm Morale] -->[ http://www.anti-phishing.it/news/art...s.13062007.php ]
    consoliwebsite.altervista.org

  5. #5
    Guest

    Predefinito

    grazie ma quello non è un problema
    il tuo script mi ha dato un aiuto per completare lo script
    adesso il testo l'ho messo cosi
    Codice:
    voto;user|voto;user
    cosi un utente puo votare solo una volta
    quindi grazie a tutti

  6. #6
    L'avatar di sliver
    sliver non è connesso Utente storico
    Data registrazione
    09-03-2001
    Messaggi
    505

    Predefinito

    Citazione Originalmente inviato da Xsescott Visualizza messaggio
    ps. sliver la tua firma è molto indicativa , sei calabrese?
    sisi
    aru culu

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •