Заполните несколько раз содержимое одних и тех же полей формы и запишите его в несколько строк базы данных - PullRequest
0 голосов
/ 18 декабря 2018

Я построил форму.Я поместил кнопку внутри этой формы под названием «Добавить книгу».Когда пользователь нажимает два поля, появляются: «bookname» и «bookdate»:

               <div class="form-group col-md-3">
                <a class="btn btn-success" onclick="add()" href="#">
                <i class="glyphicon glyphicon-plus icon-white"></i>Add a book
                </a>
                </div>


                <div id="wrapper">
                <!-- champs du formulaire -->
                <div class="form-group col-md-12" id="add" style="display:none;">
                <!-- Bookname -->   
                <div class="form-row">              
                    <div class="form-group col-md-3">
                    <label for="exampleInputPassword1">Name of book</label>
                    <input type="text" class="form-control" id="bookname" name="bookname">
                    </div>
                </div>
                <!-- Bookdate -->   
                <div class="form-row">              
                    <div class="form-group col-md-3">
                    <label for="exampleInputPassword1">Date of book</label>
                    <input type="text" class="form-control" id="bookdate" name="bookdate">
                    </div>
                </div>
                </div>
                </div>

Когда есть только одна книга, нет проблем с проверкой формы и написанием «bookname» и «bookdate»в базу данных проекта.Это очень часто встречается.
Мой вопрос: например, если пользователь нажимает 3 раза на кнопку «добавить книгу» и заполняет 3 раза поля «имя книги» и «bookdate», как я могу сделать в коде, чтобы сохранить всечто в три разные строки в базе?не видите, как я могу это сделать?
Любая помощь будет очень признателен.
Спасибо!

1 Ответ

0 голосов
/ 18 декабря 2018

Вам необходимо изменить атрибут имени на входах bookname и bookdate на обозначение массива, т. Е.

<input type="text" class="form-control" id="bookname" name="bookname[]">
<input type="text" class="form-control" id="bookdate" name="bookdate[]">

Затем в коде PHP вы найдете, что $_POST['bookname'] и $_POST['bookdate'] теперь это массивы значений, так что вы можете перебирать их, например

foreach ($_POST['bookname'] as $k => $bookname) {
    $bookdate = $_POST['bookdate'][$k];
    // write bookname and bookdate to database
    ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...