将行添加到HTML表&之后添加到数据库

时间:2013-12-11 10:46:25

标签: php mysql sql

我有一个将行插入数据库的表。目前仅限于2行:

 <form action='insert-expenses.php' method='post'>
 <input type='hidden' value='$taskid' name='taskid'>
 <table width='655' border='1'>
 <tr><td align='left' width='350'><input type='text' name='expense1' style='padding:2px;' size='80'></td><td align='center' width='100'><input type='text' name='expensecost1' style='padding:2px;' size='6'></td></tr>
 <tr><td align='left' width='350'><input type='text' name='expense2' style='padding:2px;' size='80'></td><td align='center' width='100'><input type='text' name='expensecost2' style='padding:2px;' size='6'></td></tr>
 <tr><td align='left' colspan='2'><input style='margin-top: 15px;' type='image' name='submit' src='http://bitrix24.co.uk/demo/report/add-week.jpg' ></td></tr>
 </table>

我想要一个按钮来添加新行。我目前正在尝试使用:

 <script>
 function displayResult()
 {
 var table=document.getElementById("editTable");
 var row=table.insertRow(0);
 var cell1=row.insertCell(0);
 var cell2=row.insertCell(1);
 cell1.innerHTML="New";
 cell2.innerHTML="New";
 }
 </script>

然后使用按钮:

 <button type="button" onclick="displayResult()">Insert new row</button>

该表将具有id = editTable。但是,我如何得到它的下一个数字名称,因为我目前有费用1和费用2所以希望下一个是费用3。我假设我需要将它作为一个数组来完成,然后在我的插入上有一行费用[]

sql3="INSERT into b_report_expenses (USER_ID,EXPENSE_ONE,EXPENSE_TWO,COST_ONE,COST_TWO)
VALUES
 ('$_POST[taskid]','$_POST[expense1]','$_POST[expense2]','$_POST[expensecost1]','$_POST[expensecost2]')";

所以我基本上希望用户点击一个按钮并在html表中添加一行,然后按另一个按钮将其添加到数据库中。我只是不知道如何为添加的每一行识别POST ['inputname']。

您的帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

请不要输入数字名称 你应该在名称中加上一个数组,如

<input name="expense[]".../>

然后在php

ypu会像

那样
$expense = $_POST['expense'];

其中 $ expense将是一个数组,其元素中包含所有输入值。