Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda com listas dependentes uma da outra


h_felix

Pergunta

Boa noite galera ,

um amigo meu passou um código que ele usava , para faze

r lista uma e sublista , uma depedente da outra.

Mas , tentei colocar no meu projeto , mas não funciona , a 2ª lista não altera os valores conforme o que foi selecionado na 1ª lista.

Segue o codigo que ele me passou (ps.:não alterei nada , só o nome do server , user e senha , tabelas coloquei o mesmo nome que ele passou )

produto.php

<link rel="stylesheet" type="text/css" media="screen" href="../lib/css/estilo.css"/>
<div id="content">
<head>
<script type="text/javascript" src="jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("select[name=tv_assinatura]").change(function()
{
var empresa_tv = $(this).val();
//alert(empresa_tv);
$.getJSON(
'../functions/function.inc.php',
{empresa_tv: empresa_tv},
function(data){
//alert(data);
var option = new Array();
resetaCombo('pacotes');
$.each(data, function(i, obj){
option = document.createElement('option');
$( option ).attr( {value : obj.id} );
$( option ).append( obj.nome );
$("select[name=pacotes]").append( option );
});
});
});
});
function resetaCombo( el )
{
$("select[name="+el+"]").empty();
var option = document.createElement('option');
$( option ).attr( {value : '0'} );
$( option ).append( 'Escolha' );
$("select[name="+el+"]").append( option );
}
</script>
</head>
<form action="" method="post">
<fieldset>
<label><select name="tv_assinatura">
<option value="0">Tv por assinatura</option>
<?php
$sql_tv=mysql_query("SELECT * FROM tv_assinatura");
while ($dados = mysql_fetch_array($sql_tv)) {
echo("<option value='1'>".$dados['nome_tv']."</option>");
}
?>
</select></label>
<label><select name="pacotes">
<option value="0">Escolha um Pacote</option>
</select></label>
</fieldset>
</form>
</div>
function.inc.php

<?php
header("Content-Type: text/html; charset=ISO-8859-1");
function intGet( $campo ){
return isset( $_GET[$campo] ) ? (int)$_GET[$campo] : 0;
}
function retorno( $nome_tv )
{
$sql = "SELECT `id`, `nome_pacote`
FROM `pacotes`
WHERE `empresa_tv` = {$nome_tv} ";
$sql .= "ORDER BY `nome_pacote` ";
$mysqli = new mysqli("server", "user", "key", "DB");
//$con = mysql_connect("server", "user", "key", "DB");
//mysql_select_db( 'ajax', $con );
$q = $mysqli->query( $sql );
//$q = mysql_query( $sql );
$json = ' [';
if( $q->num_rows > 0 )
//if( mysql_num_rows( $q ) > 0 )
{
while( $dados = $q->fetch_object() )
//while( $dados = mysql_fetch_assoc( $q ) )
{
$json .= '{"nome_pacote'.$campo.'":"'.$dados->nome_pacote.'","id'.$campo.'":"'.$dados->id.'"}, ';
//$json .= '{"nome_pacote'.$campo.'":"'.$dados['nome_pacote'].'","id'.$campo.'":"'.$dados['id'].'"}, ';
}
}
else
$json .= '{"nome_pacote'.$campo.'": "Não Encontrado"}';
$json .= ']';
return $json;
}
echo retorno( intGet('empresa_tv') );
?>

SQL

Create Database planos ;
use planos;
CREATE TABLE IF NOT EXISTS `pacotes` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nome_pacote` varchar(25) COLLATE utf8_unicode_ci NOT NULL,
`empresa_tv` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
`total_canais` int(11) NOT NULL,
`canais_sd` int(11) NOT NULL,
`canais_hd` int(11) NOT NULL,
`equip_01` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`equip_02` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`equip_03` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`preço` decimal(5,2) NOT NULL,
`servico_01` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`servico_02` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
`foto` varchar(50) CHARACTER SET latin1 COLLATE latin1_german1_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ;
CREATE TABLE IF NOT EXISTS `tv_assinatura` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nome_tv` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `nome_tv` (`nome_tv`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=6 ;
alguém poderia ajudar a mostrar onde esta o erro e a resolve-lo ?
Assim , começo a montar uma pra mim baseada nela.
Desde , grato
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...