1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Esconder Menu Css

Discussão em 'Web Development' iniciada por ButterflyEffect, 13 de Maio de 2008. (Respostas: 3; Visualizações: 2398)

  1. ButterflyEffect

    ButterflyEffect Power Member

    Boa noite. Preciso de criar um menu com 3 niveis de permissão ja fiz o codigo e menu tudo funciona mas ao esconder ,menu não da erro mas tambem nao esconde.Podiam ajudarm??
    O menu e em CSS criei id e tambem runat=server para esconder partes do menu
    a estrutura do menu e em html e estou a programar em C#

    Código:
    codigo login[/COLOR]
    [COLOR=white][SIZE=2]SqlConnection[/SIZE][SIZE=2] mycon = [/SIZE][SIZE=2]new[/SIZE][SIZE=2]SqlConnection[/SIZE][SIZE=2](System.Web.Configuration.[/SIZE][SIZE=2]WebConfigurationManager[/SIZE][SIZE=2].ConnectionStrings[[/SIZE][SIZE=2]"IGMConnectionString"[/SIZE][/COLOR][SIZE=2][COLOR=white]].ConnectionString);[/COLOR]
    [/SIZE][COLOR=white][SIZE=2]SqlDataAdapter[/SIZE][SIZE=2] adapter = [/SIZE][SIZE=2]new[/SIZE][SIZE=2]SqlDataAdapter[/SIZE][SIZE=2]([/SIZE][SIZE=2]"SELECT cod_utilizador, grau, login,password FROM utilizadores WHERE login LIKE '"[/SIZE][SIZE=2] + login.SelectedItem + [/SIZE][SIZE=2]"' AND password LIKE '"[/SIZE][SIZE=2] + password.Text + [/SIZE][SIZE=2]"'"[/SIZE][/COLOR][SIZE=2][COLOR=white], mycon);[/COLOR]
    [/SIZE][COLOR=white][SIZE=2]DataSet[/SIZE][SIZE=2] dataset1 = [/SIZE][SIZE=2]new[/SIZE][SIZE=2]DataSet[/SIZE][/COLOR][SIZE=2][COLOR=white]();[/COLOR]
    [COLOR=white]mycon.Open();[/COLOR]
    [COLOR=white]adapter.Fill(dataset1, [/COLOR][/SIZE][SIZE=2][COLOR=white]"utilizadores"[/COLOR][/SIZE][SIZE=2][COLOR=white]);[/COLOR]
    [COLOR=white]mycon.Close();[/COLOR]
    [/SIZE][COLOR=white][SIZE=2]if[/SIZE][SIZE=2] (dataset1.Tables[[/SIZE][SIZE=2]"utilizadores"[/SIZE][/COLOR][SIZE=2][COLOR=white]].Rows.Count > 0)[/COLOR]
    [COLOR=white]{[/COLOR]
    [COLOR=white]Session[[/COLOR][/SIZE][COLOR=white][SIZE=2]"cod_utilizador"[/SIZE][SIZE=2]] = dataset1.Tables[[/SIZE][SIZE=2]"utilizadores"[/SIZE][/COLOR][SIZE=2][COLOR=white]].Rows[0].ToString();[/COLOR]
    [COLOR=white]Session[[/COLOR][/SIZE][COLOR=white][SIZE=2]"grau"[/SIZE][SIZE=2]] = dataset1.Tables[[/SIZE][SIZE=2]"utilizadores"[/SIZE][/COLOR][SIZE=2][COLOR=white]].Rows[0].ToString();[/COLOR]
    [COLOR=white]Response.Redirect([/COLOR][/SIZE][SIZE=2][COLOR=white]"Informacao.aspx"[/COLOR][/SIZE][SIZE=2][COLOR=white]);[/COLOR]
    [COLOR=white]}[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]else[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]{[/COLOR]
    [COLOR=white]Response.Write([/COLOR][/SIZE][COLOR=white][SIZE=2]"<script language=javascript>alert('Dados de acesso inválidos');</script>"[/SIZE][SIZE=2]);
    [/SIZE][/COLOR][COLOR=white]}[/COLOR]
     
    [COLOR=white]menu permissoes[/COLOR]
    [COLOR=white][SIZE=2]if[/SIZE][SIZE=2] (Session[[/SIZE][SIZE=2]"cod_utilizador"[/SIZE][SIZE=2]] == [/SIZE][SIZE=2]null[/SIZE][/COLOR][SIZE=2][COLOR=white])[/COLOR]
    [COLOR=white]{[/COLOR]
    [COLOR=white]menu_principal.Visible = [/COLOR][/SIZE][SIZE=2][COLOR=white]false[/COLOR][/SIZE][SIZE=2][COLOR=white];[/COLOR]
    [COLOR=white]}[/COLOR]
    [/SIZE][COLOR=white][SIZE=2]if[/SIZE][SIZE=2] (Session[[/SIZE][SIZE=2]"cod_utilizador"[/SIZE][SIZE=2]] != [/SIZE][SIZE=2]null[/SIZE][/COLOR][SIZE=2][COLOR=white])[/COLOR]
    [COLOR=white]{[/COLOR]
    [COLOR=white]menu_principal.Visible = [/COLOR][/SIZE][SIZE=2][COLOR=white]true[/COLOR][/SIZE][SIZE=2][COLOR=white];[/COLOR]
    [COLOR=white]}[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]//if (Session["grau"].ToString() == "1")[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]//{[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]//Outras_Operacoes.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Outras_Operacoes2.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Outras_Operacoes_.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Consultar.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// info.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]//}[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]//else if (Session["grau"].ToString() == "2")[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]//{[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Apagar_Ferramenta.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Apagar_Standard.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao1.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao2.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao3.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao4.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao5.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao6.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao7.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao8.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao9.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao10.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao11.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Consultar.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]//// info.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// }[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// else if (Session["grau"].ToString() == "3")[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// {[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Apagar_Ferramenta.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Inserir_Ferramenta.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Inserir_Ferramenta2.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Editar_Ferramenta.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Apagar_Standard.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Inserir_Standard.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Inserir_Standard2.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Editar_Standard.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao1.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao2.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao3.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao4.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao5.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao6.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao7.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao8.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao9.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao10.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Gestao11.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Outras_Operacoes.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Outras_Operacoes2.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=white]// Outras_Operacoes_.Visible = false;[/COLOR]
    [/SIZE][SIZE=2][COLOR=#008000][COLOR=white]// }
    [/COLOR][/SIZE]
     
    Última edição pelo moderador: 17 de Maio de 2008
  2. MPalhas

    MPalhas Power Member

    puseste css no titulo mas não vejo css nenhum nesse código, se bem que também não percebo nada disso (não sei c#)

    mas não sei se estarás a fazer da maneira correcta. o que queres é um menu com 3 niveis de permissão (tipo Visitante, Sócio ou Administrador por exemplo)

    porque é que em vez de "escreveres" o html dos menus todos não escreves só do menu que precisas, por exemplo:

    Código:
    if (Session["grau"].ToString() == "1") {
       Response.write("Coisas do Menu Tipo 1");
    }
    else if (Session["grau"].ToString() == "2") {
       Response.write("Coisas do Menu Tipo 2");
    }
    else if (Session["grau"].ToString() == "3") {
       Response.write("Coisas do Menu Tipo 3");
    }
    else {
       Response.Write("<script language=javascript>alert('Dados de acesso inválidos');</script>");
    }
    não sei se disse alguma estupidez (repito, não sei c#), mas parece-me mais lógico fazer as coisas desta maneira.
     
  3. ButterflyEffect

    ButterflyEffect Power Member

    o menu que é em css
    Código:
    o menu que é em css
    <div class="menu_" id="menu_principal" runat="server" style="left: 1284px; top: 167px; z-index: 100; width: 125px; height: 841px;">
    <br />
    <div id="ddblueblockmenu" style="height: 288px">
    <div class="menutitle" id="Menu" runat="server">Menu</div>
    <ul>
    <%--<li id="Dados" runat="server"><a href="Alterar_Dados.aspx">Alterar Login </a></li>--%>
    <li id="CAM" runat="server"><a href="CAM.aspx">Consultar tempos</a></li>
    <li id="info" runat="server"><a href="Informacao.aspx">Informações </a></li>
    <li id="Consultar" runat="server"><a href="Consultar_Ferramentas.aspx">Consultar Ferramentas </a></li>
    </ul>
    <div class="menutitle" id="Standard" runat="server">Standard</div>
    <ul>
    <li id="Standard1" runat="server"><a href="Home.aspx">Comparar e Verificar Standard</a></li>
    <li id="Inserir_Standard" runat=server><a href="Inserir_Standard.aspx">Inserir Standard</a></li>
    <li id="Inserir_Standard2" runat="server"><a href="Inserir_Standard2.aspx">Inserir Versão Standard</a></li>
    <li id="Editar_Standard" runat="server"><a href="Editar_Standard.aspx">Editar Standard</a></li>
    <li id="Apagar_Standard" runat="server"><a href="Apagar_Standard.aspx">Apagar Standard</a></li>
    <li id="Visualizar_Standard" runat="server" ><a href="Visualizar_Standard.aspx">Visualizar Standard</a></li>
    </ul>
    <div class="menutitle" id="Ferramentas_" runat="server">Ferramentas</div>
    <ul>
    <li id="Ferramenta" runat="server"><a href="VerificarFerramenta.aspx">Verificar Clonar e Editar Ferramenta</a></li>
    <li id="Inserir_Ferramenta" runat="server"><a href="Inserir_Ferramenta.aspx">Inserir Ferramenta</a></li>
    <li id="Inserir_Ferramenta2" runat="server"><a href="Inserir_Ferramenta2.aspx">Inserir Versão Ferramenta</a></li>
    <li id="Editar_Ferramenta" runat="server"><a href="Editar_Ferramenta.aspx">Editar Ferramenta</a></li>
    <li id="Apagar_Ferramenta" runat="server"><a href="Apagar_Ferramenta.aspx">Apagar Ferramenta</a></li>
    <li id="Visualizar_Ferramenta" runat="server"><a href="TREE VIEW.aspx">Visualizar Ferramenta</a></li>
    </ul>
    <div class="menutitle" id="Outras_Operacoes_" runat="server">Outras Operações</div>
    <ul>
    <li id="Outras_Operacoes" runat="server"><a href="Outras_Operacoes.aspx"> Estratégias, Máquinas, Operações</a></li>
    <li id="Outras_Operacoes2" runat="server"><a href="Outras_Operacoes2.aspx">Pastilhas, Peças, Fabricantes, Cabeças</a></li>
    </ul>
    <div class="menutitle" id="Gestao" runat="server">Gestão</div>
    <ul>
    <li id="Gestao1" runat="server"><a href="Gestao_clientes.aspx"> Clientes</a></li>
    <li id="Gestao2" runat="server"><a href="Gestao_cones.aspx">Cones</a></li>
    <li id="Gestao3" runat="server"><a href="Gestao_pastilhas.aspx"> Pastilhas</a></li>
    <li id="Gestao4" runat="server"><a href="Gestao_pecas.aspx">Peças</a></li>
    <li id="Gestao5" runat="server"><a href="Gestao_maquinas.aspx">Máquinas</a></li>
    <li id="Gestao6" runat="server"><a href="Gestao_fabricantes.aspx">Fabricantes</a></li>
    <li id="Gestao7" runat="server"><a href="Gestao_operacoes.aspx">Operações</a></li>
    <li id="Gestao8" runat="server"><a href="Gestao_operarios.aspx">Operarios</a></li>
    <li id="Gestao9" runat="server"><a href="Gestao_estrategias.aspx">Estrategias</a></li>
    <li id="Gestao10" runat="server"><a href="Gestao_utilizadores.aspx">Utilizadores</a></li>
    <li id="Gestao11" runat="server"><a href="Gestao_Cabecas.aspx">Cabeças</a></li>
    <li id="Li1" runat="server"><a href="Gestao_Moldes.aspx">Moldes</a></li>
    </ul>
    </div></div></div>
    o problema e k nao eskonde as partes k falo e tambem na entendo mt disto ='(
     
    Última edição pelo moderador: 17 de Maio de 2008
  4. MPalhas

    MPalhas Power Member

    então quer dizer que o browser recebe essa informação toda, e tu queres esconder as partes a que o utilizador não tem permissão? ERRADO!!

    nunca envies para o utilizador dados a que ele supostamente não possa ter acesso, por muito protegidos que estejam. e nesse caso não está nada protegido.
    para esconder em css seria com "display:none", mas qualquer utilizador com um minimo de conhecimentos pode ver o código fonte, ou então com o firebug escreve simplesmente isto:

    document.[caminho_até_ao_menu].style.display="block"

    e o menu torna-se visivel
    se não queres que o utilizador tenha acesso a certas opções, simplesmente não as escrevas e faz como eu te disse antes.

    e cuidado que tens também que fazer verificações antes de executares alguma função (os aspx chamados por esses menus, por exemplo), porque mesmo não tendo o menu para ir lá ter, pode escrever o URL na barra de endereço, e vai tudo dar ao mesmo
     

Partilhar esta Página