ivytony Posted March 10, 2008 Share Posted March 10, 2008 The html page includes this below info that I want to get: <form name="bulk_moderate" action="arraypro.php?action=bulkmod" method="post"> <table cellpadding="1" cellspacing="2" border="0"> <tr> <th>Transaction Date </th> <th>Order # </th> <th><center> Sale Amount(no $) </center> </th></tr> <tr bgcolor="#FFFFFF"> <td>Mar 8, 2008 07:45:34 pm</td> <td> <input name="order[501]" type="text" id="order-501" value="" maxlength="50" /> <input name="customerID[501]" type="hidden" id="customerID-501" value="2%" maxlength="50" /> </td> <td><input name="sale[501]" type="text" id="sale-501" value="0.00" maxlength="15" /></td> </tr> <tr bgcolor="#f2f2f2"> <td>Mar 8, 2008 08:30:21 pm</td> <td> <input name="order[502]" type="text" id="order-502" value="" maxlength="50" /> <input name="customerID[502]" type="hidden" id="customerID-502" value="4%" maxlength="50" /> </td> <td><input name="sale[502]" type="text" id="sale-502" value="0.00" maxlength="15" /></td> </tr> <tr bgcolor="#FFFFFF"> <td>Mar 8, 2008 08:33:45 pm</td> <td> <input name="order[503]" type="text" id="order-503" value="" maxlength="50" /> <input name="customerID[503]" type="hidden" id="customerID-503" value="4%" maxlength="50" /> </td> <td><input name="sale[503]" type="text" id="sale-503" value="0.00" maxlength="15" /></td> </tr> </table></form> This form is to update orders in bulk mode (update a bunch of orders). So I need to get the values of input fields for order[iNT] (e.g. order[503]), sale[iNT] and customerID[iNT]. The INT number in the bracket [] will be used to find the record in database and update the order, sale and customerID columns. I tried to write this code: <?php if ($_GET['action'] == "bulkmod") { if(!empty($_POST['submit'])) { $order = array(); $sale = array(); $customerID = array(); foreach ($_POST["order"] as $k => $v) { $order[intval($k)] = $v; } foreach ($_POST["sale"] as $k => $v){ $sale[intval($k)] = $v; } foreach($_POST["customerID"] as $k => $v){ $customerID[intval($k)] = $v; } echo count($order).'<br />'; echo count($sale) .'<br />'; echo count($customerID).'<br />'; foreach($order as $key => $value) { $db->query('UPDATE `' . table_orders . '` SET `order_number` = "$value" WHERE `order_id` = "'.$key.'"'); } ?> Although it works, I am wondering if I can use one two-dimensional array that has columns 'order', 'sale', and 'customerID', $key as row pointer. thanks! Link to comment https://forums.phpfreaks.com/topic/95314-get-values-for-a-2-dimension-array/ Share on other sites More sharing options...
sasa Posted March 10, 2008 Share Posted March 10, 2008 change your form to <input name="orders[501][order]" type="text" id="order-501" value="" maxlength="50" /> <input name="orders[501][customerID]" type="hidden" id="customerID-501" value="2%" maxlength="50" /> </td> <td><input name="orders[501][sale]" type="text" id="sale-501" value="0.00" maxlength="15" /></td> </tr> Link to comment https://forums.phpfreaks.com/topic/95314-get-values-for-a-2-dimension-array/#findComment-488291 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.