Ir para conteúdo

POWERED BY:

Arquivado

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

rmlm

[Resolvido] Sistema de Login

Recommended Posts

Boas,

 

antes de por a dúvida do titulo do tópico queria por outra:

 

Eu tenho uma página em que tenho um formulário de login e um formulário de registo, mas tudo no mesmo formulário, porque ao que parece o asp.net não me deixa ter mais que um formulário do lado do servidor...

 

Conclusão, quando carrego no botão de Login mostra-me as mensagens de validação dos campos de registo, o que só devia acontecer quando carrego no botão de registar! Solução para isto?

 

A segunda dúvida é a seguinte:

Eu já tenho o sistema de registo a funcionar, mas não sei fazer o de login...

Eu já tentei algumas coisas mas nenhuma da... se alguém me pudesse ajudar...

 

Sou iniciante em asp.net.

Em php já fiz muitos sistemas de login... mas este asp.net parece-me muito inflexível e muito automático e desconheço a sua API.

 

Eu tenho uma cadeira em que estou a dar isto mas não me apetece esperar e comecei já a explora!

Já me esquecia, estou a trabalhar em MySql.

 

Aguardo ajuda...

Compartilhar este post


Link para o post
Compartilhar em outros sites

A sua duvida é em ASP.NET ou ASP Classico ?

Se for em ASP.NET irei mover seu topico para a seção correta

 

ASP.NET e a linguagem é C#

 

Desculpa...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poderia mandar como está seu código?

 

Está usando algum tipo de validação, como requiredfieldvalidator?

A parte de login, está usando como? Sessão?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poderia mandar como está seu código?

 

Está usando algum tipo de validação, como requiredfieldvalidator?

A parte de login, está usando como? Sessão?

 

Sim estou a usar requiredfieldvalidator...

 

Quanto á parte do login não sei por onde começar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entao

 

nos campos do formulário de registro coloque os required normal e no botão que dispara o evento, validationGroup qualquer

 

para o formulário de login, utilize um validationGroup diferente, assim não ira disparar o required dos outros campos!

 

Para o Login, utilize Sessão.

Ao logar, você verificar se aquele usuário e senha existem no BD e estão corretos, caso estiverem você armazena em Sessão.

 

Session["usuário"] = usuário;

 

ai é só verificar se o usuário está logado nas demais páginas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entao

 

nos campos do formulário de registro coloque os required normal e no botão que dispara o evento, validationGroup qualquer

 

para o formulário de login, utilize um validationGroup diferente, assim não ira disparar o required dos outros campos!

 

Para o Login, utilize Sessão.

Ao logar, você verificar se aquele usuário e senha existem no BD e estão corretos, caso estiverem você armazena em Sessão.

 

Session["usuário"] = usuário;

 

ai é só verificar se o usuário está logado nas demais páginas.

 

 

O meu código tá assim:

   <form id="formulario" runat="server">

   <div id="registo"> <!-- INICIO REGISTO -->
       <table>
           <tr>
               <td class="titulo_registo">Primeiro Nome:</td>
               <td>
                   <asp:TextBox CssClass="campo" ID="primeiro_nome" runat="server"></asp:TextBox>
                   <asp:RequiredFieldValidator CssClass="validador" ID="validar_primeiro_nome" runat="server" ErrorMessage="Preencha o primeiro nome!" ControlToValidate="primeiro_nome"></asp:RequiredFieldValidator>
               </td>
           </tr>
           <tr>
               <td class="titulo_registo">Último Nome:</td>
               <td>
                   <asp:TextBox CssClass="campo" ID="ultimo_nome" runat="server"></asp:TextBox>
                   <asp:RequiredFieldValidator CssClass="validador" ID="validar_ultimo_nome" runat="server" ErrorMessage="Preencha o último nome" ControlToValidate="ultimo_nome"></asp:RequiredFieldValidator>
               </td>
           </tr>
           <tr>
               <td class="titulo_registo">Email:</td>
               <td>
                   <asp:TextBox CssClass="campo" ID="email" runat="server"></asp:TextBox>
                   <asp:CompareValidator CssClass="validador" ID="validar_email" runat="server" ErrorMessage="Emails não coincidem" ControlToCompare="repita_email" ControlToValidate="email"></asp:CompareValidator>
               </td>
           </tr>
           <tr>
               <td class="titulo_registo">Repita o email:</td>
               <td>
                   <asp:TextBox CssClass="campo" ID="repita_email" runat="server"></asp:TextBox>
               </td>
           </tr>
           <tr>
               <td class="titulo_registo">Password:</td>
               <td>
                   <asp:TextBox CssClass="campo" ID="password" runat="server" TextMode="Password"></asp:TextBox>
                   <asp:CompareValidator CssClass="validador" ID="vadidar_password" runat="server" ErrorMessage="Passwords não coincidem" ControlToCompare="repita_password" ControlToValidate="password"></asp:CompareValidator>
               </td>
           </tr>
           <tr>
               <td class="titulo_registo">Repita a Password:</td>
               <td>
                   <asp:TextBox CssClass="campo" ID="repita_password" TextMode="Password" runat="server"></asp:TextBox>
               </td>
           </tr>
           <tr>
               <td class="titulo_registo">Foto:</td>
               <td><asp:FileUpload ID="foto" runat="server" Height="26px" /></td>
           </tr>
           <tr>
               <td><asp:Button CssClass="botao" ID="botao_registar" Text="Registar" runat="server" onclick="botao_registar_Click"  /></td>
               <td>
                   <asp:Label ID="avisos" runat="server" Text=""></asp:Label>
               </td>
           </tr>
       </table>
   </div>  <!-- FIM REGISTO -->

   <div id="barra_topo"> <!-- INICIO BARRA_TOPO -->
       <table width="100%">
           <tr>
               <td width="23%"><img id="logo" alt="logo agenda online" src="Imagens_Site/logo_final.png" /></td>
               <td class="cb" width="10%" valign="bottom">
                   <table width="100%">
                       <tr>
                           <td valign="bottom"><div class="titulo_login">Email:</div></td>
                       </tr>
                       <tr>
                           <td valign="bottom"><asp:TextBox ID="campo_user" runat="server"></asp:TextBox></td>
                       </tr>
                   </table>
               </td>
               <td class="cb" width="10%" valign="bottom">
                   <table width="100%">
                       <tr>
                           <td valign="bottom"><div class="titulo_login">Password:</div></td>
                       </tr>
                       <tr>
                           <td valign="bottom"><asp:TextBox ID="campo_pass" runat="server"></asp:TextBox></td>
                       </tr>
                   </table>
               </td>
               <td class="cb" width="4%" valign="bottom">
                   <table>
                       <tr>
                           <td><asp:Button CssClass="botao" ID="botao_entrar" Text="Entrar" runat="server" /></td>
                       </tr>
                   </table>
               </td>
               <td width="50%">
                   <asp:Label CssClass="validador" ID="Label1" runat="server" Text=""></asp:Label>
               </td>
           </tr>
       </table>
   </div> <!-- FIM BARRA_TOPO -->
   </form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aí só tem html, aspx, cade a parte de programação?

 

Abraços...

 

O código é este:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data.MySqlClient;
using System.IO;

public partial class _Default : System.Web.UI.Page
{
   MySqlConnection coneccao;
   MySqlCommand comando;

   protected void Page_Load(object sender, EventArgs e)
   {

   }

   protected void botao_registar_Click(object sender, EventArgs e)
   {

       coneccao = new MySqlConnection();
       String StrConeccao = "server=localhost; User Id=root; password=; database=tec_internet_ii";

       coneccao.ConnectionString = StrConeccao;

       comando = new MySqlCommand();
       comando.Connection = coneccao;

       try
       {
           //Insere o novo utilizador na base de dados
           String Consulta = "INSERT INTO membros (idMembros, primeiro_nome, ultimo_nome, email, password, foto_pessoal, registo) VALUES (null, '" + primeiro_nome.Text + "', '" + ultimo_nome.Text + "', '" + email.Text + "', SHA1('" + password.Text + "'), '" + foto.FileName + "', NOW())";

           coneccao.Open(); //Abre a coneccao a base de dados
           comando.CommandText = Consulta;
           comando.ExecuteNonQuery();
           coneccao.Close(); //Fecha a coneccao a base de dados

           String caminho = Server.MapPath("Imagens_Users\\" + foto.FileName);

           if (!File.Exists(caminho))
           {
               foto.SaveAs(caminho);
           }

           avisos.Text = "Registo efectuado com sucesso!";
       }
       catch (Exception)
       {
           avisos.Text = "Utilizador já existe ou ocorreu um erro inesperado!";
       }
   }


   protected void botao_entrar_Click(object sender, EventArgs e)
   {
     //Aqui será o código para fazer login que não sei


   }
}

 

Como podem ver a parte do registo acho que está bem, mas agora a de fazer o ligin não sei bem como fazer se me puderem ajudar

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

O Sistema de Login também já consegui :joia:

 

Obrigado pela ajuda

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.