My 3rd foreach is creating 2 arrays with null values, I wanted to understand why, so I am not able to insert into the database giving a var_dump ($ product) it shows me the correct results, the 3 products I have in xml, but when I create the array to insert into the database it is creating 5 arrays, 2 of which come with null values. I do not know if it is logic error or something else. It returns me as follows:
array(6) {
["id_produto"]=>
string(0) ""
["nome"]=>
string(0) ""
["descricao"]=>
string(0) ""
["valor"]=>
string(0) ""
["tipo_produto_id_tipo"]=>
string(1) "3"
["categoria_id_categoria"]=>
string(1) "2"
}
array(6) {
["id_produto"]=>
string(1) "1"
["nome"]=>
string(12) "BATATA FRITA"
["descricao"]=>
string(26) "BATATA FRITA MUITO DELIOSA"
["valor"]=>
string(6) "6.5000"
["tipo_produto_id_tipo"]=>
string(1) "3"
["categoria_id_categoria"]=>
string(1) "2"
}
array(6) {
["id_produto"]=>
string(0) ""
["nome"]=>
string(0) ""
["descricao"]=>
string(0) ""
["valor"]=>
string(0) ""
["tipo_produto_id_tipo"]=>
string(1) "3"
["categoria_id_categoria"]=>
string(1) "2"
}
array(6) {
["id_produto"]=>
string(1) "2"
["nome"]=>
string(21) "HAMBURGER DA TIA FILO"
["descricao"]=>
string(26) "DELICIOSO HAMBURGER DA TIA"
["valor"]=>
string(6) "3.9100"
["tipo_produto_id_tipo"]=>
string(1) "3"
["categoria_id_categoria"]=>
string(1) "2"
}
array(6) {
["id_produto"]=>
string(1) "3"
["nome"]=>
string(8) "X-SALADA"
["descricao"]=>
string(8) "X-SALADA"
["valor"]=>
string(6) "5.0000"
["tipo_produto_id_tipo"]=>
string(1) "3"
["categoria_id_categoria"]=>
string(1) "2"
}
function setProduto($xml) {
$ci = get_instance();
gravarDados($xml."\n",'setProduto');
$xml = '<Grupos><Grupo Grupo="ALIMENTAR"><SubGrupo SubGrupo="ACOMPANHAMENTO"><observacoes /><produto codigo="1" nome="BATATA FRITA" descricao="BATATA FRITA MUITO DELIOSA" preco="6.5000" permiteFracao="0" cobraServico="1" modoPreparo=""><adicionais /></produto></SubGrupo><SubGrupo SubGrupo="LANCHES"><observacoes /><produto codigo="2" nome="HAMBURGER DA TIA FILO" descricao="DELICIOSO HAMBURGER DA TIA" preco="3.9100" permiteFracao="0" cobraServico="1" modoPreparo=""><adicionais /></produto><produto codigo="3" nome="X-SALADA" descricao="X-SALADA" preco="5.0000" permiteFracao="0" cobraServico="1" modoPreparo=""><adicionais /></produto></SubGrupo></Grupo></Grupos>';
$dados = simplexml_load_string($xml);
foreach ($dados as $grupo) {//mostra os grupos existentes
$grupos = $ci->Cadastros_model->busca_todos('categoria');
//echo $grupo->attributes()->Grupo;
//var_dump($grupo->attributes()->Grupo);
//var_dump($grupo);
foreach ($grupo as $subgrupo) {//mostra cada subgrupo
$arraysubgrupos = array(
'nome' => "".$subgrupo->attributes()->SubGrupo."",
);
//$ci->Cadastros_model->incluir('tipo_produto', $arraysubgrupos);
$id_produto = mysql_insert_id();
$arraygrupos = array(
'nome' => "".$grupo->attributes()->Grupo."",
'tipo_id_tipo_produto' => "".$id_produto.""
);
// $ci->Cadastros_model->incluir('categoria', $arraygrupos);
$id_grupo = mysql_insert_id();
//var_dump($subgrupo);
foreach ($subgrupo as $produto) {//exibi os produtos
//echo $produto->attributes()->nome;
//echo $produto->attributes()->codigo;
//var_dump($produto);
$arrayprodutos = array(
'id_produto' => ''.$produto->attributes()->codigo.'',
'nome' => "".$produto->attributes()->nome."",
'descricao' => "".$produto->attributes()->descricao."",
'valor' => "".$produto->attributes()->preco."",
'tipo_produto_id_tipo' => '3',
'categoria_id_categoria' => '2'
);
$ci->Cadastros_model->incluir('produtos', $arrayprodutos);
print_r($ci->db->last_query());
echo "<br>";
}
}
}
}