zmień nazwy kontrolek, aby publikowały jako tablice
<input type="text" name="teamname[G1]">
<input type="text" name="teamname[G2]">
to dlaczego, gdy używasz $varTname = $_POST['teamname'];
$varTname
to tablica i każda z 4 wartości teamname
są ustawione jako $varTname['G#']
gdzie # odpowiada liczbie ustawionej dla tej grupy pól wejściowych.
następnie użyj pętli for, aby pobrać dane i wykonać zapytanie, coś takiego jak poniżej. w tym czasie możesz również naprawić lukę w zabezpieczeniach SQL Injection. możesz również chcieć trochę bardziej odkazić dane, aby się upewnić
$varTname = $_POST['teamname'];
$varCity = $_POST['city'];
$varBplayer = $_POST['bestplayer'];
$varYearformed = $_POST['yearformed'];
$varWebsite = $_POST['website'];
$stmt = $mysqli->prepare('INSERT INTO Teams (teamname, city, bestplayer, yearformed, website) VALUES (?,?,?,?,?,?)');
$varTname1Bind = "";
$varTnameBind = "";
$varCityBind = "";
$varBplayerBind = "";
$varWebsiteBind = "";
// assuming they are all strings, adjust where needed
$stmt->bind_param('sssssss',
$varTname1Bind,
$varTnameBind,
$varCityBind,
$varBplayerBind,
$varYearformedBind,
$varWebsiteBind);
for($i = 1; i < 5; $i++)
{
$varTname1Bind = $varTname['G'.$i];
$varTnameBind = $varTname['G'.$i];
$varCityBind = $varCity['G'.$i];
$varBplayerBind = $varBplayer['G'.$i];
$varYearformedBind = $varYearformed['G'.$i];
$varWebsiteBind = $varWebsite['G'.$i];
$stmt->execute();
}
zaoszczędzi Ci ile kodu musisz zrobić