Ir para conteúdo
Fórum Script Brasil
  • 0

Usuarios Iguais


Gustavo147

Pergunta

Como eu faço pra num da pra cadastra com o nome de usuario q já tah cadastrado??? porque desse jeito q eu fiz tah aceitandu nomes iguais... como eu arrumo??

<?php

if ($acao == salvar){

$conecta = mysql_connect("localhost","root","");

mysql_select_db("db", $conecta) or print(mysql_error());

$senha = crypt($senha,"kazue");

$add = "INSERT INTO admin (nome, user, senha, email, url) VALUES ('$nome', '$user', '$senha', '$email', '$url')";

mysql_query($add,$conecta);

} else{

echo "<form method=\"POST\" action=\"add_user.php?acao=salvar\">

  Nome: <input type=\"text\" name=\"nome\" size=\"20\"><br>

  Usuario: <input type=\"text\" name=\"user\" size=\"20\"><br>

  Senha: <input type=\"password\" name=\"senha\" size=\"20\" maxlength=\"15\"><br>

  Email: <input type=\"text\" name=\"email\" size=\"20\"><br>

  URL: <input type=\"text\" name=\"url\" size=\"20\"><br>

  <input type=\"submit\" value=\"Cadastrar\">

</form>";

}

?>

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0

depois de conectado e selecionado o db, supondo que o formulario de cadastro passou as variaveis $user e $senha , faz assim:

$sql = mysql_query("SELECT * FROM tabela WHERE user='$user'");

$linhas = mysql_num_rows($sql);

if ($linhas != 0)

{

header ("Location: pagina_de_erro.php");

}

else

{

mysql_query("INSERT INTO tabela (user, senha) VALUES ('$user', '$senha')");

header ("Location: sucesso.php");

}

espero ter ajudado =)

Link para o comentário
Compartilhar em outros sites

  • 0

você pode determinar também o campo como sendo unico.. tipo não podendo ter nomes ou numeos iguais.. pode ser que o usuario tente cadastrar com case diferente daquele jác dastrado.. mas dai você faz a verificação de maiusculas e minusculas..

Link para o comentário
Compartilhar em outros sites

  • 0
você pode determinar também o campo como sendo unico.. tipo não podendo ter nomes ou numeos iguais.. pode ser que o usuario tente cadastrar com case diferente daquele jác dastrado.. mas dai você faz a verificação de maiusculas e minusculas..

como eu determino o campo unico???

e Hawker num funciono o q você falo não....mesmo assm vlw biggrin.gif

falou

Link para o comentário
Compartilhar em outros sites

  • 0

você pode fazer assim

$pesquisar = mysql_query("SELECT * FROM tabela WHERE login = '$login'", $db);

$contagem = mysql_num_rows($pesquisar);

if ( $contagem == 1 ) {

$errors .= "Login escolhido já cadastrado.<br>";

}

else {

mysql_query("INSERT INTO $tabela (login, senha)

VALUES ('$login','$senha', $db);

}

Link para o comentário
Compartilhar em outros sites

  • 0

Usar o campo do tipo Unique não resolve muita coisa, só retorna um baita erro na hora de cadastrar com o mesmo valor.... por questões de segurança acho até válido, mas tem que fazer uma verificação manual mesmo, o usuário leigo [e infelizmente alguns programadores] não sabem interpretar os erros do MySQL e ver o que estava errado...

Pra definir o campo como Unique, via PMA [PhpMyAdmin], é só marcar a opção Unique quando for criar/modificar o campo... ela deve ser uma das últimas, perto de PRIMARY KEY e INDEX...

Sobre a verificação... Gustavo, você sabe fazer um SELECT usando o WHERE pra procurar por um valor específico??? huh.gif

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...