pegar valor de campo na tabela maysql e preencher input
preciso retornar o valor de um campo do banco de dados maysql e jogar esse valor em um input. Segue meu codigo: onde estou errando?
treco do arquivo home.php, O FORM:
--------------------------------------------------------------
arquivo unitario.php
--------------------------------------------------------------------
arquivo ajax:
treco do arquivo home.php, O FORM:
<form name="FormR" action="system/comanda/create_ite_comanda_rapido.php" method="post" enctype="multipart/form-data"> <div class="row text-center"> <div class="col-sm-3 text-center"> </div> <div class="col-sm-3 text-center"> <div class="form-group text-right"> <label>Cód. Produto</label> <input type="text" class="form-control" id="produto_r" placeholder="" name="produto_r" onblur="getUnitario();"> <input type="text" class="form-control" id="valor_r" placeholder="valor" name="valor_r" > </div> </div> <div class="col-sm-3 text-center"> <div class="form-group text-right"> <label>Quant.</label> <input type="text" class="form-control" id="quant_r" placeholder="" name="quant_r"> <input type="hidden" class="form-control" id="total_r" placeholder="total" name="total_r" > <input type="hidden" class="form-control" id="comanda_r" placeholder="" name="comanda_r" readonly value="<?php echo $IdComanda?>"> <input type="hidden" class="form-control" id="mesa_r" placeholder="" name="mesa_r" readonly value="<?php echo $mesa?>"> </div> </div> <div class="col-sm-3"> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <br/> <button type="submit" class="btn preto">Salvar</button> </div> </div> </div> </div> </form>
--------------------------------------------------------------
arquivo unitario.php
<?php if(!session_id()): session_start(); endif; require_once('_app/Config.inc.php'); // Verifica se existe a variável txtnome if (isset($_GET["idpro"])): $idProduto = $_GET["idpro"]; // Verifica se a variável está vazia if (empty($idProduto)): $sql = "SELECT * FROM grade"; else: $idProduto .= "%"; $sql = "SELECT * FROM grade WHERE grID like '$idProduto'"; endif; sleep(1); // atrasa a execucao do script em 1 segundo $read = new Read; $read->FullRead($sql); // Verifica se a consulta retornou linhas if ($read->getResult()): // Captura os dados da consulta e inseri na tabela HTML foreach ($read->getResult() as $cat): extract($cat); $return = $grPCO_VDA; endforeach; echo $return; else: // Se a consulta não retornar nenhum valor, exibi mensagem para o usuário echo "Não foram encontrados registros!"; endif; endif; ?>
--------------------------------------------------------------------
arquivo ajax:
/** * Função para criar um objeto XMLHTTPRequest */ function CriaRequest() { try{ request = new XMLHttpRequest(); }catch (IEAtual){ try{ request = new ActiveXObject("Msxml2.XMLHTTP"); }catch(IEAntigo){ try{ request = new ActiveXObject("Microsoft.XMLHTTP"); }catch(falha){ request = false; } } } if (!request) alert("Seu Navegador não suporta Ajax!"); else return request; } /** * Função para enviar o preço unitaro do produto */ function getUnitario() { // Declaração de Variáveis var idProduto = document.getElementById("produto_r").value; var result = document.getElementById("valor_r").value; var xmlreq = CriaRequest(); // Exibi a imagem de progresso result.innerHTML = '<img src="Progresso1.gif" width="60" height="60"/>'; // Iniciar uma requisição xmlreq.open("GET", "unitario.php?idpro=" + idProduto, true); // Atribui uma função para ser executada sempre que houver uma mudança de ado xmlreq.onreadystatechange = function(){ // Verifica se foi concluído com sucesso e a conexão fechada (readyState=4) if (xmlreq.readyState == 4) { // Verifica se o arquivo foi encontrado com sucesso if (xmlreq.status == 200) { result.innerHTML = xmlreq.responseText; }else{ result.innerHTML = "Erro: " + xmlreq.statusText; } } }; xmlreq.send(null); }
Joao Silva
Curtidas 0
Respostas
Romulo Sousa
11/10/2019
Qual o erro que acontece?
GOSTEI 0
Joao Silva
11/10/2019
Qual o erro que acontece?
nada, simplesmente não acontece nada
GOSTEI 0
Luiz Henrique
11/10/2019
Amigo se vc quer preencher os campos inputs com os dados do BD vc cria uma conexão com ele antes do formulario pegando os dados que vc quer e insere na propriedade "value" dos inputs.
GOSTEI 0
Delciney Oliveira
11/10/2019
Bom eu faria a query normalmente e usaria o retorno dela no foreach com o comando echo '<input type="text" id="name" name="name" value="$RetornoBD->NomeCampo"/>'; jogando na tela o input já preenchido sem usar o ajax.
GOSTEI 0
Joao Silva
11/10/2019
Bom eu faria a query normalmente e usaria o retorno dela no foreach com o comando echo ''<input type="text" id="name" name="name" value="$RetornoBD->NomeCampo"/>''; jogando na tela o input já preenchido sem usar o ajax.
vou explicar a situação: em um select eu seleciono um produto (do banco de dados). E preciso preencher o input VALOR com o valor unitario do produto que esta na base de dados. Como no select o value é preenchido com o ID do produto, eu posso retornar ao banco e pesquisar a ID e retornar o valor unitario.
GOSTEI 0
Joao Silva
11/10/2019
Ola, bom dia!
Retomando os trabalhos com essa rotina:
Vou tentar explicar melhor: tenho um select onde eu escolherei um produto e a VALUE seré igual a ID do produto. Preciso pegar essa VALUE coma ID do produto e pesquisar-la no cadastro de produtos (MYSQL), encontrando o produto eu preciso pegar o valor do campo VALOR-UNITARIO e defini-lo como o VALUE do input VALOR.
Retomando os trabalhos com essa rotina:
Vou tentar explicar melhor: tenho um select onde eu escolherei um produto e a VALUE seré igual a ID do produto. Preciso pegar essa VALUE coma ID do produto e pesquisar-la no cadastro de produtos (MYSQL), encontrando o produto eu preciso pegar o valor do campo VALOR-UNITARIO e defini-lo como o VALUE do input VALOR.
GOSTEI 0
Joao Silva
11/10/2019
Gente tem um detalhe muito importante: no exemplo aqui da Devmedia no qual eu me baseei a funçao ajax e chamada no onexit do botao submit do form e no meu fonte eu to chamado no onblur do input
GOSTEI 0