Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

andersonseifert

Select <option> php

Recommended Posts

Galera tenho um select com varias opções, como faco para quando mudar de opcao

me trazer outro classe (exe: bebidas.php) na parte inferior do meu SELECT.

 

<div id="categorias">
    <label for="select-native-2">Categoria</label>
    <select name="select-native-2" id="categoria" data-mini="true">
        <option value="1">PIZZAS DOCES</option>
        <option value="2">BEBIDAS</option>
        
    </select>	
</div>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

A ideia que quando eu clicar em alguma categoria, me de um include depois do meu <BR/>

 

 

    <body>	

<div id="categorias">
    <label for="select-native-2">Categoria</label>
    <select name="select-native-2" id="categoria" data-mini="true">
        <option value="1">PIZZAS DOCES</option>
        <option value="2">BEBIDAS</option>
        
    </select>	
</div>
<br/><br/>

<?php
include 'controlepage\cardapio\controllercardapio.php';
?>
	
	</body>
</html>


um campo filtro que traz meu select, que escolher na categoria

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma categoria somente :

 

   <?php
		require_once("ControlePage/login/logar.php");		
        $sql = "SELECT * FROM bebidas where ativo='1'";
        $qr = mysql_query($sql);
		$num= mysql_num_rows($qr);

		if($num > 0){
			while ($ln = mysql_fetch_assoc($qr)) {
				echo '<h2>' . $ln['nome'] . '</h2> <br />';
				echo 'Preco : R$ ' . number_format($ln['preco'], 2, ',', '.') . '<br />';
				echo '<img src="image/' . $ln['imagem'] . '" /> <br />';
				echo "<a href='home.php?p=10&acao=add&id={$ln['id']}'>Comprar</a>";
				echo '<br /><hr />';
			}
		}
		else
			echo 'não possui itens a serem visualizados';
        ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

a melhor forma é fazer isto com ajax, a navegação fica melhor sem muito carregamento de pagina.

 

exemplo de função ajax:

$.ajax({
  type: "POST",
  url: "pagina.php",
  data: { categoria: "bebidas" }// aqui vc irá passar a categoria selecionada no seu select
})
  .done(function( msg ) {
    $('#id-area-de-produtos').html(msg);
  });

na sua pagina.php vc recupera a informação categoria passada pelo data: como uma variável post, e seu sql ficará dinâmico.

$sql = "SELECT * FROM $_POST[categoria] where ativo='1'";

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito bacana, eu colocaria o Code ajax junto com meu arquivo onde fica meus select <option> ?

 

    <body>	

<div id="categorias">
    <label for="select-native-2">Categoria</label>
    <select name="select-native-2" id="categoria" data-mini="true">
        <option value="1">PIZZAS DOCES</option>
        <option value="2">BEBIDAS</option>
        
    </select>	
</div>
<br/><br/>

<?php
include 'controlepage\cardapio\controllercardapio.php';
?>
	
	</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

vc cria arquivo pagina.php ou sei la nome ... e faz switch case .... exemplo nos selects la vc coloca um numero nos value

 

ai nessa pagina vc faria os cases e pegava por valor tipo ... case '1': include"cardapio.php";break; e assim vai o ajax vai te retorna isso na hora rs

Compartilhar este post


Link para o post
Compartilhar em outros sites
$("#formulario").keyup(function(){ //inicia o ajax quando o formulario for selecionado
			 $.ajax({
		            url : "paginas.php", // busca o arquivo para interagir
		            type : "POST", // o tipo dele
		            data : $(this).serialize(), //eleciona todos os campos
		            success: function(data){ // retorna o resultado do php
		                $('.res').html(data); // exibi em alguma div
		            }
		        });
		})

 

só editar ai e usar da sua forma .. o php se ja ta ligado ne ? faz switch case la ... e pega pelos value do select ja eras :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nao consegui galera fiz assim :

 

  <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <title>Cardapio</title>

    </head>
    <style>
        #categorias{float:left;}

    </style>
    <script>
        $("#categorias").keyup(function() { //inicia o ajax quando o formulario for selecionado
            $.ajax({
                url: "bebidas.php", // busca o arquivo para interagir
                type: "POST", // o tipo dele
                data: $(this).serialize(), //eleciona todos os campos
                success: function(data) { // retorna o resultado do php
                    $('#?').html(data); // exibi em alguma div
                }
            });
        })


    </script>  
     <body>	

        <div id="categorias">
            <label for="select-native-2">Categoria</label>
            <select name="select-native-2" id="categoria" data-mini="true">
                <option value="1">PIZZAS DOCES</option>
                <option value="2">BEBIDAS</option>
            </select>	
        </div>
        <br/>
        <div id="content-cardapio">
            <?php
            include 'controlepage\cardapio\pizzas.php';
             ?>
      </div>
        
        <?php        
        switch ($_POST['select-native-2']) {
            case 1:
                include(pizzas.php);
                break;
            case 2:
                include(bebidas.php);
                break;
            default:
                echo "padrão";
        }
        ?>
   </body>

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Nao consegui galera fiz assim :

 

  <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <title>Cardapio</title>

    </head>
    <style>
        #categorias{float:left;}

    </style>
    <script>
        $("#categorias").keyup(function() { //inicia o ajax quando o formulario for selecionado
            $.ajax({
                url: "bebidas.php", // busca o arquivo para interagir
                type: "POST", // o tipo dele
                data: $(this).serialize(), //eleciona todos os campos
                success: function(data) { // retorna o resultado do php
                    $('#?').html(data); // exibi em alguma div
                }
            });
        })


    </script>  
     <body>	

        <div id="categorias">
            <label for="select-native-2">Categoria</label>
            <select name="select-native-2" id="categoria" data-mini="true">
                <option value="1">PIZZAS DOCES</option>
                <option value="2">BEBIDAS</option>
            </select>	
        </div>
        <br/>
        <div id="content-cardapio">
            <?php
            include 'controlepage\cardapio\pizzas.php';
             ?>
      </div>
        
        <?php        
        switch ($_POST['select-native-2']) {
            case 1:
                include(pizzas.php);
                break;
            case 2:
                include(bebidas.php);
                break;
            default:
                echo "padrão";
        }
        ?>
   </body>

 

 

ai mano eu fiz aqui só tu ajusta conforme sua necessiadade ajax pelo menos tu entendeu ne ? e no php la tu usa o switch case mesmo porque eu to com preguiça de fazer arquivo para testar com ele .. kkk

 

index.php

 

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>

    <script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
    <script>
    $(function(){
           $("#cat_sel").change(function() { //inicia o ajax quando o formulario for selecionado
            $.ajax({
                url: "bebidas.php", // busca o arquivo para interagir
                type: "POST", // o tipo dele
                data: $(this).serialize(), //eleciona todos os campos
                success: function(data) { // retorna o resultado do php
                    $('#resposta').html(data); // exibi em alguma div
                }
            });
        })
    })
    </script>

      <style>
        #categorias{float:left;}

    </style>

</head>
<body>

 <div id="categorias">
            <label for="select-native-2">Categoria</label>
            <select name="select" id="cat_sel" data-mini="true">
                <option value="0">Selecione uma opção</option>
                <option value="1">PIZZAS DOCES</option>
                <option value="2">BEBIDAS</option>
            </select>   
        </div>
        <br/>


      <div id="resposta"></div>
    
</body>
</html>

 

 

e no bebidas.php

 

<?php
$opcao  = $_POST['select'];

	if($opcao == '1'){
		echo 'olha a pizza';
	}elseif($opcao == '2'){
		echo 'Olha a bebida';
	}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao mano tu nao entendeu a logica no index fica o select la , tu depois configura conforme for teu projeto e no bebidas.php

leia o codigo mano

 

url: "bebidas.php", // busca o arquivo para interagir

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.