Aiuto per form inserimento dati
ho questa pagina col form di inserimento campi:
Codice PHP:
<FORM METHOD="post" ACTION="inserisci_portieri.php">
<table border="1" width="400px" style="border-collapse: collapse" id="table1">
<tr>
<td width="40%" align="center"><b>COGNOME</b></td>
<td width="40%" align="center"><b>NOME</b></td>
<td width="20%" align="center"><b>GOALS SUBITI</b></td>
</tr>
<?php
include("config.inc.php");
$db = mysql_connect($host, $username);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($database, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$query = "SELECT cognome, nome FROM calcetto ORDER BY id";
$result = mysql_query ($query, $db);
$i = 0;
while ($line = mysql_fetch_array ($result))
{
$i++;
echo '<tr>';
echo '<td width="40%">' . $line['cognome'] . '</td>';
echo '<td width="40%">' . $line['nome'] . '</td>';
echo '<td width="20%" align="center"> <INPUT TYPE="text" NAME="subiti' . $i . '" size="5"></td>';
echo '</tr>';
}
$new_player = 0; // qui il numero di nuovi giocatori
for ($j = 1; $j <= $new_player; $j++)
{
$i++;
echo '<td width="40%"><input type="text" name="cognome' . $j . '"></td>';
echo '<td width="40%"><input type="text" name="nome' . $j . '"></td>';
echo '<td width="20%" align="center"> <INPUT TYPE="text" NAME="subiti' . $i . '" size="5"></td>';
echo '</tr>';
}
?>
</table> <INPUT TYPE="submit" VALUE="Inserisci"> </p> </FORM>
e questa che invia i dati al database:
Codice PHP:
<?
include("config.inc.php");
$db = mysql_connect($host, $username);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($database, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
// 1. Crea la tabella temporanea
$query = "CREATE TABLE tmp_portieri (
id INT (5) UNSIGNED not null,
subiti INT (5) UNSIGNED not null)";
if (mysql_query($query, $db))
echo "Creazione tabella temporanea eseguita correttamente";
else
echo "Errore durante creazione tabella temporanea";
// 2. Inizia la costruzione della query di inserimento...
$query = "INSERT INTO tmp_portieri (id, subiti) VALUES ";
$i = 0;
while (isset ($_POST['subiti' . ++$i]))
{
if ($_POST['subiti' . $i] == '' || $_POST['subiti' . $i] == NULL)
$values = '(' . $i . ', 0), ';
else
$values = '(' . $i . ', ' . $_POST['subiti' . $i] . '), ';
$query .= $values;
}
// ... poi elimina l'ultima virgola di troppo e la esegue
$query = substr ($query, 0, strlen ($query) - 2);
if (mysql_query($query, $db))
echo "Inserimento dati in tabella temporanea eseguito correttamente";
else
echo "Errore durante inserimento dati nella tabella temporanea";
// 3. Effettua l'aggiornamento
$query = "UPDATE calcetto, tmp_portieri
SET calcetto.subiti = calcetto.subiti + tmp_portieri.subiti
WHERE calcetto.id = tmp_portieri.id";
if (mysql_query($query, $db))
echo "Aggiornamento del database eseguito correttamente";
else
echo "Errore durante aggiornamento del database";
// 4. Distruggi la tabella temporanea
$query = "DROP TABLE tmp_portieri";
if (mysql_query ($query, $db))
echo ("Operazione completata!");
else
echo ("Eliminazione della tabella temporanea non riuscita :-(");
?>
vorrei aggiungere un altro campo nel form che mi permetta di inserire il valore 1 coem presenza (meglio se fosse fatto con un pallino da spuntare che in posizioone di default e su 0 ma posso selezionare il valore 1 se il portiere è presente)
nel database ho già il campo 'presenza'