PHP:将多个输入转换为其他多个输入
我使用jquery添加/删除输入 我使用append为日期/收入添加多个Tr 此外,我还使用另一个append为同一日期的Tr中的收入添加多个td 我添加了多个日期输入,并在此表中添加了多个收入输入 我必须使用name=“date[]”才能使用for循环并在mysql表中插入每个循环 但在sametime中有多个name=“revenue[]” 下面是一个例子PHP:将多个输入转换为其他多个输入,php,javascript,jquery,arrays,Php,Javascript,Jquery,Arrays,我使用jquery添加/删除输入 我使用append为日期/收入添加多个Tr 此外,我还使用另一个append为同一日期的Tr中的收入添加多个td 我添加了多个日期输入,并在此表中添加了多个收入输入 我必须使用name=“date[]”才能使用for循环并在mysql表中插入每个循环 但在sametime中有多个name=“revenue[]” 下面是一个例子 <form method="post" action =""> <table> <tr&g
<form method="post" action ="">
<table>
<tr>
<td>Date : <input type="text" name="date[]" value="25/07/2013"></td>
<td>Revenue : <input type="text" name="revenue[]" value="1"><br>
Revenue : <input type="text" name="revenue[]" value="2" ><br>
</td>
</tr>
<tr>
<td>Date : <input type="text" name="date[]" value="26/07/2013"> </td>
<td>
Revenue : <input type="text" name="revenue[]" value="12"><br>
Revenue : <input type="text" name="revenue[]" value="13"><br>
Revenue : <input type="text" name="revenue[]" value="14"><br>
</td>
</tr>
<tr>
<td>Date : <input type="text" name="date[]" value="27/07/2013"></td>
<td>
Revenue : <input type="text" name="revenue[]" value="30"><br>
</td>
</tr>
</table>
<br><br><input name="submit" value="submit" type="submit">
</form>
我希望结果是这样的
Date : 25/07/2013
Array ( [0] => 1 [1] => 2)
Date : 26/07/2013
Array ( [0] => 12 [1] => 13 [1] => 14)
Date : 27/07/2013
Array ( [0] => 30 )
我想将每个日期插入一个表中,在同一行中有多个收入
像一排
Date : 25/07/2013 Revenue : 1-2
Date : 26/07/2013 Revenue : 12-13,14
Date : 27/07/2013 Revenue : 30
这对我来说非常重要,非常感谢您在创建
日期
和收入
输入时,使用数组符号命名,但包括索引:
<tr>
<td>Date : <input type="text" name="date[0]" value="25/07/2013"></td>
<td>
Revenue : <input type="text" name="revenue[0][]" value="1"><br>
Revenue : <input type="text" name="revenue[0][]" value="2" ><br>
</td>
</tr>
<tr>
<td>Date : <input type="text" name="date[1]" value="26/07/2013"> </td>
<td>
Revenue : <input type="text" name="revenue[1][]" value="12"><br>
Revenue : <input type="text" name="revenue[1][]" value="13"><br>
Revenue : <input type="text" name="revenue[1][]" value="14"><br>
</td>
</tr>
日期:
收入:
收入:
日期:
收入:
收入:
收入:
然后,您应该能够从
$\u POST
中读取它们作为$\u POST['date'][0]
和$\u POST['revenue'][0][0]
,`$\u POST['revenue'][0][1]
您的循环是错误的,但主要问题是,无法区分哪些“收入”属于哪些“日期”.但正如我所说,我使用jquery添加/删除日期/收入的多个输入,所以我认为如果我使用您的方式,在编写php时,如果$\u POST missedNo-您可以使用这些名称在jquery中创建这些元素,这将导致一个问题。我刚刚在这里发布了HTML来展示它是如何工作的。这就是我一直在做的方法。虽然我做了name=“update[0][date]”,name=“update[0][revenue][0]”,name=“update[0][revenue][1]”,等等,Mike W,我理解你的意思,但是听着,我将用jquery做以下操作,我将使用append:在日期的第一个Tr中将收入输入重命名为:revenue[1][],然后用jquery添加日期的第二个Tr并重命名为:revenue input to revenue[2][],如果我删除了第二个TR的数据,该数据有收入[2][],我将用于日期数组上的循环,那么如何检查该日期的收入呢?您的PHP脚本可以在一个foreach
循环中迭代日期,并在第二个内部foreach
循环中迭代收入。具体如何做到这一点取决于您的应用程序。这真的是一个不同的问题。试一试,如果你被卡住了,发一个新问题。
Date : 25/07/2013 Revenue : 1-2
Date : 26/07/2013 Revenue : 12-13,14
Date : 27/07/2013 Revenue : 30
<tr>
<td>Date : <input type="text" name="date[0]" value="25/07/2013"></td>
<td>
Revenue : <input type="text" name="revenue[0][]" value="1"><br>
Revenue : <input type="text" name="revenue[0][]" value="2" ><br>
</td>
</tr>
<tr>
<td>Date : <input type="text" name="date[1]" value="26/07/2013"> </td>
<td>
Revenue : <input type="text" name="revenue[1][]" value="12"><br>
Revenue : <input type="text" name="revenue[1][]" value="13"><br>
Revenue : <input type="text" name="revenue[1][]" value="14"><br>
</td>
</tr>