Send variable with Jquery Autocomplete function

Asked

Viewed 40 times

0

I have a Jquery function, which when typing the product name, it searches the database and brings me an array of results via json, and with this result I fill the fields automatically. The function works fine, but I came across another situation, where I have to send another variable together. Below I will post the part of the code where I call the autocomplete function:

$("#nome" + x).autocomplete({
               source: "produtos.php",
               minLength: 2,
              select: function (event, ui) {
              $('#idproduto' + x).val(ui.item.idproduto);
              $('#nome' + x).val(ui.item.nome);
              $('#ean' + x).val(ui.item.codigo);
              }
              });

The page produtos.php this way:

<?php

 if (isset($_GET['term'])) {

 //$idusuario = $_GET['idusuario'];

 $return_arr = array();

 if ($con) {
            $fetch = mysqli_query($con, "SELECT DISTINCT   
            produtos.idproduto,produtos.nome,produtos.referencia,produtos.ean,produtos.valorvenda,
            produtos.quantidade,produtos.minimo,tabeladepreco.desconto,
            tabeladepreco.modalidade AS 'modalidade'
            FROM produtos,tabeladepreco,usuarios
            WHERE produtos.nome like '%" . mysqli_real_escape_string($con, ($_GET['term'])) . "%'
            AND usuarios.modalidade = tabeladepreco.modalidade
            AND tabeladepreco.idproduto = produtos.idproduto
            AND produtos.ativo = 1 ");

            while ($row = mysqli_fetch_array($fetch)) {
                   $row['nome'] = utf8_encode($row['nome']);
                   $row_array['value'] = $row['nome'] . " | " . $row['modalidade'];
                   $row_array['codigo'] = $row['ean'];
                   $row_array['referencia'] = $row['referencia'];

                   array_push($return_arr, $row_array);
                  }
                }
                mysqli_close($con);

               echo json_encode($return_arr);
             }
          ?>

the variable idusuario is already declared and with value assigned to it at the beginning of the page, I’m just not sure how to put it together with the $("#nome" + x)to receive her on produtos.php where I left commented the receipt of it.

1 answer

0


    $("#nome").autocomplete({
                  source: "produtos.php?idusuario="+idusuario,
                  minLength: 2,
                  select: function (event, ui) {
                     $('#idproduto' + x).val(ui.item.idproduto);
                     $('#nome' + x).val(ui.item.nome);
                     $('#ean' + x).val(ui.item.codigo);
                  }
   });
  • Rodrigo, this way he does not bring the products, when I enter the name. I made the following change: $.getJSON("produtos.php", { idusuario: idusuario },response); But still did not bring the products.

  • I changed it. Take a test. In PHP file use $_REQUEST['term']

  • Thank you, Rodrigo, you’re right.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.