Jump to content
RenatoD

[Resolvido] Erro Undefined index

Recommended Posts

Boa tarde galera, tudo bem?

 

Estou tentando criar o Update de um formulário. 

A parte de listar todas as informações está funcionando.

O problema é o seguinte... Quando eu clico em Alterar, a pagina é redirecionada para outra pagina que vai conter a procedure de update.

Quando eu faço alguma alteração nos campos de combobox não é exibida nenhuma mensagem de erro e os valores são passados com sucesso. Porem quando não faço nenhuma alteração ele da esse erro de Undefined index. Já revirei o código varias vezes e não consigo descobrir o motivo do problema. 

 

Obs: Os combobox referente aos bancos não apresenta mensagem de erro mesmo sem ter feito alteração.

 

Desde já agradeço a ajuda.

//Update_Transacao.php ----------------------------------------------------------------------------------

<?php
include 'banco_de_dados.php';
$id_transacao = $_POST['id_transacao'];
$consulta = $conn->query("Select 
       transacao.id,
       transacao.Usuario_id,
	   usuario.nome as nome_usuario,
       
       transacao.Tipo_transacao_id,       
       tipo_transacao.nome as nome_tipo_transacao,
       
       transacao.Banco_origem_id,
       a.nome as nome_banco_origem,
       
       transacao.Banco_destino_id,
       b.nome as nome_banco_destino,
       
       transacao.Forma_pagamento_id,
       forma_pagamento.nome as nome_forma_pagamento,
       
       transacao.Tipo_Moeda_id,
       tipo_moeda.nome as nome_tipo_moeda,
       
       transacao.Valor,
       transacao.Data,
       transacao.descricao
       from transacao 
       JOIN usuario on transacao.usuario_id = usuario.id
       JOIN tipo_transacao on transacao.tipo_transacao_id = tipo_transacao.id
       JOIN banco a on a.id = banco_origem_id
       JOIN banco b on b.id = banco_destino_id
       JOIN forma_pagamento on forma_pagamento.id = forma_pagamento_id
       JOIN tipo_moeda on tipo_moeda.id = transacao.tipo_moeda_id
        where transacao.id = '$id_transacao';");

while($linha = $consulta->fetch(PDO::FETCH_ASSOC)){ ?>
    <table  cellpadding="8px">
        <form method="POST" action="Execute_Update.php" name="form">

            <input type="hidden" value="<?php echo "{$linha['id']}";?>" name="Id_Transacao"> </input>

            <tr>
                <td>Nome usuario</td>
                <td><input value="<?php echo "{$linha['Usuario_id']}";?>" name="Nome_Usuario"></td></input></td>

                <td>Tipo Transação</td>
                <td><select name="Tipo_Transacao">
                        <option  value="<?php echo "{$linha['tipo_transacao_id']}";?>"><?php echo "{$linha['nome_tipo_transacao']}";?></option>

                        <?php $tp_transacao = $linha['nome_tipo_transacao'];
                        $tps_trans = $conn->query("select id, nome from tipo_transacao where nome not in (select nome from tipo_transacao where nome = '$tp_transacao')");
                        while($linha_1 = $tps_trans->fetch(PDO::FETCH_ASSOC)){ ?>
                            <option  value=" <?php echo "{$linha_1['id']}";?>"><?php echo "{$linha_1['nome']}";?></option>
                            <?php } ?>
                    </select>
                </td>
            </tr>
            <tr>
                <td>Banco Origem</td>
                <td>
                    <select name="Banco_Origem">
                        <option value="<?php echo "{$linha['Banco_origem_id']}";?>"><?php echo "{$linha['nome_banco_origem']}";?></option>

                        <?php $nm_bd_ori = $linha['nome_banco_origem'];
                        $bancos_origem = $conn->query("select id, nome from banco where nome not in (select nome from banco where nome = '$nm_bd_ori')");
                        while($linha_1 = $bancos_origem->fetch(PDO::FETCH_ASSOC)){ ?>
                            <option  value=" <?php echo "{$linha_1['id']}";?>"><?php echo "{$linha_1['nome']}";?></option>
                            <?php } ?>
                    </select>
                </td>
                <td>Banco Destino</td>
                <td>
                    <select name="Banco_Destino">
                        <option value="<?php echo "{$linha['Banco_destino_id']}";?>"><?php echo "{$linha['nome_banco_destino']}";?></option>

                        <?php $nm_bd_dest = $linha['nome_banco_destino'];
                        $bancos_destino = $conn->query("select id, nome from banco where nome not in (select nome from banco where nome = '$nm_bd_dest')");
                        while($linha_1 = $bancos_destino->fetch(PDO::FETCH_ASSOC)){ ?>
                            <option  value=" <?php echo "{$linha_1['id']}";?>"><?php echo "{$linha_1['nome']}";?></option>
                            <?php } ?>
                    </select>
                </td>
            </tr>
            <!-- Terceira linha-->
            <tr>
                <td>Forma Pagamento</td>
                <td>
                    <select name="Formas_Pagamento">
                        <option value="<?php echo "{$linha['forma_pagamento_id']}";?>"><?php echo "{$linha['nome_forma_pagamento']}"?></option>

                        <?php $nm_form_pag = $linha['nome_forma_pagamento'];
                        $formas_pag = $conn->query("select id, nome from forma_pagamento where nome not in (select nome from forma_pagamento where nome = '$nm_form_pag')");
                        while($linha_1 = $formas_pag->fetch(PDO::FETCH_ASSOC)){ ?>
                            <option  value=" <?php echo "{$linha_1['id']}";?>"><?php echo "{$linha_1['nome']}";?></option>
                            <?php } ?>
                    </select>
                </td>
                <td>Moeda</td>
                <td>
                    <select name="Tipo_Moeda">
                        <option value="<?php echo "{$linha['tipo_moeda']}";?>"><?php echo "{$linha['nome_tipo_moeda']}"?></option>

                        <?php $nm_tp_moeda = $linha['nome_tipo_moeda'];
                        $tp_moeda = $conn->query("select id, nome from tipo_moeda where nome not in(select nome from tipo_moeda where nome = '$nm_tp_moeda')");
                        while($linha_1 = $tp_moeda->fetch(PDO::FETCH_ASSOC)){ ?>
                            <option  value=" <?php echo "{$linha_1['id']}";?>"><?php echo "{$linha_1['nome']}";?></option>
                            <?php } ?>
                    </select>
                </td>
            </tr>
            <tr>
                <td>Valor</td>
                <td><input value="<?php echo "{$linha['Valor']}";?> " name="Valor"></td></input></td>

                <td>Data</td>
                <td><input value="<?php echo "{$linha['Data']}";?>" name="Data"></td></input></td>
            </tr>
            <tr>
                <td colspan="4">Descrição</td>
            </tr>
            <tr>
                <td colspan="4">
                    <textarea name="Descricao" rows="4" cols="90" ><?php echo "{$linha['descricao']}";?></textarea>
                </td>
            </tr>
            <tr>
                <td>
                    <input type="submit" value="Alterar" ></input>
                </td>
            </tr>
        </form>
    </table>
    <br><hr>
    <?php } ?>



//Execute_Update.php -------------------------------------------------------------------------------------------------------------------------------

$Id_Transacao_Update = $_POST['Id_Transacao'];
$Nome_Usuario_Update = $_POST['Nome_Usuario'];

$Tipo_Transacao_Update = isset($_POST['Tipo_Transacao']) ? $_POST['Tipo_Transacao']: '';
$Banco_Origem_Update = isset($_POST['Banco_Origem']) ? $_POST['Banco_Origem']: '';
$Banco_Destino_Update = isset($_POST['Banco_Destino']) ? $_POST['Banco_Destino']: '';
$Formas_Pagamento_Update = isset($_POST['Formas_Pagamento']) ? $_POST['Formas_Pagamento']: '';
$Tipo_Moeda_Update = isset($_POST['Tipo_Moeda']) ? $_POST['Tipo_Moeda']: '';
$Valor_Update = isset($_POST['Valor']) ? $_POST['Valor']: '';
$Data_Update = isset($_POST['Data']) ? $_POST['Data']: '';
$Descricao_Update = isset($_POST['Descricao']) ? $_POST['Descricao']: '';

echo $Id_Transacao_Update."<br>";
echo $Nome_Usuario_Update."<br>";
echo $Tipo_Transacao_Update."<br>";
echo $Banco_Origem_Update."<br>";
echo $Banco_Destino_Update."<br>";
echo $Formas_Pagamento_Update."<br>";
echo $Tipo_Moeda_Update."<br>";
echo $Valor_Update."<br>";
echo $Data_Update."<br>";
echo $Descricao_Update."<br>";


?>

 

mensagem_erro.png

formulario_preenchido.png

apos alterar option do combobox.png

Share this post


Link to post
Share on other sites

O case entre a query e a variável $linha estão errados nos índices que aparecem no erro.

 

Na query estão: Tipo_transacao_idForma_pagamento_id

 

Na variável: 

$linha['tipo_transacao_id']; 
$linha['forma_pagamento_id']

Já para tipo_moeda, ela não existe na query. Está como Tipo_Moeda_id.

  • Obrigado! 1

Share this post


Link to post
Share on other sites
12 horas atrás, Gabriel Heming disse:

O case entre a query e a variável $linha estão errados nos índices que aparecem no erro.

 

Na query estão: Tipo_transacao_idForma_pagamento_id

 

Na variável: 


$linha['tipo_transacao_id']; 
$linha['forma_pagamento_id']

Já para tipo_moeda, ela não existe na query. Está como Tipo_Moeda_id.

 

Fiz as alterações e deu tudo certo.

Muito obrigado pela ajuda.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By EvertonFD
      Olá alguém pode me ajudar?
      estou tentando pegar valores do check box selecionado e por no banco de dados a questão é que:
      Quando eu faço uma seleção vai de boa quando seleciono mais de uma fica tudo em branco.
      estou usando esse codigo:
      <?php if(isset($_POST['submit'])){ if(!empty($_POST['checkArr'])){ foreach($_POST['checkArr'] as $checked){ echo $checked . '<br>'; } } else { echo '<div class="error">Checkbox is not selected!</div>'; } } ?> <div class=" form-row"> <div class="col-md-4 text-left"> <div class="form-check col-md-12"> <input class="form-check-input" type="checkbox" name="checkArr[]" value="Iluminação Publica"> <label class="form-check-label" for="gridCheck"> Iluminação Publica </label> </div> <div class="form-check col-md-12"> <input class="form-check-input" type="checkbox" name="checkArr[]" value="Saneamento Basíco"> <label class="form-check-label" for="gridCheck"> Saneamento Basíco </label> </div> <div class="form-check col-md-12"> <input class="form-check-input" type="checkbox" name="checkArr[]" value="Alamentos"> <label class="form-check-label" for="gridCheck"> Alagamentos </label> </div> //que vai para o insert: <?php session_start(); include_once("../conexao.php"); $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_STRING); $email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL); $tel = filter_input(INPUT_POST, 'telefone', FILTER_SANITIZE_STRING); $bairro = filter_input(INPUT_POST, 'bairro', FILTER_SANITIZE_STRING); $end = filter_input(INPUT_POST, 'end', FILTER_SANITIZE_STRING); //--------------------------------- $problema = filter_input(INPUT_POST, 'checkArr[]', FILTER_SANITIZE_STRING); $observacao = filter_input(INPUT_POST, 'observacao', FILTER_SANITIZE_STRING); //--------------------------------- //$resposta = filter_input(INPUT_POST, 'resposta', FILTER_SANITIZE_STRING); $result_usuario = "INSERT INTO itaim ( nome, email, telefone, bairro, rua_cep, problemas, detalhes, created) VALUES ('$nome', '$email' , '$tel' , '$bairro' , '$end' , '$problema' , '$observacao' , NOW())"; $resultado_usuario = mysqli_query($conn, $result_usuario); if(mysqli_insert_id($conn)){ $_SESSION['msg'] = "<p style='color:green;'>Menssagem envida</p>"; header("Location: ../index.php"); }else{ header("Location: ../index.php"); //$_SESSION['msg'] = "<p style='color:red;'>Houve um errono envio favor informar.</p>"; } Quem puder me ajudar agradeço muito
       
    • By juliosertori
      Amigos, estou utilizando um sistema de FormValidation, e vem pronta algumas coisas, mas estou com dúvida:
       
      Como pego os dados desse POST no PHP?
       
      FormValidation.utils.fetch(formSubmitUrl, { method: 'POST', dataType: 'json', params: { name: form.querySelector('[name="username"]').value, email: form.querySelector('[name="password"]').value, }, }) Obrigado!
    • By msergioaguiar
      boa noite a todos

      hoje um cliente me procurou querendo um sistema.
      ele Trabalha com aposta esportiva ele quer um sistema q quando ele fazer a aposta na conta dele esta aposta seja feita em varios outros usuarios q esta logados em pcs na intarnet.

      Gostaria de uma ajuda como vou fazer isso mais gostei muito do projeto

      desde ja fico muito grato a todos pela ajuda
    • By Usleydocarmo
      Estou com o seguinte erro:
      Ao acessar o meu site na pagina principal tudo ok. Porém quando acesso em um menu que vai carregar um arquivo que está em uma pasta e não na pasta raiz, ai o arquivo css não é carregado.
       
      <a href="usuarios"> home</a> chamo o arquivo funcionarios na mesma pasta onde está o arquivo index.php -funciona
      <a href="usuarios/usuarios"> home</a>  Pasta 'usuarios' e dentro dela chamo o arquivo 'usuarios' - ai não funciona
       
      Descobri que quando entro na pasta usuários fica assim, com a basta no diretório do arquivo. Como corrigir?
      <link rel="stylesheet" href="http://localhost/keiri/admin/usuarios/plugins/fontawesome-free/css/all.min.css&nbsp;">
       
      Meu htaccess
      RewriteRule ^([a-z]+)\/?$ dashboard.php?arquivo=$1 [NC,L]
      RewriteRule ^([a-z]+)\/([a-z]+)$ dashboard.php?pasta=$1&arquivo=$2 [NC,L]
      RewriteRule ^([a-z]+)\/([a-z]+)\/([0-9]+)$ dashboard.php?pasta=$1&arquivo=$2&item=$3 [NC,L]
    • By msantino
      Bom dia.
       
      Estou desenvolvendo uma aplicação que vai acessar e gravar dados via webservice dentro do nosso crm... mas estou com um problema que quando tento fazer o acesso mostra a seguinte mensagem de erro:
       
      Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing Schema: can't import schema from 'http://dsksp015.phonoway.com.br:8051/wsDataServer/mex?xsd=xsd0' in /home/httpd/html/phonoweb.com.br/public_html/carrinhobitrix_busca/teste_soap.php:113 Stack trace: #0 /home/httpd/html/phonoweb.com.br/public_html/carrinhobitrix_busca/teste_soap.php(113): SoapClient->SoapClient('http://187.93.2...') #1 {main} thrown in /home/httpd/html/phonoweb.com.br/public_html/carrinhobitrix_busca/teste_soap.php on line 113
       
      Não sei se faz alguma diferença, mas nosso CRM é o TOTVS RM
       
      Grato.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.