2010-12-09 67 views
1

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

回答

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> 
0

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

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

你的PHP脚本将进行更新,以寻找这些新的输入并保存它保存了第一个以同样的方式。

0

这是可能的,但你需要使用JavaScript。查询this为例。

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

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); 
} 

感谢。

+0

感谢您的答复,但它只是创建一个文本框,我应该怎么弄在PHP从HTML页面的岗位价值 – hunter 2010-12-09 11:07:57

+0

嗨,你可以通过使用$ _REQUEST ['field_name']获得。这个文本框发布为array.so,你会得到你的PHP页面上的文本框数组。 – Chandresh 2010-12-09 11:20:32

+0

我不能得到你的观点在PHP PHP新手,所以你可以请帮我深入我的意思是你可以给我的例子我怎么能得到我的问题是我有两个textfields(书,作者),如果我点击添加另一本书两个文本框创建把这些数据放在这些字段中,然后点击保存按钮将所有这些数据的这4个字段发布到php script.but我怎么能得到这个我有这个问题可以请给我任何例子我会非常感谢给你。 – hunter 2010-12-09 11:29:39

0

ü需要根据添加的文本框中添加号码使用javascript新的文本框,并建立UR SQL。正如我在我的问题,我需要创建两个字段,然后把它们保存到数据库中提到