Ir para conteúdo

POWERED BY:

Arquivado

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

ABUTRES

[Resolvido] Combobox

Recommended Posts

Gostaria de pedir ajuda ao pessoal do forum com uma duvida q estou aki... Tipo Criei Dois ComboBox tipo o q o pessoal sempre faz Estado / Cidade.

 

Entao minha dificuldade esta sendo no 2º combo o q deveria receber as info referente a 1º Combobox... Já catuquei tudo + nao acho o Problema c o pessoal poder me dar uma ajuda ficaria agradecido.

 

Como a minha tabela esta estruturada

 

Categorias

CategoriaID

Descricao

 

Classificacoes

ClassificacaoID

CategoriaID

Descricao

 

Codigo index.php

 

<HTML>

 

<HEAD>

 

<script language="javascript" type="text/javascript" src="script.js">

</script>

 

</HEAD>

 

<BODY OnLoad='java script:Atualiza();'>

 

<form>

<select name=Categorias onchange='java script:Atualiza(this.value);'>

<option>---Escolha uma opção---</option>";

 

<?php

include('conn.php'); //conexao com o banco

//monta dados do combo 1

$sql = "SELECT DISTINCT Descricao,CategoriaID FROM Categorias";

 

$resultado = mysql_query($sql) or die ("Problema na Consulta");

 

While($linha = mysql_fetch_array($resultado))

{

echo "<option value=".$linha['CategoriaID'].">".$linha['Descricao']."</option>";

}

 

?>

 

</select>

 

<div id="atualiza"></div>

 

</form>

 

</BODY>

 

</html>

 

Codigo atualiza.php

 

<?php

include('conn.php'); //conexao com o banco

echo "<select name=Classificacoes>";

echo "<option>---Escolha uma opção---</option>";

 

//busca dados do combo 2

$sql = "SELECT DISTINCT Classificacoes.Descricao FROM Classificacoes INNER JOIN Categorias ON Categorias.CategorisID = Classificacoes.CategoriaID WHERE Classificacoes.CategoriaID = '".$_GET['Categorias']."'";

 

$resultado = mysql_query($sql) or die ("Problema na Consulta");

 

While($linha = mysql_fetch_array($resultado))

{

echo "<option>".utf8_encode($linha['Descricao'])."</option>";

}

 

echo "</select>";

 

?>

 

Codigo Script.js

 

var req;

 

function loadXMLDoc(url,valor)

{

req = null;

// Procura por um objeto nativo (Mozilla/Safari)

if (window.XMLHttpRequest) {

req = new XMLHttpRequest();

req.onreadystatechange = processReqChange;

req.open("GET", url+'?Categorias='+valor, true);

req.send(null);

// Procura por uma versao ActiveX (IE)

} else if (window.ActiveXObject) {

req = new ActiveXObject("Microsoft.XMLHTTP");

if (req) {

req.onreadystatechange = processReqChange;

req.open("GET", url+'?Categorias='+valor, true);

req.send();

}

}

}

 

function processReqChange()

{

// apenas quando o estado for "completado"

if (req.readyState == 4) {

// apenas se o servidor retornar "OK"

if (req.status == 200) {

// procura pela div id="atualiza" e insere o conteudo

// retornado nela, como texto HTML

document.getElementById('atualiza').innerHTML = req.responseText;

} else {

alert("Houve um problema ao obter os dados:\n" + req.statusText);

}

}

}

 

function Atualiza(valor)

{

loadXMLDoc("atualiza.php",valor);

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo tente fazer isto nesta linha acrescentar "" no select name=""

<select name="Categorias" onchange='java script:Atualiza(this.value);'>

tenta ai e ve se da certo, eu li umas 3x seu codigo

e notei apenas isso

 

deve ser por isso que a ".$_GET['Categorias']." nao esta recebendo o valor

 

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa!!! Grande valeu... Acredite c quizer... eu Li essa porcaria de codigo umas 500.000.000 de vezes... rsrsrs E nao vi essa meleca de erro.. eu Lia e passava batido direto... Putz as vezes precisa de um 3 olho pra ver pequenos detalhes é florida.... rsrsrsrs

 

Abração e grato ai por ver o q eu nao tava vendo. rs

 

ABUTRES

 

 

 

//busca dados do combo 2

$sql = "SELECT DISTINCT Classificacoes.Descricao FROM Classificacoes INNER JOIN Categorias ON Categorias.CategorisID = Classificacoes.CategoriaID WHERE Classificacoes.CategoriaID = '".$_GET['Categorias']."'";

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.