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

Przeprowadź pętlę przez tablice wejściowe formularzy w php

Poprawne rozwiązanie będzie zależeć od tego, czy planujesz przechowywać wartości skalarne w $_POST['invoice']['new_item_attributes'], czy też planujesz zrobić z tego tablicę tablic (innymi słowy, planujesz mieć wielokrotności nowych_item_attributes .

Jeśli planujesz tylko przechowywanie wartości skalarnych, najpierw musisz zmienić każdy z elementów formularza, aby wyglądał tak:

name="inovoice[new_item_attributes][description]"

Zauważysz, że pusty [] zniknął.

Twoja pętla powinna wyglądać tak:

foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
    $data = array('description => $value);
}

W przeciwnym razie musisz użyć tego w kodzie PHP:

foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
         $data = array('description' => $val['description']);
}

Lub:

foreach($_POST['invoice']['new_item_attributes'] as $key => $val) {
     foreach($val as $sub => $value) {
         $data = array($sub => $value);
     }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Minimalizowanie zapytań SQL przy użyciu sprzężenia z relacją jeden-do-wielu

  2. Umieść wynik zapytania Mysql w tablicy wewnątrz klasy

  3. Pobieranie współrzędnych typu punktu MySQL

  4. Czy mogę ponownie użyć wyrażenia w zapytaniu MySQL jako zmiennej dla innego pola?

  5. Nie udało się znaleźć prawidłowego katalogu danych. Ogólna instalacja binarna MySQL