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

    Creazione DB per elezioni

    Salve a tutti,

    mi è stato chiesto di realizzare un DB per l’inserimento delle preferenze per le prossime elezioni ma mi sono, come si dice, incartato.
    In effetti si tratta di questo:
    Ci sono
    30 sezioni
    4 liste
    20 candidati per lista
    Se qualcuno mi può dare una dritta lo ringrazio anticipatamente.

  2. #2

  3. #3
    su come strutturare le tabelle

  4. #4
    A me sembra un progetto piuttosto elementare.

    Quale sarebbe il problema?
    Che cosa ti blocca?

  5. #5
    La prima donanda è se creare una sola tabella con tutti i candidati, in questo caso 80, o se fare quattro tabelle, una per ogni lista.

  6. #6

    Re: Creazione DB per elezioni

    Originariamente inviato da franco12345678
    Ci sono
    30 sezioni
    4 liste
    20 candidati per lista
    io farei cosi (in neretto il nome della tabella, poi i campi)

    liste
    id_lista
    nome_lista

    liste_candidati
    id_candidato
    id_lista
    nome_candidato

    sezioni
    id_sezione
    nome_sezione

    voti_sezione
    id_sezione
    id_candidato
    flag_bianca (true/false)
    flag_nulla (true/false)

    In voti_sezione avrai 1 record per ogni scheda.
    Ovviamente se è compilato il campo id_candidato, non potranno essere tre i campi flag_bianca o flag_nulla e viceversa.

  7. #7
    grazie,
    mi spieghi a cosa serve
    flag_bianca (true/false)?

  8. #8
    Ho effettuato una piccola modifica alle tabelle in questo modo:

    liste
    list_id
    lista_nome

    liste_candidati
    candidato_id
    id_lista
    nome_candidato

    voti_sezione
    id_sezione
    id_candidato
    voti_candidato

    con questo file effettuo l'inserimento

    <form action="preferenze_salva.php" method="post" name="form1" id="form" onSubmit="return controllo2(this)">
    Codice PHP:
    <?php
    $query 
    "SELECT * FROM liste LEFT JOIN liste_candidati ON (lista_id=id_lista) WHERE id_lista = 1 
              order by candidato_id"

    $result mysql_query($query) or die(mysql_error());
    while (
    $row mysql_fetch_assoc($result))
    {
    print 
    " ".$row['candidato_id']." ".$row['nome_candidato']." ";
    ?>
    <input name="sez" type="text" id="id_candidato" value="<?php print $_POST['sez']; ?>">
    <input name="id_candidato" type="text" id="id_candidato" value="<?php print $row['candidato_id']; ?>">
    <input name="voti_candidato" type="text" id="voti_candidato" onKeyUp="SoloNumeri(this)" size="2" maxlength="5">


    Codice PHP:
    <?php
    }
    ?>
    <div id=bottone>
    <input type="image" src="../img/bottoni/salva.gif" name="Submit" id="Submit" border="0" class="tasto_grande" value=" " />
    </div>
    </div>
    </form>
    </div>
    Codice PHP:
    <?php }?>
    con questo effettuo il salvataggio

    Codice PHP:
    mysql_query("insert into voti_sezione (id_sezione,id_candidato,voti_candidato) 
                             VALUES ('
    $_POST[sez]','$_POST[id_candidato]','$_POST[voti_candidato]');"); 
    in questo modo mi salva solo l'utimo dato e non tutti quelli che inserisco nella form.

  9. #9

  10. #10
    dopo varie ricerche ho cambiato in questo modo:

    file di inseriento
    Codice PHP:
    $query "SELECT * FROM liste LEFT JOIN liste_candidati ON (lista_id=id_lista) WHERE id_lista = 1
              order by candidato_id"

    $result mysql_query($query) or die(mysql_error());
    while (
    $row mysql_fetch_assoc($result))
    {
    print 
    " ".$row['candidato_id']." ".$row['nome_candidato']." ";
    ?> 
    <input name="dati[]" type="hidden" value="<?php print $_POST['sez']?>">
    <input name="dati[]" type="hidden" value="<?php print $row['candidato_id'] ?>" >
    <input name="dati[]" type="text" onKeyUp="SoloNumeri(this)" size="2" maxlength="5">


    <?php
    }
    ?>

    file per fare l'insert
    Codice PHP:
    <?php
    for ($i 0$i count($dati); $i++) {
    print 
    $dati[$i];
    print 
    "
    "
    ;
     
    $sql .= "INSERT INTO voti_sezione (id_sezione, id_candidato, voti_candidato) VALUES($dati[$i])";
    ma mentre mi visualizza in modo corretto i dati inseriti nella form non me li salva nel db

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.