Mysql
 sql >> Database >  >> RDS >> Mysql

Per ciascuno di DUE campi di testo in loop, possibile?

Devi ottenere gli indici per accedere ai valori nell'altro array:

foreach($_POST['experiences'] as $idx => $experience) {
    $sql = "INSERT INTO experiences (number, experience, years)
            VALUES ({$idx}, {$experience}, {$_POST['years'][$idx]}");
    // execute query, etc
}

Funzionerà, ma probabilmente non dovresti farlo in questo modo perché ti lascia aperto per iniezioni SQL . Un modo migliore per farlo sarebbe disinfettare i tuoi input (ad esempio: mysql_reaL_escape_string o il suo equivalente mysqli)

Il modo migliore per procedere sarebbe utilizzare le istruzioni preparate :

$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]));
}