Add multiple record at once with foreach

0

Good morning, how would I make this entry all at once fill in several tables? Mine is not working ...

See my code:

// Atribui uma conexão PDO
$conexao = conexao::getInstance();

// Recebe os dados enviados pela submissão
$acao  = (isset($_POST['acao'])) ? $_POST['acao'] : '';
$id    = (isset($_POST['id'])) ? $_POST['id'] : '';
$recibo  = (isset($_POST['recibo'])) ? $_POST['recibo'] : '';
$data  = (isset($_POST['data'])) ? $_POST['data'] : '';
$registro  = (isset($_POST['registro'])) ? $_POST['registro'] : '';
$funcao  = (isset($_POST['funcao'])) ? $_POST['funcao'] : '';
$nome  = (isset($_POST['nome'])) ? $_POST['nome'] : '';
$dinheiro  = (isset($_POST['dinheiro'])) ? $_POST['dinheiro'] : '';
$seguro  = (isset($_POST['seguro'])) ? $_POST['seguro'] : '';
$outros  = (isset($_POST['outros'])) ? $_POST['outros'] : '';               

// Valida os dados recebidos
$mensagem = '';
if ($acao == 'editar' && $id == ''):
    $mensagem .= '<li>ID do registros desconhecido.</li>';
endif;

// Se for ação diferente de excluir valida os dados obrigatórios
if ($acao != 'excluir'):

    if ($mensagem != ''):
        $mensagem = '<ul>' . $mensagem . '</ul>';
        echo "<div class='alert alert-danger' role='alert'>".$mensagem."</div> ";
        exit;
    endif;

    // Constrói a data no formato ANSI yyyy/mm/dd
    //$data_temp = explode('/', $data_nascimento);
    //$data_ansi = $data_temp[2] . '/' . $data_temp[1] . '/' . $data_temp[0];
endif;

// Verifica se foi solicitada a inclusão de dados
if ($acao == 'incluir'):
    foreach($_POST["produto"] as $produto) {
        $sql = ("INSERT INTO financeiro (recibo, data, registro, funcao, nome, dinheiro, seguro, outros)
                         VALUES('.$produto.')") or die('Erro  query.<br>Mensagem do servidor: '.mysql_error());                  

        $stm = $conexao->prepare($sql);
        $stm->bindValue(':recibo', $recibo);
        $stm->bindValue(':data', $data);
        $stm->bindValue(':registro', $registro);
        $stm->bindValue(':funcao', $funcao);
        $stm->bindValue(':nome', $nome);
        $stm->bindValue(':dinheiro', $dinheiro);
        $stm->bindValue(':seguro', $seguro);
        $stm->bindValue(':outros', $outros);
        $retorno = $stm->execute();
    }
    
asked by anonymous 04.06.2018 / 17:23

0 answers