Tenho uma aplicação em php onde existe uma página que faz a inserção de estoque no banco.
Gostaria que quando o código do produto fosse inserido ele me retornasse em seus respectivos campos o nome e a quantidade existente do mesmo.
Segue abaixo o que eu já possuo:
ViewNovaEntradaDeEstoque:
<form method="post" action="../Model/ModelNovaEntradaEstoque.php" class="form-horizontal col-xs-offset-1">
<!---------- ID usuario ---------->
<input type="hidden" id="idUsuario" name="id" value="<?php echo $id; ?>">
<!---------- Código do produto ---------->
<div class="col-sm-5">
<input type="text" id="codigoProduto" name="codigoProduto" class="form-control" spellcheck="false" autocomplete="false" required="" title="Código do Produto" placeholder="Código do produto" tabindex="1" autofocus="">
</div>
<!---------- Nome do produto ---------->
<div class="col-xs-10">
<input type="text" id="nomeProduto" name="nomeProduto" class="form-control" spellcheck="false" autocomplete="false" title="Nome do Produto" placeholder="Nome do produto" readonly=""">
</div>
<!---------- Data da entrada ---------->
<div class="col-sm-5">
<input type="text" id="dataEntrada" name="dataEntrada" class="form-control" value="<?php echo date("d/m/Y");?>" title="Data da Entrada" readonly="">
</div>
<!---------- Quantidade anterior ---------->
<div class="col-sm-5">
<input type="number" id="quantidadeAnterior" name="quantidadeAnterior" class="form-control" title="Estoque Anterior" placeholder="Quantidade anterior" readonly="">
</div>
<!---------- Quantidade entrada ---------->
<div class="col-sm-5">
<input type="number" id="quantidadeEntrada" name="quantidadeEntrada" class="form-control" title="Quantidade de Entrada" required="" placeholder="Quantidade de entrada" tabindex="2">
</div>
<!---------- Quantidade Atual ---------->
<div class="col-sm-5">
<input type="number" id="quantidadeAtual" name="quantidadeAtual" class="form-control" required="" title="Quantidade Atual" placeholder="Quantidade atual" readonly="">
</div>
<!---------- Salvar ---------->
<div class="col-xs-10">
<button class="btn btn-success form-control" tabindex="3">Salvar</button>
</div>
</form>
O que era pra ser um json bem sucedido chamado de buscaProduto.js
$('#codigoProduto').on('focusout', function () {
var codigo = $(this).val();
var idUsuario = $('#idUsuario');
$.ajax({
dataType: 'json',
type: 'post',
url: '../Model/ModelBuscarProduto.php',
data: {
codigoProduto: codigo,
idUsuario: idUsuario
},
success: function (data)
{
$('#nomeProduto').val(data.nomeProduto);
$('#quantidadeAnterior').val(data.quantidadeAnterior);
}
})
});
A função que deveria fazer a busca no banco de dados pelo produto, mas não sei mais como desenvolver ela, ela teria que me retornar duas coisas e não consigo pensar em um jeito
<?php
class Buscar
{
//---------- Funcao realiza busca por produtos ----------
public function buscaProdutos($conexao, $idUsuario, $codigoProduto)
{
// Faz busca por produto
$busca = mysqli_query($conexao, "SELECT id, idUsuario, nomeProduto, quantidadeAtual FROM estoque WHERE idUsuario = '$idUsuario' AND id = '$codigoProduto'") or die(mysqli_error());
// Valida busca por produto
if($busca->num_rows)
{
// Obtem linha do conjunto de resultados
$array = mysqli_fetch_assoc($busca);
// TODO Retorna array
return $array;
}
else
{
// TODO
}
}
}
Método que deveria funcionar com a função acima, esse método também está sendo chamado pelo json já descrito para realizar a busca:
<?php
// Incluindo arquivos
include_once '../Controller/DatabaseConnection.php';
include_once '../Controller/Buscar.php';
// Instanciando objetos
$conecta = new DatabaseConnection();
$busca = new Buscar();
// Recebendo parametros do json por post
$codigoProduto = $_POST['codigoProduto'];
$idUsuario = $_POST['idUsuario'];
// Atribuindo varaivel a funcao conecta
$conexao = $conecta->AbrirConexao();
// Funcao buscarProduto
$busca->buscaProdutos($conexao, $idUsuario, $codigoProduto);