I am generating a form fields and I assume I need to have different name for each of the form fields so I am adding an ID of each of the separate loop iteration to the name of each fields.
The problem is that POST submit array is all mashed together and I'm not sure how to separate into an array with separate sub-arrays:
Passing loop created fields with specific ID per field name:
function display(arrayObject) {
$token = md5(uniqid());
$_SESSION['token'] = $token;
echo('<form></table>');
foreach($arrayObject as $field) {
echo('<tr><td><a href="index.php?deletefield='.$field['id'].'&deletetoken='.$deletetoken.'">X</a></td>
<td><input type="text" name="order'.$field['id'].'" value="'.$field['orderid'].'"></td>
<td><input type="text" name="name'.$field['id'].'" value="'.$field['name'].'"></td>
<td><input type="text" name="type'.$field['id'].'" value="'.$field['type'].'"></td>
<td><input type="text" name="length'.$field['id'].'" value="'.$field['length'].'"></td>
<td><center><input type="checkbox" name="required'.$field['id'].'" value="'.$field['required'].'" checked></center></td>
<td><input type="text" name="description'.$field['id'].'" value="'.$field['description'].'"></td></tr>');
}
echo('<tr><td colspan="7"><br><center><input type="hidden" name="token" value="'.$token.'">
<input type="submit" value="Save Changes"></td></tr>
</table></form>');
}
Returning POST Array:
Array (
[order1] => 0 [name#1] => token [type1] => hidden [length1] => 100 [description1] => some text.
[order3] => 1 [name3] => firstname [type3] => text [length3] => 100 [required3] => 1 [description3] => first name
[order2] => 2 [name2] => lastname [type2] => text [length2] => 100 [required2] => 1 [description2] => last name
[token] => edc4e81c4391269886029896795d0e2d
)
And what I need so I can loop through this set of data:
Array (
Array ( [order] => 0 [name] => token [type] => hidden [length] => 100 [description] => some text. ),
Array ( [order] => 1 [name] => firstname [type] => text [length] => 100 [required] => 1 [description] => first name ),
Array ( [order] => 2 [name] => lastname [type] => text [length] => 100 [required] => 1 [description] => last name ),
Array ( [token] => edc4e81c4391269886029896795d0e2d )
)