Правите foreach на $_POST
а не върху масивите име/възраст. Трябва да правите foreach за масив от име или възраст по следния начин:
if (
!empty($_POST['name']) && !empty($_POST['age']) &&
is_array($_POST['name']) && is_array($_POST['age']) &&
count($_POST['name']) === count($_POST['age'])
) {
$name_array = $_POST['name'];
$age_array = $_POST['age'];
for ($i = 0; $i < count($name_array); $i++) {
$name = mysql_real_escape_string($name_array[$i]);
$age = mysql_real_escape_string($age_array[$i]);
mysql_query("INSERT INTO users (name, age) VALUES ('$name', '$age')");
}
}
Също така бих отметил, че в момента сте податливи на SQL инжекция, така че добавих стъпката за избягване на низовете ви за име/възраст.
Също така силно бих препоръчал просто да направите едно групово вмъкване в DB вместо вмъкване на всеки запис поотделно (ще оставя това на вас да приложите). Този подход почти винаги е за предпочитане от гледна точка на производителността.
И накрая, НАИСТИНА не трябва да използвате mysql_*
функции, тъй като са остарели. Помислете за промяна на mysqli или PDO.