Ecco il codice:
Codice PHP:
// parte di codice eseguita solo dopo invio di form A (non visibile nel codice qui ricopiato)
// viene utilizzata una variabile di sessione, in modo che vengano mostrati solo i risultati appartenenti all'utente loggato
$result = mysql_query("SELECT * FROM inserimenti WHERE rd_codforn = '{$_SESSION['sess_rd_codforn']}' AND rd_progr = {$_POST['progressivo']} AND rd_elab = 0", $db) or die(mysql_error());
$count =mysql_num_rows($result);
// se la query restituisce risultati allora mostra la form B
if (mysql_num_rows($result) > 0)
{
echo '<table width = "500px">';
echo '<tr><th>Codice fornitore</th><th>Codice progressivo</th><th>Articolo</th><th>Quantita</th><th>Prezzo</th></tr>';
echo '<form method = "post">';
// ciclo che mostra i risultati
while ($records_progressivo = mysql_fetch_array($result))
{
echo '<tr>';
echo '<td>' . $records_progressivo['rd_codforn'] . '</td>';
echo '<td>' . $records_progressivo['rd_progr'] . '</td>';
echo '<td>' . $records_progressivo['rd_art'] . '</td>';
echo '<td>' . $records_progressivo['rd_qta'] . '</td>';
echo '<td><input name="' . $records_progressivo['rd_sysid'] . '" type ="text" id="' . $records_progressivo['rd_sysid'] . '" value="' . $records_progressivo['rd_prezzo'] . '"></td>';
echo '</tr>';
}
echo '</table>';
echo '
';
// pulsante invio dati form B
echo '<input name="inviaprezzi" type="submit" id="inviaprezzi" value="Conferma"></form>';
echo '
';
}
else
{
echo "nessun record trovato appartenente all'utente";
}
// seguirà parte di codice finale (form A)
In modo particolare non so come comportarmi quando creo l'array che mostra i risultati in tabella. Popolare le textbox con i dati che pesca dal database non è un problema, ciò che non riesco a fare è, con il comando post, di inviare i nuovi dati scritti nelle textbox al database. In qualche esempio online ho visto che le id e i nomi dei campi della form vengono definiti mediante array che sembrano vuoti, tipo nome[], ma non ho idea del motivo di tale scelta.
La mia niubbaggine, anche nella spiegazione, è evidente