montano 0 Denunciar post Postado Novembro 4, 2009 Boa tarde, Tenho dois arrays e gostaria de juntar eles, ja tentei com array_unshift, array_merge, array_push, e nenhum funcionou para o meu caso. function relatorio() { //Venda Inside $venda_inside = $this->vendaInside(); //BackLog $backlog_tv = $this->backlogTv(); //Juntar Array //$registros = array_unshift($venda_inside, $backlog_tv); //Retornar para Action return $registros; } function vendaInside(){ $result = $this->query('SELECT cont.n_contrato, cli.nome as cliente, cont.data_agendamento, sit.situacao, cont.data_situacao, cont.comentario, cid.cidade as cidade FROM contrato_tv as cont LEFT JOIN clientes as cli ON (cont.cliente = cli.cod) LEFT JOIN situacoes as sit ON (cont.situacao = sit.cod) LEFT JOIN cidades as cid ON (cid.cod = cli.cidade)' . $this->where); $registros = array(); require_once ('/extranet/model/bean/Relatorios/LogisticaInstalacao.php'); while ($row = mysqli_fetch_assoc($result)) { $registros[self::$ponteiro] = new LogisticaInstalacao(); $registros[self::$ponteiro]->setNContrato($row['n_contrato']); $registros[self::$ponteiro]->setCliente($row['cliente']); $registros[self::$ponteiro]->setServico('Venda Inside'); $registros[self::$ponteiro]->setDataAgendamento($row['data_agendamento']); $registros[self::$ponteiro]->setSituacao($row['situacao']); $registros[self::$ponteiro]->setDataSituacao($row['data_situacao']); $registros[self::$ponteiro]->setCidade($row['cidade']); $registros[self::$ponteiro]->setComentario($row['comentario']); self::$ponteiro++; } return $registros; } function backlogTv(){ $result = $this->query('SELECT cont.n_contrato, serv.servico, cli.nome as cliente, cont.data_agendamento, sit.situacao, cont.data_situacao, cont.comentario, cid.cidade as cidade FROM backlog_tv as cont LEFT JOIN clientes as cli ON (cont.cliente = cli.cod) LEFT JOIN situacoes as sit ON (cont.situacao = sit.cod) LEFT JOIN backlog_servicos as serv ON (cont.servico = serv.cod) LEFT JOIN cidades as cid ON (cid.cod = cli.cidade)' . $this->where); $registros = array(); require_once ('/extranet/model/bean/Relatorios/LogisticaInstalacao.php'); while ($row = mysqli_fetch_assoc($result)) { $registros[self::$ponteiro] = new LogisticaInstalacao(); $registros[self::$ponteiro]->setNContrato($row['n_contrato']); $registros[self::$ponteiro]->setCliente($row['cliente']); $registros[self::$ponteiro]->setServico($row['servico']); $registros[self::$ponteiro]->setDataAgendamento($row['data_agendamento']); $registros[self::$ponteiro]->setSituacao($row['situacao']); $registros[self::$ponteiro]->setDataSituacao($row['data_situacao']); $registros[self::$ponteiro]->setCidade($row['cidade']); $registros[self::$ponteiro]->setComentario($row['comentario']); self::$ponteiro++; } return $registros; } ERRO: [04-Nov-2009 15:12:34] PHP Warning: Invalid argument supplied for foreach() in /extranet/template/Relatorios/LogisticaInstalacao.php on line 41 foreach ($_REQUEST['registros'] as $reg) // Linha do erro { echo '<tr>'; echo '<td>' . $reg->getServico() . '</td>'; echo '<td>' . $reg->getNcontrato() . '</td>'; echo '<td>' . $reg->getCliente() . '</td>'; echo '<td>' . $reg->getDataAgendamento() . '</td>'; echo '<td>' . $reg->getSituacao() . '</td>'; echo '<td>' . $reg->getDataSituacao() . '</td>'; echo '<td>' . $reg->getComentario() . '</td>'; echo '</tr>'; } Botei o codigo todo pois não sei se o problema tambem pode ser pelo array estar guardando objects. obrigado pela força.. Compartilhar este post Link para o post Compartilhar em outros sites
Will Fernando 2 Denunciar post Postado Novembro 4, 2009 bem testei aqui com o array_merge e mesclo correto os dois array.. http://codepad.org/d3gja1Mi caso queira ainda criar um array com esses dois arrays (dimencional).. dai eh so atribuir.. http://codepad.org/b6KwLgr2 valww =] Compartilhar este post Link para o post Compartilhar em outros sites
montano 0 Denunciar post Postado Novembro 4, 2009 Valeu pela ajuda william, Acabei opitando por fazer um UNION no select juntando os dois em 1 select e 1 function. Obrigado pela ajuda. Caso alguem queira o script do Union soh falar que eu posto. valeu Compartilhar este post Link para o post Compartilhar em outros sites