Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Foreach de DOIS TextFields Looping, possível?


Você precisa obter os índices para acessar os valores no outro array:
foreach($_POST['experiences'] as $idx => $experience) {
    $sql = "INSERT INTO experiences (number, experience, years)
            VALUES ({$idx}, {$experience}, {$_POST['years'][$idx]}");
    // execute query, etc
}

Isso funcionará, mas você provavelmente não deve fazer dessa maneira porque deixa você aberto para injeções de SQL . Uma maneira melhor de fazer isso seria higienizando suas entradas (por exemplo: mysql_reaL_escape_string ou seu equivalente mysqli)

A melhor maneira seria usar declarações preparadas :
$stmt = $dbh->prepare("INSERT INTO experiences (number, experience, years) 
                       VALUES (?, ?, ?)");

foreach($_POST['experiences'] as $idx => $experience) {
    // pass values and execute
    $stmt->execute(array($idx, $experience, $_POST['years'][$idx]));
}