3
With the help of Milrak Pereira Pessoa and Wéllingthon M. de Souza, I edited my code... I have a product code and it has 5 types and 5 descriptions. I am trying to bring to the user the types and descriptions within the blank table. However, the way I’m trying it adds lines below the table that only has 5 lines as in the image below
Photo 1 => Records in the database, wanted the numbers to be returned within a table to display them to the user
index php.
<!-- Inicio do script criado para função de completar próximos campos -->
<script type='text/javascript'>
$(document).ready(function(){
$("input[name='descri']").blur(function(){
var $codigo_produto = $("input[name='codigo_produto']");
var $id = $("input[name='id']");
var $codigo_tipo = $("input[name='codigo_tipo[]']");
var $descricao = $("input[name='descricao[]']");
$.getJSON('function.php',{
descricao: $( this ).val()
},function( json ){
var html = "";
for (var i = 0; i < json.length; i++) {
html += '<tr>';
html += '<td><input type="hidden" name="id[]" value="'+json[i].codigo_produto+'"></td>';
html += '<td><input type="text" name="codigo_tipo[]" value="'+json[i].codigo_tipo+'" /></td>';
html += '<td><input type="text" name="descricao[]" value="'+json[i].descricao+'" /></td>';
html += '</tr>';
}
$("table tbody").append(html);
});
});
});
</script>
<!-- Fim do script -->
<form action='salvar.php' method='POST'>
<div class='form-group col-lg-4'>
<label> <b>Descrição:</b> </label> <!-- Não é enviado para o banco só está sendo utilizado para preencher os campos a partir deste -->
<input type="text" maxlength="20" name="descri"><br><br>
</div>
<div class='form-group col-lg-4'>
<label> <b>Código do Produto:</b> </label>
<input type="text" maxlength="15" name="codigo_produto"><br><br>
</div>
<table border="2"><!-- Iniciando a Tabela -->
<thead>
<tr><!-- Início dos Títulos da Tabela / Cabeçalho -->
<th>Tipo</th>
<th>Descrição</th>
</tr><!-- Fim dos Títulos da Tabela / Cabeçalho -->
</thead>
<tbody>
<?php for($i = 1; $i <= 5; $i++){ //coloquei este valor para testar ?>
<tr>
<?php
$sql_tipo = "SELECT * FROM tipoprod ";
$resulta = $conn->query($sql_tipo);
$row = $resulta->fetch_assoc();
echo '<td><input type="hidden" name="id" value="'.$row['id'].'"></td>';
?>
<td><input type="text" name="codigo_tipo[]"</td>
<td><input type="text" name="descricao[]" </td>
</tr>
<?php } ?>
</tbody>
</table><br>
Function.php
<?php
include_once("conn.php");
function retorna($descricao, $conn){
$result = "SELECT A.descricao, A.codigo_produto, B.codigo_tipo, B.descricao FROM CADPRO A "
. " LEFT OUTER JOIN TIPOPROD B ON (A.CODIGO_PRODUTO = B.CODIGO_PRODUTO) WHERE A.descricao= '$descricao' ";
$resultado = mysqli_query($conn, $result);
// DECLARA A VARIAVEL
$valores = array();
if($resultado){
while( $row = mysqli_fetch_assoc($resultado)){
$novo['codigo_produto'] = $row['codigo_produto'];
$novo['codigo_tipo'] = $row['codigo_tipo'];
$novo['descricao'] = $row['descricao'];
array_push($valores, $novo);
}
} else {
return json_encode(array( 'error' => mysqli_error($conn) ));
}
return json_encode($valores);
}
if(isset($_GET['descricao'])){
echo retorna($_GET['descricao'], $conn);
}
?>
Edit the question and put the return
json
– NoobSaibot
the feedback I’m getting inside the network tab ? I’ll edit and put
– user92870
Do you want to replace the existing data in the table ? Or add the rows at the end of the table ?
– NoobSaibot
i want the user to enter the product description, it returns the product code and also the types and descriptions linked to it
– user92870