<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Sondaggio</title> <meta name="generator" content="Bluefish 2.2.1" /> <script type="text/javascript"> function Controlla_form() { if (document.forms[0].codice.value=="") {alert("Attenzione! Inserisci il codice abbonato"); return false} else return confirm("Confermi la scelta?"); } </script> </head> <body> <?php // definizione delle variabili $host = "localhost"; $user = "root"; $pass = "password"; $db = "sondaggio"; // connessione al DBMS $conn = @mysqli_connect($host, $user, $pass, $db) or die(mysqli_connect_error()); if (isset($_POST['inoltra'])) { $code = $_POST['codice']; $riv = $_POST['rivista']; $query="SELECT * FROM abbonati WHERE codice='$code'"; $ris=@mysqli_query($conn, $query) or die("errore query"); if (@mysqli_num_rows($ris)==1) { //controllo che ci sia un abbonato con quel codice $riga=@mysqli_fetch_array($ris); if ($riga['voto'] == 0) { //controllo che non abbia già votato $aggiornamento = "UPDATE riviste SET preferenze=preferenze+1 WHERE nome='$riv'"; $ris=@mysqli_query($conn, $aggiornamento) or die("errore query"); $aggiornamento2 = "UPDATE abbonati SET voto=1 WHERE codice='$code'"; $ris=@mysqli_query($conn, $aggiornamento2) or die("errore query"); echo "L'abbonato ha votato!"; } else { echo "Attenzione! L'abbonato ha già votato..."; } } else { echo "Attenzione! Codice abbonato inesistente..."; } echo "<h2>Classifica preferenze</h2>"; $query="SELECT * FROM riviste ORDER BY preferenze desc"; $ris=@mysqli_query($conn, $query); $n=@mysqli_num_rows($ris); for ($i=0;$i<$n;$i++) { $riga = @mysqli_fetch_array($ris); echo $riga['nome']." ".$riga['preferenze']."<br />"; } } else { ?> <h1>Sondaggio</h1> <fieldset style="width:50%"> <legend>Vota la rivista</legend> <form action="sondaggio.php" method="post" onsubmit="return Controlla_form()"> <p> <label for="1"> <u>C</u>odice abbonato</label> <input type="text" name="codice" value="codice" id="1" title="Codice" tabindex="1" accesskey="u" /> </p> <p style="width:50%;float:left"> <label for="2"><u>R</u>ivista preferita</label> <select name="rivista" value="Rivista" id="2" title="Scegli la rivista" accesskey="r" tabindex="2"> <?php $query="SELECT * FROM riviste ORDER by nome"; $ris=@mysqli_query($conn, $query) or die("errore query"); // controllo sul numero dei record coinvolti $n=@mysqli_num_rows($ris); for ($i=0;$i<$n;$i++) { $riga = @mysqli_fetch_array($ris); echo "<option value='".$riga['nome']."'>".$riga['nome']."</option>"; } ?> </select> </p> <p> <label for="3">[<u>3</u>]</label> <input type="submit" name="inoltra" value="Inoltra" id="3" title="Confermi la scelta" tabindex="3" accesskey="i" /> </p> </form> </fieldset> <?php } // liberazione della memoria dal risultato della query @mysqli_free_result($ris); // chiusura della connessione @mysqli_close($conn); ?> </body> </html>