Преобразовать строки таблицы HTML в массив PHP и сохранить их в базе данных?

Я пытаюсь сохранить строки таблицы html в php-массиве, а затем сохранить массив в базе данных.

<form action="" method="post"> <table class="widefat" id="theTable"> <thead> <tr> <th>Level Identifier</th> <th>Non-logged in message</th> <th>Logged in message</th> </tr> </thead> <tbody> <tr> <td><input type="text" value="" style="height: 19px;background-color: white;font-size:10px;"/></td> <td><textarea style="font-size:10px;" name="promo_msg_free" cols="43" rows="1">This is your custom message template</textarea></td> <td><textarea style="font-size:10px;" name="promo_msg_free" cols="43" rows="1">This is your custom message template</textarea></td> </tr> <tr> <td><input type="text" value="" style="height: 19px;background-color: white;font-size:10px;"/></td> <td><textarea style="font-size:10px;" name="promo_msg_free" cols="43" rows="1"></textarea></td> <td><textarea style="font-size:10px;" name="promo_msg_free" cols="43" rows="1"></textarea></td> </tr> </tbody> </table> </form> 

Как я могу получить данные каждой строки и сохранить ее в элементе массива, и, наконец, я бы сохранил массив в db? благодаря

    ЕСЛИ ВЫ ХОТИТЕ СОХРАНИТЬ HTML КАЖДОГО РУКА:

    Используйте JQuery.

     var rowsArray = {}; var i = 0; $('#theTable tr').each(function({ rowsArray[i] = $(this).html(); // if you want to save the htmls of each row i++; }); 

    затем используйте ajax для публикации этих данных

     $.ajax({ type: 'post', url: URL_TO_UR_SCRIPT, data: { myarray : rowsArray }, success: function(result) { //ur success handler OPTIONAL } }); 

    На стороне PHP вы делаете:

     $array = isset($_POST['myarray']) ? $_POST['myarray'] : false; if ($array) { $array = serialize($array); //UPDATE YOUR DATABASE WITH THIS SERIALIZED ARRAY } 

    вы не можете сохранить php-массив в базу данных, поэтому вам нужно сериализовать его, и когда вы извлекаете его из БД, используйте unserialize ()

    ЕСЛИ вы имели в виду, что хотите сохранить значения входных и текстовых областей, тогда вам нужно установить имена для каждого элемента, а затем получить доступ к ним в своем скрипте с помощью $ _POST.

      $array = array; foreach($_POST as $key => $value) { //sanitize your input here $array[$key] = $value; } $serialized = serialize($array); //save serialized array in your DB 

    ПРИМЕЧАНИЕ / СОВЕТ: FYI не использует таблицу html для размещения элементов формы. Таблицы должны использоваться для представления данных. Вы можете легко сделать что-то, используя divs и css

    Это базовое использование PHP. Вы даете имена своих входов, когда вы отправляете форму, ваш сценарий на странице, представленной на странице, будет выполнять эту работу.

    Ваши значения будут находиться в

     $_POST 

    массив. Таким образом, вы получаете доступ к ним посредством

     $_POST['input_name'] 

    вам нужно будет пройти каждое значение, вызвав его имя, а затем поместите его в базу данных соответственно.