Javascript 动态添加输入元素以形成并将值存储在数据库中
我必须制作一个表单,创建一个按钮,点击它就会出现一个动态文本字段 我的javascript是:Javascript 动态添加输入元素以形成并将值存储在数据库中,javascript,php,jquery,html,forms,Javascript,Php,Jquery,Html,Forms,我必须制作一个表单,创建一个按钮,点击它就会出现一个动态文本字段 我的javascript是: function add() { //Create an input type dynamically. var element = document.createElement("input"); element.style.borderRadius ="5px"; //Assign different attributes to the element.
function add() {
//Create an input type dynamically.
var element = document.createElement("input");
element.style.borderRadius ="5px";
//Assign different attributes to the element.
element.setAttribute("type", "text");
element.setAttribute("value", "ip2");
element.setAttribute("name", "ip2");
element.setAttribute("placeholder", "ip2");
element.setAttribute("required", "true");
var foo = document.getElementById("fooBar");
//Append the element in page (in span).
foo.appendChild(element);
}
我对按钮和所需容器使用以下代码:
<form method="post" action="insert.php">
<INPUT type="button" value="Add" onclick="add(document.forms[0].element.value)"/>
<span id="fooBar"></span>
</form>
输入字段很好。我只想知道如何从动态输入字段中获取值并将其存储在db中
提前感谢一旦fiels添加到fooBar,它就在表单中了。如果您通过提交按钮(参见下面的HTML代码)或通过javascript
document.getElementById(“myForm”).submit()提交表单代码>您必须使用服务器上的脚本(例如,使用PHP)处理发送到服务器的结果
echo '<pre>';
print_r( $_POST ); /* Show ALL given $_POST input */
echo '</pre>';
error_reporting(0);
$conn = mysqli_connect("localhost","root","","pnb");
if( !$conn ) {
die('Could not connect to MySQL: ' . mysqli_error() );
}
if( isset( $_POST['ip2'] ) AND !empty( $_POST['ip2'] ) ) {
$ip2 = $_POST['ip2'];
mysqli_query( $conn, 'INSERT INTO records (ip) VALUES ("' . mysqli_real_escape_string( $conn, $ip2 ) . '")' );
echo 'Row added!';
}
mysqli_close( $conn );
echo';
打印($邮政);/*显示所有给定的$\u POST输入*/
回声';
错误报告(0);
$conn=mysqli_connect(“localhost”、“root”、“pnb”);
如果(!$conn){
die('无法连接到MySQL:'.mysqli_error());
}
if(设置($_POST['ip2'])和!空($_POST['ip2'])){
$ip2=$_POST['ip2'];
mysqli_查询($conn,'插入记录(ip)值('.mysqli_real_escape_字符串($conn,$ip2)。');
echo“添加了行!”;
}
mysqli_close($conn);
HTML代码:
if(isset($_POST['foo'])) {
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$item = $_POST['foo']
$sql = "INSERT INTO thetable (item)
VALUES ('$item')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
}
?>
函数add(){
//动态创建输入类型。
var元素=document.createElement(“输入”);
element.style.borderRadius=“5px”;
//为元素指定不同的属性。
setAttribute(“类型”、“文本”);
setAttribute(“值”、“ip2”);
setAttribute(“名称”、“ip2”);
setAttribute(“占位符”、“ip2”);
元素setAttribute(“必需”、“真”);
var foo=document.getElementById(“fooBar”);
//在页面中追加元素(在span中)。
foo.appendChild(元素);
}
注意:document.forms[0].element.value不存在,因此我从上面的代码中删除了它。我还添加了一个提交按钮,将表单提交到服务器上的insert.php
脚本
上面的脚本将检查是否收到名为“ip2”的post包。它将设置到数据库的MySQLi连接,并在表“tablename”中插入值。上面的代码应该放在insert.php
中,一旦fiels被添加到fooBar中,它就在表单中。如果您通过提交按钮(参见下面的HTML代码)或通过javascriptdocument.getElementById(“myForm”).submit()提交表单代码>您必须使用服务器上的脚本(例如,使用PHP)处理发送到服务器的结果
echo '<pre>';
print_r( $_POST ); /* Show ALL given $_POST input */
echo '</pre>';
error_reporting(0);
$conn = mysqli_connect("localhost","root","","pnb");
if( !$conn ) {
die('Could not connect to MySQL: ' . mysqli_error() );
}
if( isset( $_POST['ip2'] ) AND !empty( $_POST['ip2'] ) ) {
$ip2 = $_POST['ip2'];
mysqli_query( $conn, 'INSERT INTO records (ip) VALUES ("' . mysqli_real_escape_string( $conn, $ip2 ) . '")' );
echo 'Row added!';
}
mysqli_close( $conn );
echo';
打印($邮政);/*显示所有给定的$\u POST输入*/
回声';
错误报告(0);
$conn=mysqli_connect(“localhost”、“root”、“pnb”);
如果(!$conn){
die('无法连接到MySQL:'.mysqli_error());
}
if(设置($_POST['ip2'])和!空($_POST['ip2'])){
$ip2=$_POST['ip2'];
mysqli_查询($conn,'插入记录(ip)值('.mysqli_real_escape_字符串($conn,$ip2)。');
echo“添加了行!”;
}
mysqli_close($conn);
HTML代码:
if(isset($_POST['foo'])) {
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$item = $_POST['foo']
$sql = "INSERT INTO thetable (item)
VALUES ('$item')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
}
?>
函数add(){
//动态创建输入类型。
var元素=document.createElement(“输入”);
element.style.borderRadius=“5px”;
//为元素指定不同的属性。
setAttribute(“类型”、“文本”);
setAttribute(“值”、“ip2”);
setAttribute(“名称”、“ip2”);
setAttribute(“占位符”、“ip2”);
元素setAttribute(“必需”、“真”);
var foo=document.getElementById(“fooBar”);
//在页面中追加元素(在span中)。
foo.appendChild(元素);
}
注意:document.forms[0].element.value不存在,因此我从上面的代码中删除了它。我还添加了一个提交按钮,将表单提交到服务器上的insert.php
脚本
上面的脚本将检查是否收到名为“ip2”的post包。它将设置到数据库的MySQLi连接,并在表“tablename”中插入值。上述代码应放在insert.php
php中:
<form action="" method="post">
<input type="text" name="foo" value="foo">
<input type="submit" value="Submit">
</form>
if(isset($\u POST['foo'])){
$servername=“localhost”;
$username=“username”;
$password=“password”;
$dbname=“myDB”;
//创建连接
$conn=newmysqli($servername、$username、$password、$dbname);
//检查连接
如果($conn->connect\u错误){
die(“连接失败:”.$conn->connect\U错误);
}
$item=$\u POST['foo']
$sql=“插入表格(项目)
值(“$item”)”;
if($conn->query($sql)==TRUE){
echo“新记录创建成功”;
}否则{
echo“Error:”.$sql.“
”$conn->Error;
}
$conn->close();
}
?>
HTML:
此外,如果您以外部文件为目标,则应将表单上的操作attr更新为文件的url,例如action=“target.php”
php:
<form action="" method="post">
<input type="text" name="foo" value="foo">
<input type="submit" value="Submit">
</form>
if(isset($\u POST['foo'])){
$servername=“localhost”;
$username=“username”;
$password=“password”;
$dbname=“myDB”;
//创建连接
$conn=newmysqli($servername、$username、$password、$dbname);
//检查连接
如果($conn->connect\u错误){
die(“连接失败:”.$conn->connect\U错误);
}
$item=$\u POST['foo']
$sql=“插入表格(项目)
值(“$item”)”;
if($conn->query($sql)==TRUE){
echo“新记录创建成功”;
}否则{
echo“Error:”.$sql.“
”$conn->Error;
}
$conn->close();
}
?>
HTML:
此外,如果您以外部文件为目标,则应将表单上的action
attr更新为文件的url,例如action=“target.php”
您可以简单地提交表单,并在后端使用php通过名称attr以值为目标,或者您可以使用js通过类或id
获取值,并执行ajax请求。你有工作数据库连接的代码吗?将其存储在数据库中?你的意思是把它送到一家商店