Отправка и обработка данных формы - PullRequest
1 голос
/ 01 июня 2019

У меня есть форма, которую я хотел бы отправить в saveConfig.php, чтобы данные могли быть сохранены в базе данных MySQL. Я хотел бы передать выбранные параметры формы, а также общую сумму.

<form id="configSave" action="" class="hide-submit">
<div class="btn-configure" id="configSave">
<span class="pcButtonText">
Save
</span>                                               
</div>

<ul id="radio" class="input-list">
  <li>
    <input id="item-1" name="config-prod" value="1.00" type="radio" onchange="updateTotal();">
    <label for="item-1">Item 1</label>
  </li>
  <li>
    <input id="item-2" name="config-prod" value="2.00" type="radio" onchange="updateTotal();">
    <label for="item-2">Item 2</label>
  </li>
  <li>
    <input id="item-3" name="config-prod" value="3.00" type="radio" onchange="updateTotal();">
    <label for="item-3">Item 3</label>
  </li>
</ul>

<select id="plist" name="partlist" onchange="save();">
  <option value="99.99">CPU 1</option>
  <option value="123.00">CPU 2</option>
  <option value="250.54">CPU 3</option>
</select>
</form>
<br>
Total: <input id="total" type="text">

<script>
        $('#configSave').on('click', function () {
            alert("ok");
            $.ajax({
                url: 'saveConfig.php',
                type: "POST",
                data: $('#configSave').serialize(),
                dataType: "JSON",
                contentType: 'application/json;charset=UTF-8',
                success: function (data) {
                    alert('saved');
                },
                error: function (jqXHR, textStatus, errorThrown) {
                    alert(errorThrown);
                }
            });
        });
    </script>

В файле PHP, как я могу получить доступ к данным формы, чтобы сохранить их в базе данных? Я получаю это сообщение об ошибке:

SyntaxError: Unexpected token < in JSON at position 2

1 Ответ

1 голос
/ 01 июня 2019

Эта ошибка означает, что строка JSON, поступающая на сервер PHP, искажена.Причина, по которой он искажен, заключается в том, что вы не можете сериализовать <div>.Метод сериализации предназначен для сериализации элементов формы Кодирование набора элементов формы в виде строки для отправки. .

Изменение:

data: $('#configSave').serialize(),

Кому:

data: $('#form').serialize(),
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...