Problemas com if e inserção no banco
Creio que fiz tudo certo, mas não funciona direito, não estou conseguindo ver onde está o erro.
<html>
<script language="JavaScript">
<!--
function verifica(Form_acesso)
{
// *** Testando os campos ***
if (Form_acesso.nome.value == "") {
alert("\nFavor informar o nome.")
Form_acesso.nome.focus();
return false; }
if (Form_acesso.nome.value.length < 3) {
alert("\nO campo nome deve conter no mínimo três letras.\n\nFavor Corrigir.")
Form_acesso.nome.focus();
return false; }
for (var i = 0; i < Form_acesso.nome.value.length; i++) {
var ch = Form_acesso.nome.value.substring(i, i + 1);
if (Form_acesso.senha.value == "") {
alert("\nFavor informar a senha.")
Form_acesso.senha.focus();
return false; }
if (Form_acesso.senha.value.length < 3 ) {
alert("\nO campo Senha deve conter no mínimo 4 dígitos alfa-numéricos.\n\nFavor Corrigir.")
Form_acesso.senha.focus();
return false; }
else
if (Form_acesso.nsenha.value != "" || Form_acesso.cnsenha.value != "") {
if (Form_acesso.nsenha.value.length < 3) {
alert("\nO campo Nova Senha deve conter no mínimo 4 dígitos alfa-numéricos.\n\nFavor Corrigir.")
Form_acesso.nsenha.focus();
return false; }
// *** Return false se os caracteres não forem de a-z, A-Z, ou 0-9 ****
for (var i = 0; i < Form_acesso.nsenha.value.length; i++) {
var ch = Form_acesso.nsenha.value.substring(i, i + 1);
if (((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch)) && (ch < "0" || "9" < ch)) {
alert("\nO campo Nova Senha só aceita letras e números.\n\nFavor corrigir.");
Form_acesso.nsenha.focus();
return false; } }
// ************************
if (Form_acesso.cnsenha.value.length == "") {
alert("\nFavor confirmar a Nova Senha.")
Form_acesso.cnsenha.focus();
return false; }
if (Form_acesso.cnsenha.value.length < 3) {
alert("\nO campo Confirma Nova Senha deve conter no mínimo 4 dígitos alfa-numéricos.\n\nFavor Corrigir.")
Form_acesso.cnsenha.focus();
return false; }
if (Form_acesso.cnsenha.value != Form_acesso.nsenha.value) {
alert("\nSenha Confirmada diferente da Nova Senha.\n\nFavor Corrigir.")
Form_acesso.cnsenha.focus();
return false; }
if (Form_acesso.nsenha.value == Form_acesso.senha.value) {
alert("\nNova Senha é igual a Senha atual.\n\nFavor Corrigir.")
Form_acesso.nsenha.focus();
return false; } }
// *** Confirma Informações ***
{
retorno=confirm("\nConfirma o envio das Informações?")
if (retorno == false) {
return false; } }
// *** Confirma - final ***
return true; }
-->
</script>
<head>
<title>Acesso Restrito</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript" src="help/js/helptip.js"></script>
<link type="text/css" rel="StyleSheet" href="help/css/helptip.css" />
<style type="text/css">
body {
font: Small Verdana;
background: White;
color: Black;
}
</style>
</head>
<body bgcolor="#FFFFFF" text="#000000"><%
login=Request.Form("nome")
senha=Request.Form("senha")
'Conexão com o banco de dados
Set DB = Server.CreateObject("ADODB.Connection")
'usar o mesmo objeto, DB, não pode haver espaços
DB.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\trabalho\login\acesso.mdb;ReadOnly=0; DB, 3, 3"
executar = "SELECT * FROM acesso where nome = '" & nome & "' and senha = '" & senha & "';"
'verifica se o campo já existe
set query = db.execute(executar)
'verifica se o campo já existe
set query = db.execute(executar)
if query.eof = true then
'response.redirect "c:\Trabalho\login\entrada_dados1.htm"%>
<form action="login.asp" method="post" name="Form_acesso" onsubmit="return verifica(this)" align="center">
<div align="left"><table width="760" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="508"><table width="505" border="0" cellspacing="6" cellpadding="4">
<tr>
<td width="137" align="right">
<font face="Arial, Helvetica, sans-serif" size="2">Nome:</font></td>
<td width="123"><font face="Arial, Helvetica, sans-serif" size="2"><input maxlength="8" name="nome" size="8" style="FONT-FAMILY: Arial; FONT-SIZE: 10pt" tabindex="1"> </font></td>
<td width="203" align="center"></td>
</tr>
<tr>
<td width="137" align="right"><font face="Arial, Helvetica, sans-serif" size="2">Senha:</font></td>
<td width="123"><font face="Arial, Helvetica, sans-serif" size="2"><input maxlength="8" name="senha" size="8" style="FONT-FAMILY: Arial; FONT-SIZE: 10pt; LETTER-SPACING: 2px; TEXT-ALIGN: justify" tabindex="2" type="password"> </font></td>
<td width="203" align="center"><font face="Arial, Helvetica, sans-serif" size="2">
<a href="acesso.asp"><input name="B1" style="FONT-FAMILY: Arial; FONT-SIZE: 10pt" tabindex="5" type="submit" value="Enviar"></a> </font></td>
</tr>
<tr>
<td width="137" align="right"><font face="Arial, Helvetica, sans-serif" size="2">
Nova Senha:</font></td>
<td width="123"><font face="Arial, Helvetica, sans-serif" size="2">
<input maxlength="8" name="nsenha" id="nsenha" size="8" style="FONT-FAMILY: Arial; FONT-SIZE: 10pt; LETTER-SPACING: 2px; TEXT-ALIGN: left" tabindex="3" type="password" onLoad="habilitaCampos('nsenha') style="display: 'none';"> </font></td>
<td width="203" align="center"><font face="Arial, Helvetica, sans-serif" size="2">
<input name="B2" style="FONT-FAMILY: Arial; FONT-SIZE: 10pt" tabindex="6" type="reset" value="Limpar"> </font></td>
</tr>
<tr>
<td width="137" align="right"><font face="Arial, Helvetica, sans-serif" size="2">
Confirma Nova Senha:</font></td>
<td width="123"><font face="Arial, Helvetica, sans-serif" size="2"><input maxlength="8" name="cnsenha" id="cnsenha" size="8" style="FONT-FAMILY: Arial; FONT-SIZE: 10pt; LETTER-SPACING: 2px; TEXT-ALIGN: left" tabindex="4" type="password" onclick="habilitaCampos('cnsenha');"> </font></td>
<td width="203" align="center"></td>
</tr>
<tr>
<td width="137"><div align="center"></div></td>
<td width="123"></td>
<td width="203"><font color="#000080" face="Arial" size="2"><div align="center"><center><p>Esqueceu
sua Senha?<br>
Solicite nova </font><a href="mailto:" style="TEXT-DECORATION: none"><font color="#ff0000" face="Arial" size="2"><strong>AQUI</strong></font></a> </td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</form>
<%
'set rs = DB.execute("INSERT INTO acesso (nome,senha) Values('"&nome&"','"&senha&"')")
sql = "INSERT INTO acesso (nome,senha) VALUES ('" & nome & "','" & senha & "')"
DB.Execute sql
response.write "Registro inserido com sucesso!"
else
response.write "Registro existente!"end if
Primeiro, quando tento logar, sempre diz registro existente e segundo, nada é inserido no banco. O if está certo, é ó ir até o final do banco, não encontrou o registro então permite a incerssão se não diz registro existente. Algo está escapando a minha visão e sempre cai no false, registro existente.
Obrigado.
Discussão (18)
Carregando comentários...