Salve a tutti, ho un db formato da due tabelle, che popolo mediante dei form. La prima tabella la popolo una riga alla volta, la seconda posso popolarla anche inserendo più di una riga alla volta. Il problema sta proprio nell'inserimento multiplo. Il mio scopo è quello di poter popolare i form della tabella B in maniera simultanea. Vorrei farlo tutto in un'unica pagina e prevedendo a monte il numero di righe della tabella B (non sono riuscita a programmare un bottone aggiungi, che se premuto mi aggiunge una riga in più da popolare).
Ho caricato i file (in txt, non mi carica il php) riguardanti il problema.
Il secondo pezzo nel caso popolo la tabella già popolata
Il popolamento della tabella A avviene senza problemi, mentre non c'è verso di popolare la tabella B.
Qualcuno sa indicarmi il codice corretto? Il mio codice è funzionante e si può testare , ovviamente commentando le parti relative all'inserimento della tabella B che ho circondato di ########. Vi ringrazio in anticipo, magari il problema è davvero semplice da risolvere.
Ho caricato i file (in txt, non mi carica il php) riguardanti il problema.
- Il file della creazione db: db.txt
- Ho poi un file che prende in input il numero di righe delle due tabelle (index.php)
- Un file di connessione al db (ho schermato i miei dati), chiamato connessione_server_php:
- Un file dove ho a disposizione le due tabelle da popolare, per quanto riguarda la tabella B questo è in base alle righe che ho scelto (righe.php).
- Un ultimo file (risultati.php) dove prendo i valori di ciò che ho inserito e li metto a db (o meglio ci provo) e che per comodità ho postato anche qui sotto i due pezzi "incriminati":
PHP:
#######################################################################
echo "<br><br>ID_B = $ID_B<br>";
echo "RIGHE_B =$RIGHE_B<br><br>";
$query_am_insert_zero_id_b;
$insert_b = $campo_riga;
$insert_b .= $ID_B;
$insert_b .= $NUMERO;
$insert_b .= $CF_B;
$insert_b .= $SETTORE;
//prova inserimento
########################################################
foreach ($_POST as $insert_b)
{ $query_am_insert_zero_id_b = " insert into B
(RIGA, ID_B, Numero, CF_B, Settore) values
('$campo_riga', '$ID_B', '$NUMERO', '$CF_B', '$SETTORE'); ";
echo "<br>query_am_insert_zero_id_b= $query_am_insert_zero_id_b.<br><br>";$risultati_am_insert_zero_id_b = mysqli_query($connessione, $query_am_insert_zero_id_b);
}
##################################################
Il secondo pezzo nel caso popolo la tabella già popolata
PHP:
//prova inserimento Tabella B commentato perche' da errore
#####################################################
foreach ($_POST['numero'] as $value1; $_POST['cf_b'] as $value2; $_POST['settore'] as $value3)
{ $query_am_insert_B = " insert into B (RIGA, ID_B) values (
(select max(RIGA)+1 from B as dupalleR),
'$ID_B', '$NUMERO', '$CF_B', '$SETTORE);";
mysqli_query($connessione, $query_am_insert_B) or errore_db($query_am_insert_B);
}
############################################################
Qualcuno sa indicarmi il codice corretto? Il mio codice è funzionante e si può testare , ovviamente commentando le parti relative all'inserimento della tabella B che ho circondato di ########. Vi ringrazio in anticipo, magari il problema è davvero semplice da risolvere.