Anda melakukan foreach pada $_POST
daripada pada array nama/usia. Anda harus melakukan foreach pada array nama atau usia seperti ini:
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')");
}
}
Saya juga akan mencatat bahwa Anda saat ini rentan terhadap injeksi SQL jadi saya menambahkan langkah keluar dari string Anda untuk nama/usia.
Saya juga sangat menyarankan hanya membuat satu sisipan massal ke dalam DB alih-alih menyisipkan setiap catatan satu per satu (saya akan menyerahkannya kepada Anda untuk mengimplementasikannya). Pendekatan ini hampir selalu lebih disukai dari sudut pandang kinerja.
Akhirnya, Anda BENAR-BENAR tidak boleh menggunakan mysql_*
berfungsi karena tidak digunakan lagi. Pertimbangkan untuk mengubah ke mysqli atau PDO.