Hello
I have changed the process code abit so it receives
the data from the form and ensures the data in array format.
This has eliminated my previous error.
The problem I am experiencing is the looping is not
displaying the all contents of the arrays.
Do you have any idea what the problem is and how to fix the problem?
<html>
<head></head>
<body>
<!-----------------------form processor---------------------------->
<form action="../common_list_process.php" method="post">
<table>
<tr>
<td> <input type="submit" name="fee_button" value="Submit"
style="color: #ff6600;font-weight:bold; margin-right: 5;"/> </td>
</tr>
</table>
<?php
display();//display form selection and input boxes
?>
</form>
</body>
</html>
<?php
/***------------display function------------**/
//display form selection and input boxes
function display()
{
$op = array();//create empty array
/****This form consist of multiple rows like this****/
echo "<table>\n";
echo "<tr height=\"10\">\n";
echo "<td width=\"9%\" bgcolor=\"#fff8dc\" align=\"\"><span class=\"style15\">
<input type=\"checkbox\" name=\"choice[]\" value=\"A1\">
<span class=\"style1\" >A1</span></span></td>
<td width=\"2%\" bgcolor=\"#fff8dc\" height=\"10\">
<input type=\"text\" name=\"unit[]\" size=\"1\" maxlength=\"2\" value =\"$a_unit\"/></td>
<td width=\"32%\" bgcolor=\"#ebeae0\" class=\"style11\">General</td>
<td width=\"2%\" bgcolor=\"#fff8dc\" height=\"10\">
<input type=\"text\" name=\"money[]\" size=\"1\" maxlength=\"2\" value =\"$money\"/></td>\n";
echo "<td width=\"9%\" bgcolor=\"#fff8dc\" align=\"\"><span class=\"style15\">
<input type=\"checkbox\" name=\"op[choice][]\" value=\"A7\">
<span class=\"style1\" >A7</span></span></td>
<td width=\"2%\" bgcolor=\"#ebeae0\" height=\"10\">
<input type=\"text\" name=\"op[unit][]\" size=\"1\" maxlength=\"2\" value =\"$a_unit\"/></td>
<td width=\"32%\" bgcolor=\"#ebeae0\" class=\"style11\">Intermediate</td>\n";
<td width=\"2%\" bgcolor=\"#fff8dc\" height=\"10\">
<input type=\"text\" name=\"money[]\" size=\"1\" maxlength=\"2\" value =\"$money\"/></td>\n";
echo "</tr>\n";
echo "</table>\n";
$all[] = choice;
$all[] = unit;
$all[] = money;
return $all;
}
list($choice, $unit, $money) = display(); //unpack array
?>
/***********common_list_process.php*************/
$fee1_choice = $_POST['choice'];
if(is_array($fee1_choice ))
{
$fee1_choice = array_filter($fee1_choice );
}
else
{
$fee1_choice = array("$fee1_choice ");
$fee1_choice = array_filter($fee1_choice);
}
$fee1_unit = $_POST['unit'];
if(is_array($fee1_unit))
{
$fee1_unit = array_filter($fee1_unit);
}
else
{
$fee1_unit = array("$fee1_unit");
$fee1_unit = array_filter($fee1_unit);
}
$fee1_money = $_POST['fee_money'];
if(is_array($fee1_money))
{
$fee1_money = array_filter($fee1_money);
}
else
{
$fee1_money = array("$fee1_money");
$fee1_money = array_filter($fee1_money);
}
/*****This loops the arrays to display the array contents***/
$indices2 = array_keys($fee1_choice);
foreach($indices2 as $index2)
{
//individual value validation from 3 arrays
echo "|". $fee1_choice[$index2];
echo "|". $fee1_unit[$index2];
echo "|". $fee1_money[$index2] .'<br />';
}
/*****---result of array contents--*****/
echo '<pre>',print_r ($_POST, TRUE), '</pre>';//check array values
This display the selected data in the arrays
[choice] => Array
(
[0] => A001
[1] => A004
[2] => A008
)
[unit] => Array
(
[0] => 1
[1] =>
[2] => 2
[3] =>
[4] => 3
[5] =>
[6] =>
[146] =>
)
[fee_money] => Array
(
[0] => 17.75
[1] =>
[2] => 30.70
[3] =>
[4] => 10.25
[5] =>
[6] =>
/*****----result of loop-------*****/
|A001|1|17.75
|A004||
|A008|2|30.70