Login. Criar uma pasta Repositories na raiz do projeto. Criar uma classe Funcoes.cs dentro da pasta Repositories.

Documentos relacionados
Centro Federal de Educação Tecnológica de Minas Gerais Técnico em Informática Aplicações para WEB. Aplicações para WEB

Bem vindos ao Curso de ASP.NET MVC 3 Razor e C#

Resumo Aplicação MVC Contoso University

5 pilares para uma aplicação Java Web bem-sucedida

Escrito por Neri Neitzke Ter, 29 de Novembro de :38 - Última atualização Sex, 07 de Abril de :23

Todos os direitos reservados e protegidos pela Lei nº9.610, de 10/02/1998.

Criação de uma aplicação Web ASP.NET MVC 4

AJAX no GASweb. Mas e afinal, para que usamos o AJAX?

Aplicações Web MVC. IFRN Instituto Federal de Educação, Ciências e Tecnologias do Rio Grande do Norte.

ASP.NET MVC. View Engine: linguagem usada para gerar código HTML. Duas opções: Razor View Engine ou ASPX View Engine. Selecionar Razor.

Login. Criar um novo website File > New > WebSite Framework 4.5 Visual C# ASP.NET Empty Web Site Nome do projeto: WebLogin

Programação web Prof. Wladimir

Consulta de endereço através do Cep

AULA APLICAÇÕES PARA WEB SESSÕES E LOGIN E SENHA

Desenvolvimento de Sistemas Web Prof. Leandro Roberto. Aula 18 JavaScript: Eventos MySQL PHP (insert, update e delete)

Construindo Aplicações com ASP.NET MVC 2.0 Aula 02 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas

COMO FUNCIONA UM FORMULÁRIO

curso de ASP.NET MVC

PROGRAMAÇÃO PARA INTERNET. Fonte: Raul Paradeda

Estudo Dirigido - Parte 1

Programação para Internet I

Lista de exercícios I - RESPOSTAS Servlets e banco de dados

Criação de uma aplicação Web ASP.NET MVC usando Code First

English Português. By erickalves 25 Julho, :08. Devido à política (#) de segurança. Encontrar Blogs Crie o seu blog de graça Ganhe prêmios

6. Introdução à Linguagem PHP

Aplicação de cadastros Mobile Phonegap

Regras básicas que definem onde o elemento pode ou não estar. Existem dois tipos de elementos: De linha: marcam, na maioria das vezes, textos,

Universidade São Judas Tadeu. Faculdade de Tecnologia e Ciências Exatas. Sistemas de Informação 3ASIN

Construindo um sistema simples de cadastro de fornecedores em PHP e MySQL.

Sessão e inclusão de arquivos no PHP

Aplicativos móveis com HTML5

Regras de Navegação e Templates

Programação Web Prof. Wladimir

Módulos Tainacan. Estrutura

Os componentes de um formulário são: Form, Input, Select e AreaText

FORMULÁRIOS HTML (FORMS) E ENTRADAS DE DADOS (INPUT)

Aplicação ASP.NET MVC Cliente de Aplicação Web API

Passos Preliminares: Acessando a máquina virtual via ssh.

INTRODUÇÃO AO DESENVOLVIMENTO WEB

Maurício Samy Silva. Novatec

GUIA PHP com MYSQL Autor: Everton Mendes Messias

Exercícios Práticos de HTML e JavaScript. <FORM ACTION="mailto:teste@gmail.com" METHOD="POST" ENCTYPE="text/plain" NAME="cadastro">

Método de Acesso e Integração da Biblioteca Virtual V.1.2 Pearson Sistemas Brasil

Simulado de Linguagem de Programação Java

HTML: FORMULÁRIOS SUMÁRIO. Conceito Tag FORM Tag INPUT Tag BUTTON Tag TEXTAREA Tag SELECT

Introdução à linguagem HTML. Volnys Borges Bernal

Autoria Web. Professor: Diego Oliveira. Conteúdo 03: Tags de Formulário

MONTANDO UMA CONSULTA COM FILTROS. Vamos criar uma tela que gere uma relação de dados, escolhendo a ordenação e um filtro.

Formulários em HTML - O que são e para que servem

Tutorial Python Django: Formulários

Formulários [8] Desenvolvimento e Design de. Websites. Prof.: Ari Oliveira

Repeater no GASweb. Regiões

Lista de Revisão. 3. Analise a afirmativa a seguir como verdadeira ou falsa e justifique.

<?php include("conn.php");

Vamos criar nosso formulário, vou utilizar aqui como exemplo cinco campos para upload:

Web Design Responsivo

O que faz um servidor/navegador web? 14/03/2016 Rômulo da Silva Lima Slid e 2

CRUD GERAL E LOGIN Sumário

HTML. Leonardo Gresta Paulino Murta

Construindo Aplicações com ASP.NET MVC 2.0 Aula 03 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas

Internet e Programação Web

Basicamente iremos precisar de uma base de dados na qual iremos armazenar os registros feitos pelos vistantes: Vamos armazenar os seguintes dados:

JavaScript: Validação de Formulários. Prof. Ivanilton Polato

Desenvolvimento Web XHTML Formulários. Prof. Bruno E. G. Gomes

Como criar um banco de dados usando o mysql

Desenvolvimento de Aplicações WEB (DAW) Prof. Julio Arakaki 1o. Semestre 2016

Formulários. Objetivo Controles Métodos Linhas de Edição

Faculdades Integradas Santa Cruz. Tutorial de Java MVC WEB Criando uma tela de Login com Banco de Dados

JAVASCRIPT DE QUALIDADE HOJE, AMANHÃ E SEMPRE GUILHERME CARREIRO THIAGO OLIVEIRA

Aula 05 HTML FORMULÁRIOS Prof. Daniela Pires Sumário

Bootstrap: Uma solução rápida para sites web

Este exercício será parecido com a montagem de um projeto real, onde trabalhamos com vários arquivos XHTML e um único arquivo CSS.

Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos

Aplicação ASP.NET MVC Cliente de Aplicação Web API (com Class Library)

Validação de formulários utilizando Javascript

Formulários são áreas onde se inserem campos que permitem uma troca de informações maior entre usuários e desenvolvedores de sites HTML Até o momento,

orm

SISTEMA GERENCIAMENTO DE PRODUTOS PHP E MySQL 1. APRESENTAÇÃO

MOBALUNO: INTERFACE MOBILE INTEGRADA A SISTEMA DE GESTÃO EDUCACIONAL

O código acima descreve o formulário com uma caixa de texto e dois botões

AJAX. Prof. Marcos Alexandruk

Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framework Code First

Desenvolvimento de Aplicações Web. Prof. José Eduardo A. de O. Teixeira / j.edu@vqv.com.br

Aplicação Web Zend Framework 2 Cliente de Aplicação Asp.Net Web API

SIMULADOS & TUTORIAIS

" # $ %&'( ) *' ( +,)+ ( - $ (+*' 0 12 ' ( %+ -12 )+3 ) (4 )) ) % 12 ) *' (

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 1 PROF. EMILIO PARMEGIANI

O objetivo da aula é realizar upload de arquivos com aplicação web. Será realizado o upload de duas formas:

Bool setcookie (string nome [, string valor [, int validade [, string caminho [, string dominio [, int seguro]]]]] )

JOHN MAYER - PARADISE VALLEY

<head>/*o elemento <head> deve incluir um título para o documento, e pode incluir scripts, estilos, informações de meta, e muito mais*/

Ajax Asynchronous JavaScript and Xml

0,5 pelo negrito das palavras ID, Nome, e Analisar em outro momento.

Java: Linguagem de programação (OOP) JavaScipt: Linguagem de scripts (OOP)

22/05/2012 CRIANDO UM PROJETO COM TELAS ESTRUTURA DA APLICAÇÃO LOGIN BANCO DE DADOS TAREFAS PHP MYSQL PARTE 2

Transcrição:

Criar uma pasta Repositories na raiz do projeto. Login Criar uma classe Funcoes.cs dentro da pasta Repositories. using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Security; using WebSite1.Models; namespace WebSite1.Repositories public class Funcoes public static bool AutenticarUsuario(string login, string senha) Context _db = new Context(); var query = (from u in _db.clientes where u.email == login && u.senha == senha select u).singleordefault(); if (query == null) return false; FormsAuthentication.SetAuthCookie(query.Email, false); //HttpContext.Current.Response.Cookies["Usuario"].Value = query.email; //HttpContext.Current.Response.Cookies["Usuario"].Expires = DateTime.Now.AddDays(10); HttpContext.Current.Session["Usuario"] = query.email; return true; public static Cliente GetUsuario() string _login = HttpContext.Current.User.Identity.Name; //if (HttpContext.Current.Request.Cookies.Count > 0 HttpContext.Current.Request.Cookies["Usuario"]!= null) if (HttpContext.Current.Session.Count > 0 HttpContext.Current.Session["Usuario"]!= null) _login = HttpContext.Current.Session["Usuario"].ToString(); //_login = HttpContext.Current.Request.Cookies["Usuario"].Value.ToString(); if (_login == "") return null; else Context _db = new Context(); Cliente cliente = (from u in _db.clientes where u.email == _login select u).singleordefault(); return cliente; else return null;

public static Cliente GetUsuario(string _login) if (_login == "") return null; else Context _db = new Context(); Cliente cliente = (from u in _db.clientes where u.email == _login select u).singleordefault(); return cliente; public static void Deslogar() HttpContext.Current.Session["Usuario"] = ""; //HttpContext.Current.Response.Cookies["Usuario"].Value = ""; FormsAuthentication.SignOut(); Adicionando o Controller Na pasta Controller, criar um novo Controller Nome: PublicoController

Alterar o nome da Action Index para Logar public ActionResult Logar() return View(); Adicionar a View Logar

Uma nova página será criada na pasta Views/Publico Adicionando um novo Layout Botão direito na pasta Views/Shared > Add New Item

Alterar a página _LayoutUser.cshtml <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>@viewbag.title</title> @Styles.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr") </head> <body> <div class="navbar navbar-inverse navbar-fixed-top"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" datatarget=".navbar-collapse"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> @Html.ActionLink("Exemplo", "Logar", "Publico", new area = "", new @class = "navbar-brand" ) <div class="navbar-collapse collapse"> <ul class="nav navbar-nav"> @*<li>@html.actionlink("sobre", "About", "Publico")</li>*@ </ul>

<div class="container body-content"> @RenderBody() <hr /> <footer> <p> @DateTime.Now.Year</p> </footer> @Scripts.Render("~/bundles/jquery") @Scripts.Render("~/bundles/bootstrap") @RenderSection("scripts", required: false) </body> </html> Alterando a página Views/Publico/Logar.cshtml @model IEnumerable<WebSite1.Models.Cliente> @ Layout = "~/Views/Shared/_LayoutUser.cshtml"; ViewBag.Title = "Login"; @using (Html.BeginForm()) @Html.AntiForgeryToken() <div class="form-horizontal"> <hr /> <h3 class="text-center">@viewbag.error</h3> @Html.ValidationSummary(true, "", new @class = "text-danger" ) <div class="form-group"> <label class="control-label col-md-2"> Email </label> <div> <div class="col-md-10 "> <input type="text" name="email" id="email" class="form-control" /> <div class="form-group"> <label class="control-label col-md-2"> Senha </label> <div class="col-md-10"> <input type="password" name="senha" id="senha" class="form-control" /> <div class="form-group"> <div class="col-md-offset-2 col-md-10"> <input type="submit" value="entrar" class="btn btn-default" />

Alterando o PublicoController Adicionar uma Action com HttpPost em PublicoController para receber as informações do Login. [HttpPost] public ActionResult Logar(string email, string senha) if (Funcoes.AutenticarUsuario(email, senha) == false) ViewBag.Error = "Nome de usuário e/ou senha inválida"; return View(); return RedirectToAction("Index", "Home"); Adicionar uma Action para AcessoNegado public ActionResult AcessoNegado() using (Context c = new Context()) return View(); Gerar um View para AcessoNegado Botão direito na Action Acesso Negado

Alterar a Views/Publico/AcessoNegado.cshtml @ Layout = "~/Views/Shared/_LayoutUser.cshtml"; ViewBag.Title = "Acesso Negado"; <div class="form-horizontal"> <br /> <h2 class="text-center">acesso Negado</h2> @*<h3 class="text-center">@html.actionlink("ir para a tela de Login", "Logar", "Publico")</h3>*@ Alterar o _Layout.cshtml em Views/Shared Para permitir acesso apenas a quem estiver Logado @ WebSite1.Models.Cliente cliente = WebSite1.Repositories.Funcoes.GetUsuario(); if (cliente!= null) <div class="navbar-collapse collapse"> <ul class="nav navbar-nav"> <li>@html.actionlink("home", "Index", "Home")</li> <li>@html.actionlink("estados", "Index", "Estados")</li> <li>@html.actionlink("cidades", "Index", "Cidades")</li> <li>@html.actionlink("clientes", "Index", "Clientes")</li> <li>@html.actionlink("about", "About", "Home")</li> <li>@html.actionlink("contact", "Contact", "Home")</li> </ul> else <script type="text/javascript"> window.location.href = "@Url.Action("AcessoNegado","Publico")"; </script> Adicionar a opção Logoff Adicionar uma <li> ao final do menu da tela _Layout.cshtml Adicionar Logoff no PublicoController <li>@html.actionlink("sair", "Logoff", "Publico")</li> public ActionResult Logoff() WebSite1.Repositories.Funcoes.Deslogar(); return RedirectToAction("Logar", "Publico"); Executar a aplicação Acessar a URL http://localhost:porta/publico/logar