如何在php中动态创建文本框

时间:2010-12-09 10:33:48

标签: php

干草,我有两个文本框,即 book_name和作者 和一个将数据保存到数据库的按钮。我的问题是可以动态创建文本框,即当用户点击时添加另一个书按钮生成两个文本框,当他点击保存按钮时,两个行(4个texbox的数据)保存到数据库中。 它有可能在PHP ...? (在phpmyadmin中)我们可以在单个表中保存多个记录,点击保存按钮任何帮助都会非常适合

5 个答案:

答案 0 :(得分:1)

不是PHP,而是使用Javascript。 PHP是一种服务器端语言,所有代码都在浏览器获取HTML之前处理。

尝试使用此代码:

<html>
<head>
<title>Dynamic Form</title>
<script language="javascript">
var i = 1;
function changeIt()
{

my_div.innerHTML = my_div.innerHTML +"<br><input type='text' name='mytext'+ i>"
i++;
}
</script>
</head>
<body>

<form name="form" action="post" method="">
<input type="text" name=t1>
<input type="button" value="test" onClick="changeIt()">
<div id="my_div"></div>

</body>

答案 1 :(得分:0)

如果您希望在没有新页面加载的情况下在网页上发生事情,则必须使用在浏览器中运行的JavaScript。

您创建新文本框的按钮需要附加到您编写的JavaScript事件中。

您的PHP脚本必须更新以查找这些新输入并以保存第一个输出的方式保存它们。

答案 2 :(得分:0)

有可能,但你需要使用javascript。请查看this以获取示例。

PHP在服务器端运行,您必须在浏览器端执行此操作。

答案 3 :(得分:0)

你可以使用JavaScript来做到这一点。

尝试以下代码:

function addElement() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
  var newdiv = document.createElement('div');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = 'Element Number '+num+' has been added! <a href=\'#\' onclick=\'removeElement('+divIdName+')\'>Remove the div "'+divIdName+'"</a>';
  ni.appendChild(newdiv);
}

感谢。

答案 4 :(得分:0)

你需要使用javascript添加新的文本框,并根据要添加的文本框的数量构建你的sql。