Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Como fazer para que ao invés do trecho abaixo ser dados inseridos ele puxar do banco;
dados.php
//substituir por algo do tipo
$sql=mysql_query(' SELECT * FROM tb_produtos WHERE id = :$id');
while($row = mysql_fetch_assoc($sql){
echo "value:" . $row['produto'] . "label:". $row['preco'];
}
//e aqui na função ele chamar o php acima
funcao.js
/ trecho atual que precisa ser substituido pelo resultado acima em php /
var data = [
{value: "50", label: "Corte"},
{value: "75", label: "Tintura"},
{value: "25", label: "Hidratação"},
{value: "30", label: "Barba"}
];
//funcao que chama os dados acima
$("#id" + (qtdeCampos - 1)).autocomplete({
source: data, //aqui que deve ser chamado o php (tentei chamar o arquivo direto mas da erro: source: 'dados.php',
focus: function (event, ui) {
event.preventDefault();
$(this).val(ui.item.label);
},.....
...continuacao da funcao
aguardo sugestão e ajuda, obrigado!
Resolvi da seguinte forma:
include './_app/Config.inc.php';
$Conn = new Conn;
$pesquisa_procedimento = new Read;
$pesquisa_procedimento->ExeRead('produtos', 'ORDER BY produto_nome ASC');
//Gera Array
$return_arr = array();
foreach ($pesquisa_procedimento->getResult() as $row_pesquisa_procedimento):
$row_array['label'] = $row_pesquisa_procedimento['produto_nome'];
$row_array['value'] = $row_pesquisa_procedimento['produto_preco'];
array_push($return_arr, $row_array);
endforeach;
/ Converte array para saída json /
echo json_encode($return_arr);
//imprime isso
[{"label":"Alisamento capilar","value":"225.00"},{"label":"Botox","value":"450.00"},{"label":"Cauteriza\u00e7\u00e3o dos fios","value":"100.00"},{"label":"Manicure completa","value":"25.00"}]
Basta aplicares esta lógica aos dados que lês do MySQL:
echo json_encode($produtos); //devolve: {"produtos":[{"nome":"Produto 1","preco":11},{"nome":"Produto 2","preco":21},{"nome":"Produto 3","preco":31}]}