字体:  

怎么动态增加文本框,传后一起提交到数据库

hnchina 发表于: 2008-8-25 18:01 来源: PHPChina 开源社区门户

怎么样动态增加文本框,就是用户可以手动增加多个文本框(当然要求同时也能删除)。然后一次性提交到数据库。

我目前找了一个只能提交最后一行数据到数据库,不知什么原因?


<form action="bbcc22.php" method="POST">   
  <input   type="button"     value="增加一行">   
  <table   border="1"   id="test" cellpadding="1" cellspacing="1">      
     <tr>
     <td width="250">提醒项目  提醒时间  提醒邮件 </td></tr>
      <tr>   
        <td colspan="3"><input size=10 type="text" name="tt"><input size=10 type="text" name="aa"><input size=10 type="text" name="bb"></td>
        </tr>   
  </table>   
  <input value="bbccdd"type="submit">   
  </form>   
  <script>   
  function   addline(content){   
  newline=document.all.test.insertRow();   
  newline.insertCell().innerHTML='<input size=10 type="text" name="tt"><input size=10 type="text" name="aa"><input size=10 type="text" name="bb"><input type="button" value="删除"  ></tr>'   
   
  }   
  function   del(){   
  document.all.test.deleteRow(window.event.srcElement.parentElement.parentElement.rowIndex);   
  }   
  </script>

------------------------------------------------------------------------------------------------------bbcc22.php-------------------
-------------------以下代码只能最后一行插入数据库
<?php
date_default_timezone_set('Asia/Shanghai');
$tt=$_POST["tt"];
$aa=$_POST["aa"];
$bb=$_POST["bb"];

$db=mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('test',$db);
$sql="insert into testmail(tt,aa,bb)values
('$tt','$aa','$bb')";
mysql_query("set names gb2312");
$result=mysql_query($sql,$db);
mysql_close();
//echo "$bb";

?>

最新回复

hnchina at 2008-8-26 09:10:22
高手帮忙啊
xu33 at 2008-8-26 10:11:41
<td colspan="3"><input size=10 type="text"name="tt[]"><input size=10 type="text" name="aa[]"><inputsize=10 type="text" name="bb[]"></td>

JS:
newline.insertCell().innerHTML='<input size=10 type="text"name="tt[]"><input size=10 type="text" name="aa[]"><inputsize=10 type="text" name="bb[]"><input type="button"value="删除"  ></tr>'

PHP:
FOREACH
hnchina at 2008-8-26 11:00:42
FOREACH?? 怎么接收这个数组啊?能详细点么,我是新手
hnchina at 2008-8-26 11:38:07
高手请帮忙啊
hnchina at 2008-8-26 13:09:40
没人帮,自己顶
xu33 at 2008-8-26 13:28:18

CODE:

foreach($_POST['tt'] as $k=>$v) {
  mysql_query("insert into testmail(tt,aa,bb) values ('$v', '$_POST['aa'][$k]', '$_POST['bb'][$k]')" );
}
[ 本帖最后由 xu33 于 2008-8-26 13:29 编辑 ]
hnchina at 2008-8-26 16:07:22
<?php
date_default_timezone_set('Asia/Shanghai');
$tt=$_post["tt"];
$aa=$_POST["aa"];
$bb=$_POST["bb"];
echo $tt;

$db=mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('test',$db);
//$sql="insert into testmail(tt,aa,bb)values('$tt','$aa','$bb')";
foreach($_POST['tt'] as $k=>$v)------------------这行出错
{
  mysql_query("insert into testmail(tt,aa,bb) values ('$v', '$_POST['aa'][$k]',  '$_POST['bb'][$k]')" );
}

mysql_query("set names gb2312");
$result=mysql_query($sql,$db);
mysql_close();
echo $tt;
hnchina at 2008-8-26 16:45:25
<?php
date_default_timezone_set('Asia/Shanghai');
$tt=$_post["tt"];
$aa=$_POST["aa"];
$bb=$_POST["bb"];
echo $tt;

$db=mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('test',$db);
foreach($_POST['tt'] as $k=>$v)------------------这行出错
{
  mysql_query("insert into testmail(tt,aa,bb) values ('$v', '$_POST['aa'][$k]',  '$_POST['bb'][$k]')" );
}

mysql_query("set names gb2312");
$result=mysql_query($sql,$db);
mysql_close();
hnchina at 2008-8-26 17:00:01
为什么我这样插入数据库的是乱码??mysql5.0

<?php
date_default_timezone_set('Asia/Shanghai');
$tt=$_POST["tt"];
$aa=$_POST["aa"];
$bb=$_POST["bb"];


$db=mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('test',$db);


foreach($tt as $k => $v)
{

  mysql_query("insert into testmail (tt, aa, bb) values ('$v','{$aa[$k]}','{$bb[$k]}')");
mysql_query("set names gb2312");
}


$result=mysql_query($sql,$db);
mysql_close();


?>
xu33 at 2008-8-26 17:16:56
HTML:

CODE:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
  <TITLE> New Document </TITLE>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <script type="text/javascript">
function $(id) { return document.getElementById(id); }
var md = {
   table:null,
   conent:'',
   init:function(){
         md.table = $('test');
         md.content = md.table.rows['1'].getElementsByTagName('td')[0].innerHTML;
     $('add').onclick = md.addRow;
         $('remove').onclick = md.removeRow;
   },
   addRow:function(){
         var newRow = md.table.insertRow(md.table.rows.length);
         newRow.insertCell(0).innerHTML = md.content;
   },
   removeRow:function(){ md.table.deleteRow((md.table.rows.length - 0) - 1); }
}
window.onload = md.init;
</script>
</HEAD>
<BODY>
<form action="test.php" method="POST">   
  <input type="button" id="add" value="增加一行">
  <input type="button" id="remove" value="删除一行">
  <table border="1" id="test" cellpadding="1" cellspacing="1">      
     <tr>
     <td width="250">提醒项目  提醒时间  提醒邮件 </td></tr>
      <tr>   
        <td colspan="3"><input size=10 type="text" name="aa[]"><input size=10 type="text" name="bb[]"><input size=10 type="text" name="cc[]">
                </td>
      </tr>   
  </table>   
  <input value="提交" type="submit">   
  </form>
</BODY>
</HTML>
PHP:

CODE:

<?php
header('Content-Type:text/html; charset=utf-8');
$aa = $_POST['aa'];
$bb = $_POST['bb'];
$cc = $_POST['cc'];
foreach ($aa as $k=>$v) {
  echo '第'.($k+1).'行:';
  echo '<br/>'.$v.'<br/>'.$bb[$k].'<br/>'.$cc[$k].'<br/>';
}
?>
莫再问
hnchina at 2008-8-26 18:04:56
<META NAME="Description" CONTENT="">
  <link rel="stylesheet" type="text/css" media="all" href="calendar-win2k-cold-1.css" title="win2k-cold-1" />

  
  <script type="text/javascript" src="js/calendar.js"></script>

  
  <script type="text/javascript" src="js/calendar-zh.js"></script>

  <script type="text/javascript" src="js/calendar-setup.js"></script>
</HEAD>


  <script>   
  function   addline(content){   
         
  newline=document.all.test.insertRow();   
  newline.insertCell().innerHTML='<input size=10 type="text" name="tt[]"><input size=10 type="text" name="aa[]" id="begin_date_b"><input type="reset" value="..."
onclick="return showCalendar('begin_date_b', 'y-m-d');">
这个地方想增加一日历控件报错啊,应该怎么加?

<input size=10 type="text" name="bb[]"><input type="button" value="删除"   onclick="del()"></tr>'   
   
  }   
  function   del(){   
  document.all.test.deleteRow(window.event.srcElement.parentElement.parentElement.rowIndex);   
  }   
  </script>
  

<form action="bbccmail.php" method="POST">   
  <input   type="button"   onclick="addline()"   value="增加一行">   
  <table   border="1"   id="test" cellpadding="1" cellspacing="1">      
     <tr>
     <td width="250">提醒项目  提醒时间  提醒邮件 </td></tr>
      <tr>   
        <td colspan="3"><input size=10 type="text" name="tt[]" ><input size=10 type="text" name="aa[]" id="begin_date_b" ><input type="reset" value="..."
onclick="return showCalendar('begin_date_b', 'y-m-d');"><input size=10 type="text" name="bb[]"></td>
        </tr>   
  </table>   
  <input value="bbccdd"type="submit">   
  </form>