Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rafa-martin

acesso de cada usário e ir a tela correspondente

Recommended Posts

pessoal preciso tirar uma dúvida com vocês.eu possuo vários tipos de usuários que acessam o site que desenvolvi. então no banco de dados eu tenho uma tabela de usuários e uma de nível.por exemplo: tem o nível 2 que são os vendedores, o nível 1 que usuários que possuem mais acesso ao site e nível 3 que são os gerentes. só que tem um porém. existem um gerentes que tem acesso a determinados lugares do site que os outros não tem. e aí o que eu fiz, fiz cópias dos mesmos arquivos os outros gerentes fiz uma cópia para esse gerentes e alterei algumas coisas para que ele acesse. só que cada vez que eu atualizo o site eu tenho que criar o mesmo arquivo duas vezes. e por causa desse gerente tive que dar um outro nivel para ele.só que até quando eu vou criar arquivos iguais?e se entrar outros gerentes que possuem mais acessos avançadoa no site? entenderam? e oura coisa, vai entrar mais um cliente aqui na empresa. aí ocorre o mesmo problema com os gerentes.porque assim: o gerente 1 se loga e tal aparecem dois botões, o gerente 2 se loga e aparece 4 botões.como posso resolver esse problema?tem que como eu diferenciar qual o gerente que se logou?

Compartilhar este post


Link para o post
Compartilhar em outros sites

cria niveis de acesso1 usuario2 vendedor3 gerente com acesso as areas x e y4 gerente com acesso as areas x e y e z5 gerente com acesso as areas x e ze assim por diantefaz uma pagina só e mostra pro cara o que ele puder verdefine direito os acessos

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara já fiz isso:Select Case Session("tipo_nivel1") Case 1 Response.Redirect("ClienteS.asp") Case 2 Response.Redirect("Vendedores.asp") Case 3 Response.Redirect("Gerentes.asp") Case 4 Response.Redirect("Administracao.asp") Case 5 Response.Redirect("Informatica.asp") Case 6 Response.Redirect("Gerente.asp") Case 7 Response.Redirect("GerenteWalter.asp")End Selectsó que não adianta. como acontece? o gerente walter pode ver 5 botões, por exemplo, já os outros não.porque quando a pessoa se loga vai aparecer o nome dele na tela.por isso que criei uma página para ele.como faço pra deixar uma página só pra os gerentes e quando eles se logarem aparecem o nome de cada um de acordo com o usuário e senha uqe eles comocaram. e no caso do gerente walter eu deixar a mesma página e mostrar os seus 5 botões.como faço isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

você define o nivewl no bd e não no nome do cara

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara já fiz isso:

Select Case Session("tipo_nivel1")

 

Case 1

Response.Redirect("ClienteS.asp")

Case 2

Response.Redirect("Vendedores.asp") 

Case 3

Response.Redirect("Gerentes.asp") 

Case 4

Response.Redirect("Administracao.asp") 

Case 5

Response.Redirect("Informatica.asp") 

Case 6

Response.Redirect("Gerente.asp") 

Case 7

Response.Redirect("GerenteWalter.asp")

End Select

 

 

só que não adianta. como acontece?

o gerente walter pode ver 5 botões, por exemplo, já os outros não.

porque quando a pessoa se loga vai aparecer o nome dele na tela.

por isso que criei uma página para ele.

 

como faço pra deixar uma página só pra os gerentes e quando eles se logarem aparecem o nome de cada um de acordo com o usuário e senha uqe eles comocaram. e no caso do gerente walter eu deixar a mesma página e mostrar os seus 5 botões.

 

como faço isso?

<{POST_SNAPBACK}>

Faz uma tabela com o ID no BD e quando um gerente acessar a Session pega o ID daquele usuario correspondendo com usuario e senha e logar seu nome!!

 

<%

if Session ("ID_User") = ConexaoValidaUser then

ID = ConexaoValidaUser

Esle

response.write ("Visitante")

response.end

End if

%>

 

<%=ID%> 'nome do user Validado

 

fui pela logica, acho que é algo assim!!!!!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

você define o nivewl no bd e não no nome do cara

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara tipo assimvocê tem uma tabelaID | NOME | NIVEL1 | MARIO | 12 | FULANO | 2....o cara loga você guarda seu no e seu niveldependendo do nivel ele ve alguma coisanão precisa de varias pages pra isso é na programação

Compartilhar este post


Link para o post
Compartilhar em outros sites

e se eu fizer dessa forma:crio uma sessão para o nível, e senha na página de auteticação aí na página de gerentes eu verifico se o a sessão do nível e senha está ok. se tiver mostras tais botãoes se não mostra outros botões.acho que daria certo, não é?e outra coisa explore esse conexaovalidaid seria meu arquivo de autenticidade?if (IF_Session) = autentica.asp thenseria isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse é o espirito a partir do nivel é gerado os conteudos, botoes etc

Compartilhar este post


Link para o post
Compartilhar em outros sites

por favor alguém me ajude.alguém me ajude no meu código, tá froyd.vou repetir meu problema:tenho dois gerentes que tem acessos diferentes no site. então criei uma página para cada um. só que vai entrar muio mais gerentes e eu não vou ficar criando uma porrada de arquivos.quero usar somente um, que é o gerentes.aspentão quando o gerente1 se logar vai entrar na página gerentes.asp e vai aparecer dois botões e quando o gerente se logar vai para a gerente.asp também só que ele terá 6 botões por exemplo.como eu faço isso?me ajudem em código, por favor, porque não sei mais o que fazer.valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

o lance é o seguinte carao conteudo que depende do nivel do caratipo assimdeletar um arquivo, quem pode, quem tem o nivel 3 e 4entãoIF nivel = 3 ou nivel = 4 thenaparece a opçãoend ife assim pra tudo, você faz uma pagina de administração que terá varias visões dependendo do nivel

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara eu acho que não estou conseguindo explicar.eu tenho uma tebela de subnivel:* tipo_nivel descricao descricao2e a tabela de usuarios:* Identif Usuario Nome Password codigo_brick tipo_nivele essas duas tabelas estão relacionadas.então, na tabela de usuários os gerentes estão cadastrados com nivel 3 e o gerentes walter com o nível 6. Ou seja, tem certas coisas que o gerente walter vai poder ter mais acessos do que os outros.e eu quero como eu faço para que quando o gerente walter se logar ele vá pra tela gerente.asp e aparece 3 botões por exemplo e que quando os outros gerentes se logarem vão para a página gerentes.asp só que irá aparecer 2 botões.entendeu o que eu quero?o que você me sugeriu eu já faço naquele select case que postei aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

então o que falta???

Compartilhar este post


Link para o post
Compartilhar em outros sites

o que falta é o seguinte:cada gerente tem um coisa chamado brick, que seia um espécie de marcação de território.então quando o gerente walter tem o brick 1, por exemplo e os outros tem o brick 2, 3, 4, 5...e o gerente walter tem acessos a outras coisa do site que os outros gerentes não tem.então eu tenho que diferenciar isso quando eles se logarem. porque assim eu não preciso ficar criando uma página para cada um.e eu quero saber como faço issosó o case que estou fazendo não está adiantando.esse código abaixo é onde eu verifico a existencia do usuário:<%@Language=VBScript%><%' *********** DEFINE AS VARIÁVEIS DE CONEXÃO *************Option ExplicitDim SucessoDim usuarioDIM administradorDIM SENHA%><%Usuario = Replace(Request.Form("USUARIO"),"'","''")Senha = Replace(Request.Form("SENHA"),"'","''")'-------------------------------------------------------'administrador = request.Form("USUARIO")'senha = request.Form("senha")administrador = replace(administrador,"'","''")administrador = replace(administrador,"#","''")administrador = replace(administrador,"$","''")administrador = replace(administrador,"%","''")administrador = replace(administrador,"¨","''")administrador = replace(administrador,"&","''")administrador = replace(administrador,"'or'1'='1'","''")administrador = replace(administrador,"&","''")administrador = replace(administrador,"'or'1'='1'","''")administrador = Replace(administrador, "'", "")administrador = Replace(administrador, "=", "")administrador = Replace(administrador, ":", "")administrador = Replace(administrador, ",", "")administrador = Replace(administrador, """","")administrador = Replace(administrador, ".", "")administrador = Replace(administrador, "*", "")senha = replace(senha,"'","''")senha = replace(senha,"#","''")senha = replace(senha,"$","''")senha = replace(senha,"%","''")senha = replace(senha,"¨","''")senha = replace(senha,"&","''")senha = replace(senha,"'or'1'='1'","''")senha = replace(senha,"&","''")senha = replace(senha,"'or'1'='1'","''")senha = Replace(senha, "'", "")senha = Replace(senha, "=", "")senha = Replace(senha, ":", "")senha = Replace(senha, ",", "")senha = Replace(senha, """","")senha = Replace(senha, ".", "")senha = Replace(senha, "*", "")%><%' *********** Não deixar o usuário rodar o formulário no micro dele. *************IF Request.ServerVariables("HTTP_REFERER") <> Request.ServerVariables("SERVER_NAME") and Request.ServerVariables("HTTP_REFERER") = "" THENresponse.write "ACESSO BLOQUEADO"response.end()%><%End IF%><%usuario = Server.HtmlEncode( request.form("USUARIO"))%><!-- Sessão criada para depois verificar em outras páginas se o usuários está logado ou não. --><%Session("Usuario") = "ok"%><%If Request.Form("Usuario") = "" Or Request.Form("Senha") = "" Then Response.Redirect("Default.asp?Bloquear=1")Else%><!-- #Include File="Conexao.asp" --><%'String_SQL = "Select Identif, usuario, nome, password, codigo_brick, tipo_nivel from Usuarios Where Usuario = '" & Request.Form("Usuario") & "' and Password = '" & Request.Form("Senha") & "'"String_SQL = "Select Identif, usuario, nome, password, codigo_brick, tipo_nivel from Usuarios Where Usuario = '" & USUARIO & "' and Password = '" & SENHA & "'"'Response.Write String_SQL'Response.EndSet Conj_Registros = Banco.Execute(String_SQL)If Conj_Registros.EOF Then Response.Redirect("Default.asp?Bloquear=2") ElseSession("Identif") = Conj_Registros("Identif")Session("Nome") = Conj_Registros("Nome")Session("Usuario") = Conj_Registros("Usuario")Session("codigo_brick1") = Conj_Registros("codigo_brick")Session("tipo_nivel1") = Conj_Registros("tipo_nivel")'Session("password") = Conj_Registros("password")String_SQL = "INSERT INTO Controle ("String_SQL = String_SQL & "Identif,"String_SQL = String_SQL & "IP"String_SQL = String_SQL & ") VALUES ("String_SQL = String_SQL & Session("Identif") & ","String_SQL = String_SQL & "'" & Request.ServerVariables("REMOTE_ADDR") & "'"String_SQL = String_SQL & ")"' Response.Write String_SQL' Response.EndSet Conj_Registros = Banco.Execute(String_SQL)String_SQL = "SELECT Count(Controle.Identif) AS ContarDeIdentif, "String_SQL = String_SQL & "Controle.Identif "String_SQL = String_SQL & "FROM Controle "String_SQL = String_SQL & "GROUP BY Controle.Identif "String_SQL = String_SQL & "HAVING (((Controle.Identif)=" & Session("Identif") & "))"Set Conj_Registros= Banco.Execute(String_SQL)Session("NumAcessos") = Conj_Registros("ContarDeIdentif")Select Case Session("tipo_nivel1") Case 1 Response.Redirect("ClienteS.asp") Case 2 Response.Redirect("Vendedores.asp") Case 3 Response.Redirect("Gerentes.asp") Case 4 Response.Redirect("Administracao.asp") Case 5 Response.Redirect("Informatica.asp") Case 6 Response.Redirect("Gerentes.asp") Case 7 Response.Redirect("GerenteWalter.asp")End SelectEnd If%><%Set Conj_Registros = NothingEnd If%><%Banco.CloseSet Banco = Nothing%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

este negocio de acesso cara é tudo no case ou nos seus ifs...não entendo a difuculdade ainda

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara é no case.se v olhar bem.existe uma página gerentes.asp e gerentewalter.aspcomo eles tem acesso diferente no site eles não podem ver coisas um do outro.entendeu?e mesmo eu fazendo esse case não está adiantando.porque se eu me logo com o usuário e senha do walter ele vai para página de gerentes.asp e não para gerentewalter.asp. Até aí está certo. Só que quando ele se logar e ir para página de gerentes.asp, a página deve ter outros tipos de botões.E é por isso que eu criei o arquivo gerentewalter.asp.Agora quando os outeos gerentes se logarem eles também devem ir para a página gerentes.asp. Porém, deve ter outros tipos de botões e não os mesmos que tem quando o walter se loga.entendeu?porque imagina. vão entrar vários outros gerentes. alguns na mesma cituação do walter e ficar criando uma página para cada um é embaçado.entedendeu agora? como eu posso fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara é seguinte você define no codigoo botão A aparece pra quem tem nivel X e Yo botão B pra quem tem outro nivele assim você vai montando sua page...

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara só que o nivel do gerente walter é 7 e dos outros é 6.então eles não terão os mesmo botões. os botões vão ser diferentes.então não tem como fazer if nivel = 7 our nivel = 6botão 1tem que ser tipo assim:if nivel = 7 then vai para página gerente.aspbotão cadastroif nivel = 6 then vai para a página gerente.aspbotão alteraçãoe seu não fizer a verificação de quem está se logando então se os gerentes entrarem na página gerentes.asp terá os botões que só o walter tem que enxergar.entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.