Как сохранить несколько данных из динамически добавленных текстовых полей (JavaScript) в базу данных MySQL?
Я пытался это сделать, но безуспешно. Я использую PHP, HTML, JavaScript и MySQL. Вот мой HTML-код:
<code><div id="Author"> <LI>Author</LI> <input type = "text" name="Author[]" value = "1. "/> <input type="button" value="+" id="Authorbutton" onclick="addAuthor()" /> </div> </code>
Если нажать кнопку «Добавить», появится другое текстовое поле, и пользователь введет другое имя. Вот мой JavaScript:
<code>var counter3 = 0; function addAuthor() { // Get the main Div in which all the other divs will be added var mainContainer = document.getElementById('Author'); // Create a new div for holding text and button input elements var newDiv = document.createElement('div'); // Create a new text input var newText = document.createElement('input'); newText.type = "text"; //var i = 1; newText.name = "Author[]"; newText.value = counter3 + 2 + ". "; //Counter starts from 2 since we already have one item //newText.class = "input.text"; // Create a new button input var newDelButton = document.createElement('input'); newDelButton.type = "button"; newDelButton.value = "-"; // Append new text input to the newDiv newDiv.appendChild(newText); // Append new button input to the newDiv newDiv.appendChild(newDelButton); // Append newDiv input to the mainContainer div mainContainer.appendChild(newDiv); counter3++; //i++; // Add a handler to button for deleting the newDiv from the mainContainer newDelButton.onclick = function() { mainContainer.removeChild(newDiv); counter3--; } } </code>
Вот мой PHP-код:
<code>if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db($database, $con); $sql="INSERT INTO savetest (type, number) VALUES ('$_POST[type]','$_POST[Author]')"; if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } echo "1 record added"; mysql_close($con); echo "Thank you for submitting your details!"; </code>
Я слышал, что многие люди могут заставить это работать с помощью массивов, но данные, которые я храню в базе данных,Array
, Неважно, сколько текстовых полей я создал, простоArray
.
Я использую правильный подход? Стоит ли сохранять этот массив данных в полях одной базы данных?