Boas pessoal.
Estou a tentar fazer um select dependente sem usar botoes, onde ao escolher a familia, automaticamente o select da subfamilia ira so mostrar as subfamlias correspondentes a familia.
Porem nao consigo fazer, pois dame erro, e so me aparece me sempre a opção de erro do option que inseri <option value="0"><?php echo htmlentities('Não subfam nesse fam') ?></option>
Código JS
<script type="text/javascript">
Código (Javascript):
Código index.php
Código (PHP):
Código subfam.php
Código (PHP):
Estou a tentar fazer um select dependente sem usar botoes, onde ao escolher a familia, automaticamente o select da subfamilia ira so mostrar as subfamlias correspondentes a familia.
Porem nao consigo fazer, pois dame erro, e so me aparece me sempre a opção de erro do option que inseri <option value="0"><?php echo htmlentities('Não subfam nesse fam') ?></option>
Código JS
<script type="text/javascript">
Código (Javascript):
$(document).ready(function(){
$("select[name=fam]").change(function(){
$("select[name=subfam]").html('<option value="0">Carregando...</option>');
$.post("subfam.php",
{fam:$(this).val()},
function(valor){
$("select[name=subfam]").html(valor);
}
)
})
})
</script>$("select[name=fam]").change(function(){
$("select[name=subfam]").html('<option value="0">Carregando...</option>');
$.post("subfam.php",
{fam:$(this).val()},
function(valor){
$("select[name=subfam]").html(valor);
}
)
})
})
Código index.php
Código (PHP):
<form method="post" action="<?php echo $_SERVER['PATH_INFO']?>">
<select name="fam">
<option value="0">Escolha uma Família</option>
<?php
$sql = "SELECT * FROM familias ORDER BY Nome ASC";
$qr = mysql_query($sql) or die(mysql_error());
while($ln = mysql_fetch_assoc($qr))
{
?>
<option value="<?php echo $ln['ID'] ?>"><?php echo $ln['Nome'] ?></option>
<?php
}
?>
</select>
<select name="subfam">
<option value="0" disabled="disabled">Escolha uma Familia Primeiro</option>
</select>
<select name="fam">
<option value="0">Escolha uma Família</option>
<?php
$sql = "SELECT * FROM familias ORDER BY Nome ASC";
$qr = mysql_query($sql) or die(mysql_error());
while($ln = mysql_fetch_assoc($qr))
{
?>
<option value="<?php echo $ln['ID'] ?>"><?php echo $ln['Nome'] ?></option>
<?php
}
?>
</select>
<select name="subfam">
<option value="0" disabled="disabled">Escolha uma Familia Primeiro</option>
</select>
Código subfam.php
Código (PHP):
<?php
$familia = $_POST['fam'];
$sql = "SELECT * FROM subfamilias WHERE FamPrincipal = '$familia' ORDER BY Nome ASC";
$qr = mysql_query($sql) or die(mysql_error());
if(mysql_num_rows($qr) == 0)
{?>
<option value="0"><?php echo htmlentities('Não subfam nesse fam') ?></option>
<?php
}
else
{
while($ln = mysql_fetch_assoc($qr))
{?>
<option value="<?php echo $ln['ID'] ?>"><?php echo $ln['Nome'] ?></option>
<?php }
}
$familia = $_POST['fam'];
$sql = "SELECT * FROM subfamilias WHERE FamPrincipal = '$familia' ORDER BY Nome ASC";
$qr = mysql_query($sql) or die(mysql_error());
if(mysql_num_rows($qr) == 0)
{?>
<option value="0"><?php echo htmlentities('Não subfam nesse fam') ?></option>
<?php
}
else
{
while($ln = mysql_fetch_assoc($qr))
{?>
<option value="<?php echo $ln['ID'] ?>"><?php echo $ln['Nome'] ?></option>
<?php }
}