Per il form puoi fare così:
Codice PHP:
<FORM METHOD="post" ACTION="inserisci_portieri.php">
<table border="1" width="400px" style="border-collapse: collapse" id="table1">
<tr>
<td width="35%" align="center"><b>COGNOME</b></td>
<td width="35%" align="center"><b>NOME</b></td>
<td width="20%" align="center"><b>GOALS SUBITI</b></td>
<td width="10%" align="center"><b>PRESENZA</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="35%">' . $line['cognome'] . '</td>';
echo '<td width="35%">' . $line['nome'] . '</td>';
echo '<td width="20%" align="center"> <INPUT TYPE="text" NAME="subiti' . $i . '" size="5"></td>';
echo '<td width="10%">Si<input type="radio" name="presenza' . $i .'" value="1" /> No<input type="radio" name="presenza' . $i .'" value="0" checked="checked" /></td>';
echo '</tr>';
}
$new_player = 0; // qui il numero di nuovi giocatori
for ($j = 1; $j <= $new_player; $j++)
{
$i++;
echo '<td width="35%"><input type="text" name="cognome' . $j . '"></td>';
echo '<td width="35%"><input type="text" name="nome' . $j . '"></td>';
echo '<td width="20%" align="center"> <INPUT TYPE="text" NAME="subiti' . $i . '" size="5"></td>';
echo '<td width="10%">Si<input type="radio" name="presenza' . $i .'" value="1" /> No<input type="radio" name="presenza' . $i .'" value="0" checked="checked" /></td>';
echo '</tr>';
}
mysql_close($db);
?>
</table> <INPUT TYPE="submit" VALUE="Inserisci"> </p> </FORM>
e per aggiornare il db:
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,
presenza binary(1) 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, presenza) VALUES ";
$i = 0;
while (isset ($_POST['subiti' . ++$i]) && isset ($_POST['presenza' . $i]))
{
if ($_POST['subiti' . $i] == '' || $_POST['subiti' . $i] == NULL)
$values = '(\'' . $i . '\', 0, \''.mysql_real_escape_string($_POST['presenza' . $i]).'\'), ';
else
$values = '(\'' . $i . '\', \'' . mysql_real_escape_string($_POST['subiti' . $i]) . '\', \'' . mysql_real_escape_string($_POST['presenza' . $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, calcetto.presenza = tmp_portieri.presenza
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 :-(");
mysql_close($db);
?>