Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala mentes brilhantes, como vocês estão? bem?
Bom, hoje precisava de uma ajudinha de vocês, espero que consigam me dar uma força .
Sistema:
Estou desenvolvendo um sistema de atendimento em mesas de um restaurante.
Para isso adicionei 1 select options que chama a tabela CATEGORIAS (SEGUE A IMAGEM)

**Ao selecionar a categoria (Por exemplo "Pizzas") Carrega as opções no outro Select Options abaixo que se chama produtos.**
Até ai tudo bem... Oque preciso agora é fazer com que ao SELECIONAR A OPÇÃO PIZZA mostre apenas os CHECKBOX que estão relacionados ao produto (Tem na tabela um campo chamado id_modificadores, que if o id_prod (Na tabela modificadores) == id_modificadores (Na tabela produtos) {
}
CÓDIGO QUE INFORMA OS MODIFICADORES.
<?php while($reg3 = $query3->fetch_array()) { ?>
<?php
$nome_mod = $reg3["nome_mod"];
$nome_opt_mod = $reg3["nome_opcao_mod"];
$preco_mod = $reg3["preco_mod"];
$arrays = explode(',', $nome_opt_mod);
$arrays_preco = explode(',', $preco_mod);
echo "<br>
<div class='col-sm-6'>
<div class='card'>
<h5 class='card-header'>$nome_mod</h5>
<div class='card-body' name='id_modificadores' id='id_modificadores'>
";
foreach($arrays as $valores)
{
echo "<div class='form-check'>
<span type='hidden' class='switch switch-sm'><input type='checkbox' name='modificador[]' class='form-check-input' id='$valores' value='$valores'>
<label for='$valores'><h5 class='card-title'>$valores</h5></label><br></div>";
}
echo "
</div>
</div><br>
</div>";
}
?>
Aparentemente **não entendo nada de AJAX**, e o sistema que usei nos select options foi do CELKE, mas não funciona para checkbox. **Lembrando que estes checkbox passam por um EXPLODE para se separarem pois eles vão para o banco de dados por ','.**
**Desde-já agradeço a todos e tenham uma ótima semana. **
Aguardo ansiosamente por esse HELP.
**Atenciosamente** Lucas Severo>
14 horas atrás, Uerlen Santos disse:
Segue um exemplo que funciona com Estado e Cidade... basta você ajustar para o que precisa:
https://www.devmedia.com.br/populando-selects-dinamicamente-com-ajax-json-e-php/27658
Abraço
Então amigo, agradeço a referencia... Mas como informei não entendo nada de Ajax/json. e essa questão de aparecer options eu queria q aparecesse imputs. Desde-ja agradeço
@SeveroSoft Como olhei você está povoando as opções conforme os dados vindos do banco. A lógica é indiferente, basta que capturamos o valor do elemento selecionado e enviamos para uma função repassar via AJAX para outro arquivo.
Veja um exemplo genérico, tenho o select e tenho as opções
Spoiler
<select id="selecionar">
<option value="option_a">Produto A</option>
<option value="option_b">Produto B</option>
</select>
<script>
// Capturamos o elemento ID do selset
var opt = document.getElementById('selecionar');
// Adicionamos o evento quando o elemento que capturamos é alterado.
opt.addEventListener('change', myFunction);
function myFunction() {
// Pegamos o value do elemento capturado
var valor = opt.value;
/*
* Aqui criamos a função ajax
* Quando você for executar o open pelo request
* poder usar o GET e passar seu arquivo.php informando o por parâmetro
* qual o value foi solicitado
* assim sendo seu arquivo.php irá ser carregado conforme o valor
* selecionado
*/
// Lógico que essa linha não funciona é apenas para mostrar
// como você pode eviar os dados
httpRequest.open('GET', 'arquivo.php?parametro=' + valor, true);
}
</script>
Então no arquivo que irá receber basta que eu consulte o valor e exibo os inputs do tipo checkbox conforme o valor recebido
Spoiler
<?php
if (isset($_GET['parametro'])) { // Verifico se há parâmetros para trabalhar
if ($_GET['parametro'] == 'option_a') {
// De acordo com o meu exemplo aqui eu colocaria todos checkbox para a primeira opção do select
} else if ($_GET['parametro'] == 'option_b') {
// De acordo com o meu exemplo aqui eu colocaria todos checkbox para a segunda opção do select
} else {
// Nenhuma das opções é valida para exibir conteúdo
}
}
Executar AJAX é muito simples veja isso:
[https://developer.mozilla.org/pt-BR/docs/Web/API/XMLHttpRequest/Usando_XMLHttpRequest](https://developer.mozilla.org/pt-BR/docs/Web/API/XMLHttpRequest/Usando_XMLHttpRequest)
Segue um exemplo que funciona com Estado e Cidade... basta você ajustar para o que precisa:
https://www.devmedia.com.br/populando-selects-dinamicamente-com-ajax-json-e-php/27658
Abraço