Ir para conteúdo

Arquivado

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

André Mailho

Criar uma pagina de cadastro de usuario para um site, (asp.net,c#,SQL)

Recommended Posts

Pessoal, no site asp.net que estou criando, preciso criar todo o sistema de login, cadastro de usuario, etc. Ja criei a pagina de login (com a ajuda do pessoal do forum inclususive), e agora preciso criar a pagina de cadastro de novos usuarios! Tenho que fazer a parte de codigo em c# e vou usar o SQL manager 2008 como banco de dados.

O cadastro do usuario devera ter:

 

Nome do Usuário

Senha

Confirmar Senha

Email

 

A minha duvida, é como faço a parte do codigo em C# para realizar essa tarefa (gravar o usuario no banco) e a parte no sql (tipo, eu tenho que criar uma outra tabela para o cadastro? ou continuo usando a mesma tabela que ja possui usuarios!? digo que ja possui usuarios por que eu cadastrei manualmente no SQL).

 

 

Obrigado pela ajuda desde ja.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você criou as tabelas de aspnet Users ou fez tabelas por conta propria?

 

Já que o visual studio tem ferramentas que gerenciam usuarios e níveis de acesso, você pode usar elas, caso contrário, você mesmo pode criar tudo como quer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo, a parte de cadastro em si eu ja consegui fazer! eu preciso mesmo é definir algumas regras para o cadastro! Por exemplo, o usuario nao pode criar a conta caso esteja faltando algum campo, como Usuario, ou email, ou senha. O que eu preciso é impedir que um usuario ou/e email repetido sejam criados! Entao se o usuario ou email ja existe no banco de dados ele nao pode ser repetido. vou postar o codigo abaixo para voces verem como esta:

 

 

protected void btnCriar_Click(object sender, EventArgs e)
		{
			if (userName.Text != "" && senha.Text != "" && email.Text != "" && confirmPassword.Text != "" && senha.Text == confirmPassword.Text)
			{
				String strcon = "Data Source=localhost; Initial Catalog=andreLogin_db; Persist Security Info=true; User ID=sa; password=coldwell";
				String inserir = "insert into validar(nome, senha, email, confirmaSenha) values ('" + userName.Text + "','" + senha.Text + "','" + email.Text + "','" + confirmPassword.Text + "')";

				SqlConnection conexao = new SqlConnection(strcon);
				conexao.Open();

				SqlCommand cmdinsert = new SqlCommand(inserir, conexao);
				cmdinsert.ExecuteNonQuery();

				conexao.Close();

				Response.Redirect("Default.aspx");
			}
			else
			{
				lblErroSenha.Text = "As informações não estão corretas, por favor verifique e tente novamente.";
			}


		}
		protected void btnVoltar_Click(object sender, EventArgs e)
		{
			Response.Redirect("Default.aspx");
		}
}
}

 

entao com a linha:

if (userName.Text != "" && senha.Text != "" && email.Text != "" && confirmPassword.Text != "" && senha.Text == confirmPassword.Text)

eu impeço que algum campo esteja em branco e que a senha no campo "senha" e no campo "confirmar senha" sejam obrigatóriamente iguais. Entao falta eu proibir que o campo usuario e email possam ser criados uma segunda vez.

 

obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

para validar nao se esforce

 

use na parte de ferramentas a ferramente da validacao

 

requestfiledvalidator (marque o campo a ser preenchido e a mensagem de erro)

faça issoem todos os campos

 

no campo senha e confirma senha

use

compare validator

e marque os 2 campos p/ comparar e coloque a mensagem de erro

apos isso feito

 

coloque o Validationsumary

nas propriedades dele

eu uso

showsumary = false

showmessagebox = true

 

ai ele vai mostrar como alert as validacoes

 

e so vai acionar o botao qdo td estiver preenchido

ai você noa vai precisar se preoupar com a validacao no codebehind

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

para validar nao se esforce

 

use na parte de ferramentas a ferramente da validacao

 

requestfiledvalidator (marque o campo a ser preenchido e a mensagem de erro)

faça issoem todos os campos

 

no campo senha e confirma senha

use

compare validator

e marque os 2 campos p/ comparar e coloque a mensagem de erro

apos isso feito

 

coloque o Validationsumary

nas propriedades dele

eu uso

showsumary = false

showmessagebox = true

 

ai ele vai mostrar como alert as validacoes

 

e so vai acionar o botao qdo td estiver preenchido

ai você noa vai precisar se preoupar com a validacao no codebehind

 

abraço

 

O que ele disse acima são componentes nativos do Visual Studio que fazem validações. Veja-os na aba Validation do Visual Studio.

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

as restrições de repetição de nomes/emails você pode tratar via codigo ou na propria definição das suas tabelas SQL (defina campos como UNIQUE).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok essa explicação do marcal foi mais simples; por que só agora eu achei o requiredFiledValidator (tipo, toolbox - validation - requiredFiledValidator, era disso que eu precisava) mas marcando como UNIQUE no SQL, quando eu repito o nome, ele da erro! tipo, eu nao quero que ele de erro! só que ele nao permita que um campo repetido seja criado e que apareça uma mensagem na label quando isso acontecer.

 

 

e quanto ao requiredFiledValidator, eu achei e adicionei ele na pagina, e editei a mensagemd e erro! mas como faço pra "linkar" ele com o texbox userName e email?????

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom eu ja inseri o validation summary e o requiredFieldValidator, mas ele só da erro quando todos os campos estao vazios ( e para isso eu ja criei uma mensagem de erro)! mas ele continua permitindo que usuarios repetidos sejam criados! no campo "ControlToValidate" eu ja coloquei o nome do textBox (userName), mas nao adiantou muito http://forum.imasters.com.br/public/style_emoticons/default/cry.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

quintelab essas explicaçoes vagas nao estao me ajudando muito! que consulta no sql? Se voce nao me explicar exatamente como fazer algo eu vou ficar a vida toda procurando até conseguir! se alguem me dissese o que eu preciso fazer para que a validação funcione seria muito bom.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não são explicações vagas, seu problema que é simples e as respostas também.

Você precisa saber se já existe o nome cadastrado certo? No evento do seu botão, antes de você fazer o insert para gravar o novo você faz um select na sua tabela com o where do nome seja igual ao que o usuário digitou, se for igual de uma mensagem ao usuário, caso o contrário grave o registro.

 

Abraços...

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.