Jump to content


Photo

Habilitar / Desabilitar Select (combo)


  • Faça o login para participar
17 replies to this topic

#1 Tatiana Carrazzoni

Tatiana Carrazzoni

    Turista

  • Usuários
  • 26 posts
  • Sexo:Feminino
  • Localidade:Recife

Posted 09/01/2008, 15:56

Tenho dois selects num formulário, um categoria e outro subcategoria.

O campo subcategoria vai estar desabilitado até que selecione uma categoria.
Depois de selecionar uma categoria, habilitar o select de subcategoria, carregando apenas as subcategorias relacionadas a categoria selecionada.

Os dados estão no banco de dados, e as páginas são em php.

A tabela categoria tem o seguintes campos: id, nome
A tabela subcategoria tem o seguintes campos: id_sub, nome, nome_sub (o campo nome vem da tabela categoria).


Espero que alguém me ajude!!

Edição feita por: Tatiana Carrazzoni, 09/01/2008, 16:43.


#2 Andreia Regina

Andreia Regina

    Veterano

  • Conselheiros
  • 1347 posts
  • Sexo:Feminino
  • Localidade:PR
  • Interesses:PHP; MySQL; Javascript; CSS; tudo ligado ao desenvolvimento web.

Posted 10/01/2008, 07:36

Você pode fazer isso utilizando ajax ou javascript.

Veja se este tópico te ajuda: webforum

Fórum WMO - Conselheira - Na equipe desde 31/01/2006.
Links importantes: Regras de conduta - Busca do fórum


#3 Tatiana Carrazzoni

Tatiana Carrazzoni

    Turista

  • Usuários
  • 26 posts
  • Sexo:Feminino
  • Localidade:Recife

Posted 10/01/2008, 08:10

Oi Andreia,

Não consegui fazer, só aparece os dados no primeiro campo.

É um pouco complicado ajeitar esse que vc me mandou no link, pois o meu só possui 2 campos e o seu possui 3...

Abraços

#4 Andreia Regina

Andreia Regina

    Veterano

  • Conselheiros
  • 1347 posts
  • Sexo:Feminino
  • Localidade:PR
  • Interesses:PHP; MySQL; Javascript; CSS; tudo ligado ao desenvolvimento web.

Posted 10/01/2008, 08:14

Tatiana, encontrei este aqui.

Espero que te ajude :)

Fórum WMO - Conselheira - Na equipe desde 31/01/2006.
Links importantes: Regras de conduta - Busca do fórum


#5 Tatiana Carrazzoni

Tatiana Carrazzoni

    Turista

  • Usuários
  • 26 posts
  • Sexo:Feminino
  • Localidade:Recife

Posted 10/01/2008, 11:55

Andreia,

Consegui fazer, mas quando vou colocar no arquivo que ele vai funcionar, ele não funciona...

o segundo fica aguarde... carregando..

Abraços

#6 bimonti

bimonti

    Super Veterano

  • Usuários
  • 2654 posts
  • Sexo:Masculino

Posted 10/01/2008, 12:23

Acusa algum erro ?
WebFórum - Equipe de Desenvolvimento - Monitor
Posted Image
Yeah I do have some stories, and it's true I want all the glory ...

#7 Tatiana Carrazzoni

Tatiana Carrazzoni

    Turista

  • Usuários
  • 26 posts
  • Sexo:Feminino
  • Localidade:Recife

Posted 10/01/2008, 12:35

ele acusa erro no script,

Erro: 'myIframe' não está definido

n sei como resolver isso...

me ajudem..

#8 Andreia Regina

Andreia Regina

    Veterano

  • Conselheiros
  • 1347 posts
  • Sexo:Feminino
  • Localidade:PR
  • Interesses:PHP; MySQL; Javascript; CSS; tudo ligado ao desenvolvimento web.

Posted 10/01/2008, 14:41

Existe esta parte no seu código?

<IFRAME src name="myIframe" id="myIframe" width="400" height="100" marginwidth="0" marginheight="0"></IFRAME>

Caso exista posta aí para vermos como está, ok?

Fórum WMO - Conselheira - Na equipe desde 31/01/2006.
Links importantes: Regras de conduta - Busca do fórum


#9 Tatiana Carrazzoni

Tatiana Carrazzoni

    Turista

  • Usuários
  • 26 posts
  • Sexo:Feminino
  • Localidade:Recife

Posted 10/01/2008, 15:02

Ai vai..

adsd.php

<script>loc = new Array(<?=mysql_num_rows($sql)?>)for (i=0; i < <?=mysql_num_rows($sql)?>; i++) {     loc[i] = new Array(2)             for (j=0; j < 2; j++) {         loc[i][j] = "0" }}   <? $j = 0;   while ($linha = mysql_fetch_array($sql)) {?>   loc[<?=$j?>][0] = "<?=$linha[0]?>";   loc[<?=$j?>][1] = "<?=$linha[0]?>";   <? $j++;   }   ?>   parent.inicia();</script><?$sql = mysql_query("SELECT * FROM {$prefixo}categorias ORDER BY nome ASC") or die(erro(mysql_error()));$contar = mysql_num_rows($sql);if($contar < 1) {echo "<center>Adicione pelo menos uma categoria.<br>";echo "<center><strong><a href=\"java script:div('add_cat')\">Clique Aqui</a></strong> para adicionar uma.<br></center>";?><div id="add_cat" style="display: none" align="center"><hr align="center"><form method="POST" action="admin.php?acao=ad&amp;add=sim">  Nome da categoria:<br>  <input name="nome" type="text" value="<?php echo $nome; ?>" size="20">  <br>  <br>  <input name="cadastrar" type="submit" id="cadastrar" value="Cadastrar">  </p></form></div><?}else{$cadastrar = $_GET["cadastrar"];if($cadastrar == "download") {$nome             = $_POST["nome"];$descricao        = $_POST["descricao"];$cliques          = 0;$categoria    	  = $_REQUEST["categoria"];$subcategoria     = $_REQUEST["subcategoria"];$autor_script     = $_POST["autor"];$versao_script    = $_POST["versao"];$reportado        = "";$arquivo          = $_FILES["arquivo"]["name"];$sql = mysql_query("SELECT * FROM {$prefixo}downloads WHERE nome = '".$nome."'") or die(erro(mysql_error()));$contar = mysql_num_rows($sql);if($contar > 0) {$erro.= "Já existe um download com este mesmo nome.<br>";}if($nome == "") {$erro.= "Digite o nome do download.<br>";}if($descricao == "") {$erro.= "Digite a descrição do download.<br>";}if($subcategoria == "selecione") {$erro.= "Você precisa selecionar uma subcategoria.<br>";}if($categoria == "selecione") {$erro.= "Você precisa selecionar uma categoria.<br>";}if($autor_script == "") {$erro.= "Você precisa digitar o autor do download.<br>";}if($versao_script == "") {$erro.= "Você precisa digitar a versão do download.<br>";}if($arquivo == "") {$erro.= "Você precisa colocar algum arquivo para download.<br>";}if($erro == "") {$name = $_FILES['arquivo']['name'];  $nome_tmp = $_FILES['arquivo']['tmp_name']; $dir = "../downloads/$name"; $upload = move_uploaded_file($nome_tmp, $dir);if($upload){$novo = "../downloads/".base64_encode(time()).".".substr($name, -3);rename($dir, $novo);}$cadastrar = mysql_query("INSERT INTO {$prefixo}downloads (nome, data_criacao, arquivo, descricao, cliques, categoria, subcategoria, autor, versao, reportado) VALUES ('$nome', NOW(), '$novo', '$descricao', '$cliques', '$categoria', '$subcategoria', '$autor_script', '$versao_script', '$reportado')", $db) or die(erro(mysql_error()));if($cadastrar) {echo "Download cadastrado com sucesso.<hr>";}else{echo "Não foi possível cadastrar o download.<hr>";}}//fecha if erroelse{echo"<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"4\" bgcolor=\"#D8E1F3\" class=\"css\">  <tr>    <td bgcolor=\"#ACBFE6\" class=\"ft10 s1\"><font color=\"#FFFFFF\"><img src=\"../imagens/erro.gif\" width=\"13\" height=\"13\">&nbsp;</font><strong>Ocorreram os seguintes erros:</strong></td>  </tr>  <tr>    <td><font color=\"#FF0000\">".$erro."</font><br /> </span></td>  </tr></table>";}}//fecha cadastro?><div style="DISPLAY: none; POSITION: absolute" align="left"><IFRAME src name="myIframe" id="myIframe" width="400" height="100" marginwidth="0" marginheight="0"></IFRAME></div><form action="admin.php?acao=adsd&amp;cadastrar=download" method="POST" enctype="multipart/form-data" name="Cadastro"><table width="322"><tr><td width="314">Nome:</td></tr>  <tr><td><input name="nome" type="text" value="<?php echo $nome; ?>" size="20"></td></tr> <tr><td>Arquivo:</td></tr><tr><td><input type="file" name="arquivo" /></td></tr><tr><td>Categoria:</td></tr><tr><td><select name="categoria" onChange="carregar();"><option value="">- selecione -</option>   <?   $sql = mysql_query("SELECT DISTINCT id,nome FROM {$prefixo}categorias order by nome ASC");   while($linha=mysql_fetch_array($sql)) {   echo "<option value=\"" . $linha["id"] . "\">" . $linha["nome"] . "</option>";   }   ?></select></td></tr><tr>  <td>Subcategoria:</td></tr><tr>  <td><select name="subcategoria"></select></td></tr><tr><td>Autor:</td></tr><tr><td><input name="autor" type="text" id="autor" value="<?php echo $autor_script; ?>" size="20"></td></tr><tr><td>Vers&atilde;o:</td></tr><tr><td><input name="versao" type="text" id="versao" value="<?php echo $versao_script; ?>" size="20"></td></tr><tr><td>Descrição:</td></tr><tr><td><textarea rows="5" name="descricao" cols="40"><?php echo $descricao; ?></textarea></td></tr><tr>  <td>&nbsp;</td></tr><tr><td> <input name="cadastrar" type="submit" id="cadastrar" value="Cadastrar"></td></tr></table></form><?}?>

admin.php

<? include("../config.php"); $id = $_GET['id'];$auxsql = "SELECT DISTINCT nome_sub,id_sub FROM {$prefixo}subcategoria WHERE nome='{$id}' order by nome_sub";$sql = mysql_query($auxsql);if(!$sql){echo mysql_error();exit();}if($contagem !=1) {header("Location: index.php");}else{ $user = mysql_query("SELECT * FROM {$prefixo}usuarios WHERE login = '".$login."'") or die(erro(mysql_error()));$user1 = mysql_fetch_array($user);if($nivel < 2) {$user = "$login";}else{$user = "<a href=\"admin.php?acao=info_user&id=".$user1[id]."\">$login</a>";}?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title><?php echo $nome_site; ?></title><link rel="StyleSheet" href="../css.css" type="text/css"><script src="../js.js" language="javascript"></script><style type="text/css"><!--.style1 {	color: #000000;	font-weight: bold;}--></style></head><body><div align="center">  <table width="803" border="1" cellpadding="2" cellspacing="0" bordercolor="#D8E1F3">      <tr valign="top" bgcolor="#D8E1F3">      <td colspan="2">        <table width="100%"  border="0">          <tr>            <td align="center"><font color="#000000">Seja bem vindo <strong><?php echo $user; ?></strong></font> </td>          </tr>        </table>      </td>    </tr>	<tr><td colspan="2"></td></tr>    <tr valign="top">      <td width="200" align="left" bgcolor="#FFFFFF">        <table width="100%"  border="0">          <tr>            <td align="center" bgcolor="#D8E1F3" class="style1 style3">Menu</td>          </tr>          <tr>            <td>&nbsp;</td>          </tr>          <tr onmouseover="this.bgColor='#D8E1F3'" onmouseout="this.bgColor=''">            <td><a href="admin.php">&gt; Principal</a></td>          </tr>          <tr>            <td>&nbsp;</td>          </tr>          <tr>            <td align="center" bgcolor="#D8E1F3" class="style1 style3">Downloads</td>          </tr>          <tr>            <td>&nbsp;</td>          </tr>          <tr onmouseover="this.bgColor='#D8E1F3'" onmouseout="this.bgColor=''">            <td><a href="?acao=adsd">&gt; Adicionar </a></td>          </tr>         <tr onmouseover="this.bgColor='#D8E1F3'" onmouseout="this.bgColor=''">            <td><a href="logout.php">&gt; Logout</a> </td>          </tr>        </table>        <center>        </center>        <br>        <br>      </td><td width="603"><br>          <div align="center">            <table width="643" border="0" cellspacing="0" cellpadding="0">              <tr>                <td width="100%" align="left" valign="top">                  <?$page = $_GET["acao"];if(empty($page)) {include("home.php");}elseif(eregi("http|ftp|https|www|wget", $page) || !is_file($page.".php")){include("ilegal.php");}else{include($page.".php");}?>                </td>              </tr>            </table>        </div></td>    </tr>    <tr valign="top" bgcolor="#D8E1F3">      <td colspan="2">&nbsp;</td>    </tr>  </table></div></body></html><?}?>


js.js

function carregar(){var url;var myIframe = document.getElementById('myIframe');url = 'admin.php?acao=adsd&amp;cadastrar=download?id='+document.Cadastro.categoria[document.Cadastro.categoria.selectedIndex].value;document.Cadastro.subcategoria.options.length = 0;addItem(document.Cadastro.subcategoria,"Aguarde...carregando","",false,document.Cadastro.subcategoria.length)myIframe.location = url;document.Cadastro.subcategoria.focus()}function inicia(){var myIframe = document.getElementById('myIframe');local1 = new Array();var maximo1, i, campo1;local1 = myIframe.loc;campo1 = document.Cadastro.subcategoria;maximo1 = local1.length;document.Cadastro.subcategoria.options.length = 0;addItem(campo1,'--- selecione ---','',false,campo1.length);for (i=0;i<maximo1;i++){addItem(campo1,local1[i][1],local1[i][0],false,campo1.length);}}function addItem(obj,strText,strValue,blSel,intPos){ var newOpt,i,ArTemp,selIndex; selIndex = (blSel)?intPos:obj.selectedIndex; newOpt = new Option(strText,strValue); Len = obj.options.length+1 if (intPos > Len) return obj.options.length = Len if (intPos != Len) { ArTemp = new Array(); for(i=intPos;i<obj.options.length-1;i++)   ArTemp[i] = Array(obj.options[i].text,obj.options[i].value); for(i=intPos+1;i<Len;i++)   obj.options[i] = new Option(ArTemp[i-1][0],ArTemp[i-1][1]);} obj.options[intPos] = newOpt; if (selIndex > intPos) obj.selectedIndex = selIndex+1; else if (selIndex == intPos) obj.selectedIndex = intPos;}


Ai está o código...

Edição feita por: bimonti, 13/01/2008, 11:22.


#10 Alex Hiroshi

Alex Hiroshi

    Super Veterano

  • Ex-Admins
  • 4923 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 11/01/2008, 10:16

A página adsd.php é incluida na admin.php? Arruma o atributo src do iframe.

E veja esse tutorial: http://forum.wmonlin...howtopic=116461
Fórum WMO - Equipe de Desenvolvimento / Banco de Dados - Ex-Administrador

#11 RonsisM

RonsisM

    Super Veterano

  • Usuários
  • 15724 posts
  • Sexo:Masculino
  • Localidade:Plovdiv

Posted 16/09/2017, 06:42

Can Cephalexin Damage Liver cialis Priligy 30mg Tablets Canadian Pharmacy Cialis 20mg Viagra Senza Ricetta Online generic cialis Comprar Viagra A Domicilio
Cephalexin Alcholol cialis Dapoxetina Como Se Toma Discount Generic Doryx Buy Now Website Price Kamagra Gold Review Acheter Du Cytotec En Ligne cialis Acheter Viagra Ou

#12 Miguceamma

Miguceamma

    MiguPenjisse

  • Usuários
  • 13201 posts

Posted 16/09/2017, 23:07

Finasteride 1 Mega Propecia cialis Original Cialis Erkennen Pfizer Viagra From Canada Wirkung Viagra Samenerguss Acheter Tamoxifene cialis online Finasteride 1 Mega Propecia
Cialis Y Paracetamol cialis buy online Were Can I Buy Inderal
Viagra Zarate
Cheap Levitra Professional <a href=http://cialtobuy.com>cialis price</a> Discount Where To Buy Secure Ordering Hydrochlorothiazide Internet Medication Swansea
Drug Amoxil cialis Propecia 120 Day
European Pharmacy Viagra Non Generico Conseil Utilisation Du Viagra
Viagra Quanto Costa Italia <a href=http://cialtobuy.com>cialis</a> Amoxicillin Ngu
Comprar Viagra Con Mastercard cialis online Kamagra 100mg Wirkung
Buy Zyban Online En Espagne Nootropil
Buy Cheap Accutane Online <a href=http://cialtobuy.com>cialis</a> Cialis Cardiovasculaire

#13 HaroNism

HaroNism

    Super Veterano

  • Usuários
  • 15385 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 17/09/2017, 06:04

Viagra Sin Receta Andorra cialis buy online Cialis Comprar Farmacia Commander Lioresal 25mg For Sale Finasteride Can You Take Amoxicillin Capsule Apart cialis Cialis 20 Jahren
Generic Viagra Louisville Ky cialis Amoxil Pas Cher
Prospecto Cialis 20 Mg Viagra No Precription Over Nite
I Need Viagra Overnight Delivery Canada <a href=http://cialtobuy.com>viagra cialis</a> Cialis E Dipendenza

#14 RonsisM

RonsisM

    Super Veterano

  • Usuários
  • 15724 posts
  • Sexo:Masculino
  • Localidade:Plovdiv

Posted 12/10/2017, 12:50

Amoxicillin Dosage For 100 cialis Cialis 5 Mg Durata Effetto Vermox
Viagra Auswirkungen canadian healthcare mall levitra Propecia Generic Hair Loss Kamagra Pharmaceuticals Co Uk Isotretinoin tab internet pharmacy with free shipping

#15 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 12/10/2017, 14:06

Propecia Varato buy viagra online Cialis Hipertensos Cheap Kamagra Francia
Misoprostol 200 Mcg Tab Como Usar El Kamagra viagra Order Celebrex Online No Prescription
Kamagra A Buon Mercato Commander Viagra Internet Vente Cytotec viagra online pharmacy Naklofen Duo English Language




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq