Mysql
 sql >> Baza danych >  >> RDS >> Mysql

php wstawia wiele wierszy do bazy danych MYSQL

Jeśli otrzymujesz tablicę z formularza HTML, musisz zapętlić tę tablicę i wstawić każdy wiersz osobno do DB. Aby to zrobić, musisz użyć przygotowanej instrukcji i pętli.

if (isset($_GET['submit'])) {
    $client_id = $value->ID; // Wherever this value comes from...

    // Insert new sales order
    $stmt = $mysql->prepare('INSERT INTO salesorder (client_id) VALUES (?)');
    $stmt->bind_param('s', $client_id);
    $stmt->execute();
    $stmt->store_result();

    $order_id = $mysql->insert_id;

    // prepare the SQL statement
    $orderline_stmt = $mysql->prepare('INSERT INTO orderline (order_id, food_id, qty) VALUES (?,?,?)');

    // loop on each element from HTML form 
    // i.e. <input name="foodid[]" >
    foreach ($_GET['foodid'] as $key => $food_id) {
        $qty = $_GET['qty']; // should this be an array too?
        // $qty = $_GET['qty'][$key]; <-- if it's also an array

        $orderline_stmt->bind_param('sss', $order_id, $food_id, $qty);
        $orderline_stmt->execute();
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ostateczny koszmar dotyczący starszych baz danych MySQL

  2. JavaScript Potwierdź przed usunięciem za pomocą PHP/MYSQL

  3. Czy konieczne jest napisanie ROLLBACK, jeśli zapytania nie powiodą się?

  4. Czy można użyć pliku .mylogin.cnf w c# do nawiązania połączenia?

  5. Czy FCM (firebase cloudmessaging) Token dla jednego urządzenia czy dla jednego konta?