Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rsantanaus

Foreach dentro de Foreach

Recommended Posts

Boa noite, alguém aqui no forum já passou pela necessidade de fazer duas consultas e um insert ao banco de dados no mesmo código? Sendo que a inserção depende das duas consultas?

Explicando melhor, preciso pegar resultado de duas consultas em tabelas distintas e inserir em uma dessas tabelas, no caso estou usando PDO, é um código simples, exemplo do inicio do código no link https://gist.github.com/ronnysantana/e7bf4bef61ea025080074b9b33a3f22a

Seria dois foreach's de consulta e um de inserção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O codigo está ofline para mim, mas eu já precisei fazer sim, você pode resolver isso fazendo uma query com INNER JOIN

$sessao        = new Sessao();
$dados_usuario = new UsuarioPdo();
$nome_usuario  = $_SESSION['username'];
$dados1        = $dados_usuario->verificar_rank_liberado($nome_usuario);

if($dados1 != FALSE){
          foreach($dados1 as $x){
                    $dados1_rank = $x['rank'];
                    $dados2 = $dados_usuario->dados_user($nome_usuario);
                    foreach ($dados2 as $x) {
                              $dados2_rank   = $x['rank'];
                              if($dados1_rank == $dados2_rank){
                                        $_SESSION['rank'] = $dados1_rank;
                                        $rank             = $dados1_rank;
                              }else{
                                        $_SESSION['rank'] = 1;
                                        $rank             = 1;
                              }
                    }
          }
}

O meu ficou dessa forma, da para se fazer com inner join, mas acabei fazendo dois foreach, acho q é mais indicado o innerjoin, mas ai está, eu consegui, então você tambem consegue.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.