I'm trying to build some xml from an array with the help from another
array.
In one array I have
$cells
Array
(
[0] =CELL0
[6] =CELL2
)
...
etc
In another I have:
Array
(
[id] =38
[form_id] =3
[order] =1
[type] =grid
[name] =CELL0
[value] =Period
)
Array
(
[id] =39
[form_id] =3
[order] =1
[type] =grid
[name] =CELL0
[value] =type
)
.... continues..
Array
(
[id] =47
[form_id] =3
[order] =2
[type] =grid
[name] =CELL2
[value] =>
)
Array
(
[id] =48
[form_id] =3
[order] =2
[type] =grid
[name] =CELL2
[value] =>
)
What I want to do is for CELL0 for example, get all the data in the
other array pertaining to this value such that I have CELL0 data in
another new array and CELL1 data in another array. But when I am going
through the data, Ever 6 records I need to close the XML and reset the
count.
So the data string I want to build for CELL0:
<data>
<data>Value1</data>
<data>Value2</data>
<data>Value3</data>
<data>Value4</data>
<data>Value5</data>
<data>Value6</data>
</data>
....
In array form
[CELL0]
=<data><data>Va lue1</data>.....</data>
[CELL1]
=<data><data>Va lue1</data>....</data>
This is what I have so far:
foreach( $grid_cells as $key =$cell )
{
$colcount = 1;
foreach( $grids as $key =$form_record )
{
if ( $cell == $form_record['name'] )
{
if ( $colcount == 1) {
$grid_data[$form_record['name']] .= "<data>"; // Start of row
$grid_data[$form_record['name']] .= "<data>" .
$form_record['value'] . "</data>"; // middle of row
}
if ( $colcount <= $cols )
{
$grid_data[$form_record['name']] .= "<data>" .
$form_record['value'] . "</data>"; // middle of row
$colcount++;
}
if ($colcount $cols) {
$grid_data[$form_record['name']] .= "</data>"; // end of row
$colcount = 1;
}
} // end if
}
}
$grid_cells contains :
Array
(
[0] =CELL0
[6] =CELL2
)
....etc
$grids contains :
Array
(
[id] =37
[form_id] =3
[order] =1
[type] =grid
[name] =CELL0
[value] =Client Name
)
This produces:
Array
(
[CELL0] =<data><data>Cl ient Name</data><data>Clie nt
Name</data><data>Peri od</data><data>type </data><data>Desc ription</data><data>2349 8</data><data></data></data>
[CELL2] =>
<data><data></data><data></data><data></data><data></data><data></data><data></data><data></data></data>
)
It's something simple, can anyone help?
array.
In one array I have
$cells
Array
(
[0] =CELL0
[6] =CELL2
)
...
etc
In another I have:
Array
(
[id] =38
[form_id] =3
[order] =1
[type] =grid
[name] =CELL0
[value] =Period
)
Array
(
[id] =39
[form_id] =3
[order] =1
[type] =grid
[name] =CELL0
[value] =type
)
.... continues..
Array
(
[id] =47
[form_id] =3
[order] =2
[type] =grid
[name] =CELL2
[value] =>
)
Array
(
[id] =48
[form_id] =3
[order] =2
[type] =grid
[name] =CELL2
[value] =>
)
What I want to do is for CELL0 for example, get all the data in the
other array pertaining to this value such that I have CELL0 data in
another new array and CELL1 data in another array. But when I am going
through the data, Ever 6 records I need to close the XML and reset the
count.
So the data string I want to build for CELL0:
<data>
<data>Value1</data>
<data>Value2</data>
<data>Value3</data>
<data>Value4</data>
<data>Value5</data>
<data>Value6</data>
</data>
....
In array form
[CELL0]
=<data><data>Va lue1</data>.....</data>
[CELL1]
=<data><data>Va lue1</data>....</data>
This is what I have so far:
foreach( $grid_cells as $key =$cell )
{
$colcount = 1;
foreach( $grids as $key =$form_record )
{
if ( $cell == $form_record['name'] )
{
if ( $colcount == 1) {
$grid_data[$form_record['name']] .= "<data>"; // Start of row
$grid_data[$form_record['name']] .= "<data>" .
$form_record['value'] . "</data>"; // middle of row
}
if ( $colcount <= $cols )
{
$grid_data[$form_record['name']] .= "<data>" .
$form_record['value'] . "</data>"; // middle of row
$colcount++;
}
if ($colcount $cols) {
$grid_data[$form_record['name']] .= "</data>"; // end of row
$colcount = 1;
}
} // end if
}
}
$grid_cells contains :
Array
(
[0] =CELL0
[6] =CELL2
)
....etc
$grids contains :
Array
(
[id] =37
[form_id] =3
[order] =1
[type] =grid
[name] =CELL0
[value] =Client Name
)
This produces:
Array
(
[CELL0] =<data><data>Cl ient Name</data><data>Clie nt
Name</data><data>Peri od</data><data>type </data><data>Desc ription</data><data>2349 8</data><data></data></data>
[CELL2] =>
<data><data></data><data></data><data></data><data></data><data></data><data></data><data></data></data>
)
It's something simple, can anyone help?
Comment