PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.
Moderadores: Administradores, Moderadores
por kugasthelast » Quarta Out 24, 2007 11:16
boas tou com um pekeno prob tenho um menu e um sub-menu em que se vai tornar em Familias e sub-familias e isto vai-me servir para filtrar a tabela de produtos, o problema agora está em nao conseguir ler os dois menus (as familias e as sub-familias) lê a familia e kd escolho a sub-familia automaticamente substitui pela sub-familia...
o codigo é este:
- Código: Seleccionar todos
<select name="familia" class="style5" id="familia" onChange="MM_jumpMenu('parent',this,0)">
<option value="">Escolha Familia</option>
<option value="escolhencomenda.php?familia=familia1" <?=$_GET['familia']==1?' selected':''?>>Familia 1</option>
<option value="escolhencomenda.php?familia=familia2" <?=$_GET['familia']==2?' selected':''?>>Familia 2</option>
<option value="escolhencomenda.php?familia=familia3" <?=$_GET['familia']==3?' selected':''?>>Familia 3</option>
<option value="escolhencomenda.php?familia=familia4" <?=$_GET['familia']==4?' selected':''?>>Familia 4</option>
</select>
<select name="subf" class="style5" id="subf" onChange="MM_jumpMenu('parent',this,0)">
<option value="">Escolha Sub-Familia</option>
<option value="escolhencomenda.php?subf=subf1" <?=$_GET['subf']==1?' selected':''?>>Sub-Familia 1</option>
<option value="escolhencomenda.php?subf=subf2" <?=$_GET['subf']==2?' selected':''?>>Sub-Familia 2</option>
<option value="escolhencomenda.php?subf=subf3" <?=$_GET['subf']==3?' selected':''?>>Sub-Familia 3</option>
<option value="escolhencomenda.php?subf=subf4" <?=$_GET['subf']==4?' selected':''?>>Sub-Familia 4</option>
</select>
ou seja na barra de endereços deveria aparecer algo como:
www.xxxxx.pt/escolhencomenda.php?famili ... subf=subf1
isto escolhendo a 1ª familia e a 1ª sub-familia....
-
kugasthelast
- Aprendiz

-
- Mensagens: 71
- Registado: Quinta Jul 19, 2007 14:31
por Fenrir » Sexta Out 26, 2007 9:02
Tenta ser mais claro no problema.
Deixa ver se entendi.
Tens dois 'selects' um para familias e outro para sub-familias?
e ao selecionares queres passar no URL o conteudo de ambos?
-

Fenrir
- Membro de Prata

-
- Mensagens: 354
- Registado: Segunda Set 20, 2004 22:33
- Localização: Porto
por kugasthelast » Sexta Out 26, 2007 9:12
peço desculpa por nao ser muito esclarecedor... mas é isso mesmo tenho dois select um com familias e outro com sub-familias e com ajuda do PHP tenho um ciclo IF ao selecionar uma familia e uma sub-familia irá filtrar a lista de produtos...digo isto prk os produtos vão ser ai uns 400 mil LOL...o ciclo if ja ta feito, o problema é k ele nao me esta a kerer ler os dois select, ou lê um ou lê outro, nao sei o k falta? algo me escapa aki?
-
kugasthelast
- Aprendiz

-
- Mensagens: 71
- Registado: Quinta Jul 19, 2007 14:31
por kugasthelast » Sexta Out 26, 2007 9:25
aqui tenho um exemplo de um ciclo IF em PHP que fiz:
- Código: Seleccionar todos
if (($_GET['familia']==1) && ($_GET['subf']==1))
{
$sel="SELECT *
FROM tbl_produtos
WHERE estado=0 AND familia=familia1 AND subf=subf1
ORDER BY produto ASC";
#echo $sel;
$stmt= mysql_query($sel, $conDb);
while($row=mysql_fetch_array($stmt))
{
?>
<td bgcolor="#CCCCCC"><div align="center"><?=$row['codigo']?></div></td>
<td bgcolor="#CCCCCC"><div align="center"><?=$row['produto']?></div></td>
<td bgcolor="#CCCCCC"><div align="center">
<input name="id<?=$row['id']?>" type="checkbox" id="id" value=" or id=<?=$row['id']?>">
</div></td>
</tr>
<?PHP
}
}
?>
-
kugasthelast
- Aprendiz

-
- Mensagens: 71
- Registado: Quinta Jul 19, 2007 14:31
por Fenrir » Sexta Out 26, 2007 9:58
Ou seja na condição
if (($_GET['familia']==1) && ($_GET['subf']==1))
um dos valores não existe?
Convém testares imprimindo os valores na página ou algo do genero, para te certificares que um deles não existe.
O que te mostra a string do get?
-

Fenrir
- Membro de Prata

-
- Mensagens: 354
- Registado: Segunda Set 20, 2004 22:33
- Localização: Porto
por kugasthelast » Sexta Out 26, 2007 10:37
fiz echo e imprime para a familia "familia1" e sub-familia "subf1"...
-
kugasthelast
- Aprendiz

-
- Mensagens: 71
- Registado: Quinta Jul 19, 2007 14:31
por Fenrir » Sexta Out 26, 2007 12:34
Será algo na query que está a falhar?
Por fim, queres que te apresente os produtos perante a filtragem por familia e sub-familia não é?
Verifica se a query está a funcionar, se não estiver executa directamente na base de dados.
-

Fenrir
- Membro de Prata

-
- Mensagens: 354
- Registado: Segunda Set 20, 2004 22:33
- Localização: Porto
por kugasthelast » Sexta Out 26, 2007 18:56
ta a funcionar prk 1º apresento uma query com os produtos todos agr se o utilizador quiser opcionar pelo filtro para procurar mais rapido os produtos tenho essa opçao das familias e sub-familias....a minha ideia é se nao é preciso criar um botao para filtrar??? em cada uma tenho um "onChange", mas mesmo assim nao resulta, ele nao me passa os dois valores "familia" e "subf".... ou passa um ou passa outro... isto ta me a preocupar um pouco nao consigo localizar o problema... hummm...
-
kugasthelast
- Aprendiz

-
- Mensagens: 71
- Registado: Quinta Jul 19, 2007 14:31
por SIG » Domingo Out 28, 2007 23:08
Na primeira combo box tens:
[b]value="escolhencomenda.php?familia=familia1"[/b]
e na outra tens
[b]value="escolhencomenda.php?subf=subf2"[/b]
Quando o evento onchange é disparado um destes dois URLs vai ser "executado". Repara que quando seleccionas uma sub-família só está a ser enviado um único parâmetro e é daí que vem o teu "ou passa um ou passa outro".
Para funcionar como tu queres deves também incluir no código em que crias a sub-família a família principal que está seleccionada (estou a presumir que a escolha de sub-famílias é eliminada quando é seleccionada uma nova família)
Experimenta o seguinte: Quando crias a option para a sub-família, no value, concatena o seguinte:
[b]&familia=$_GET['familia'][/b]
de forma a ficar:
[b]escolhencomenda.php?subf=subf3&familia=$_GET['familia'][/b]
No teu código, não podes utilizar directamente o valor do [b]GET[/b] porque quando este é 1 tu colocas [i]familia1[/i] portanto tens que o converter.
-

SIG
- Aprendiz

-
- Mensagens: 30
- Registado: Domingo Set 26, 2004 23:06
Voltar para Programação
Quem está ligado:
Utilizador a ver este Fórum: Nenhum utilizador registado e 1 visitante