Jump to content


Photo

Por Favor Me Ajudem Com Esse Script


  • Faça o login para participar
4 replies to this topic

#1 homevirtual

homevirtual

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado
  • Localidade:São Paulo
  • Interesses:Tudo que me seja interessante. . .

Posted 17/09/2004, 14:29

Amigo eu estou com este script para autenticação de usuário, e estou trabalhando com ele OFF-LINE, ou seja no PWS, sem esta no servidor online, mas toda vez que tento visualizar a pagina tanto LOGIN como a REG sempre me aparece esta linha:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][Driver ODBC para Microsoft Access] Não foi possível encontrar o arquivo '(desconhecido)'.

/meu/login.asp, line 1062


Fui até a linha indicada e vejo isto:

Conexao.Open Constr


O banco de dados esta na raiz principal, ou seja não esta em pasta nenhuma.

O script para REGISTRO é este:

<%
if request.form("reg") = "yes" then
'get variables from form
usn = request.form("usn")
pwd = request.form("pwd")
pwd2 = request.form("pwd2")
fname = request.form("fname")
lname = request.form("lname")
email = request.form("email")

'check varables are present and correct
if usn = "" then
  err = 1
  errmess = "You didnt insert a username<br>"
end if
if pwd = "" then
  err = 1
  errmess = errmess & "You didnt insert a password<br>"
end if
if pwd2 = "" then
  err = 1
  errmess = errmess & "You didnt insert a password again<br>"
end if
if fname = "" then
  err = 1
  errmess = errmess & "You didnt insert your first name<br>"
end if
if lname = "" then
  err = 1
  errmess = errmess & "You didnt insert your last name<br>"
end if
if InStr(email,"@") = 0 or InStr(email,".") = 0 or email = "" then
  err = 1
  errmess = errmess & "You didnt enter a valid email address<br>"
end if
if pwd <> pwd2 then
  err = 1
  errmess = errmess & "Your passwords dont match<br>"
end if

  if err = 0 then
   set dataconn = server.createobject ("ADODB.connection")
   set rs1 = server.createobject ("ADODB.recordset")
   dataconn.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=d:\meu\db2.mdbaonde es"(este é o lugar ta o banco de dados off-line)
   MYSQL = "SELECT * FROM members WHERE usern = '" & usn & "'"
   rs1.open MYSQL, dataconn, 1, 3
    if not rs1.EOF or not rs1.BOF then 'username exists already
     errmess = "Your choosen Username already exists"
    else
   
     rs1.AddNew
     rs1.Fields("usern") = usn
     rs1.Fields("passwo") = pwd
     rs1.Fields("fname") = fname
     rs1.Fields("lname") = lname
     rs1.Fields("email") = email
     rs1.Update
     response.redirect "login.asp"
    end if
   rs1.close()
   dataconn.close()
  end if
end if

%> Registre-se
<form name="form1" method="post" action="reg.asp">
  <table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="16%" align="right">Username </td>
      <td width="23%">
        <input type="text" name="usn" value="<%= usn %>">
      </td>
      <td width="12%" align="right">Senha</td>
      <td width="49%">
        <input type="password" name="pwd">
      </td>
    </tr>
    <tr>
      <td width="16%" align="right">Confirme Senha</td>
      <td width="23%">
        <input type="password" name="pwd2">
      </td>
      <td width="12%" align="right"> Email </td>
      <td width="49%">
        <input type="text" name="email" value="<%= email %>">
      </td>
    </tr>
    <tr>
      <td width="16%" height="27" align="right">Nome</td>
      <td width="23%" height="27">
        <input type="text" name="fname" value="<%= fname %>">
      </td>
      <td width="12%" height="27" align="right">Sobre Nome</td>
      <td width="49%" height="27">
        <input type="text" name="lname" value="<%= lname %>">
      </td>
    </tr>
    <tr>
      <td width="16%" height="27" align="right">&nbsp;</td>
      <td width="23%" height="27">
        <input type="submit" name="Submit" value="Submit">
        <input type="reset" name="Submit2" value="Reset">
        <input type="hidden" name="reg" value="yes">
      </td>
      <td width="12%" height="27" align="right">&nbsp;</td>
      <td width="49%" height="27">&nbsp;</td>
    </tr>
  </table>
</form>
<%= errmess %>


E o script para login é este:

<%
' BEGIN LOGON PROCEDURE
dologin = request.form("login")
usn = request.form("username")
psw = request.form("password")
if request.cookies("logoncookie")("cookname")<>"" then
usn = request.cookies("logoncookie")("cookname")
psw = request.cookies("logoncookie")("cookpass")
dologin = "login"
end if
if request.form("logoff")="logoff" then
dologin = "no"
session("logon")="no"
session("usn") = ""
session("admin") = "no"
response.cookies("logoncookie").expires = date  -1
end if
'decide whether to login or not
if dologin ="login" then
  set dataconn = server.createobject ("ADODB.connection")
  set rs1 = server.createobject ("ADODB.recordset")
  dataconn.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=d:\meu\db2.mdb"(este é o lugar ta o banco de dados off-line)
  MYSQL = "SELECT * FROM members WHERE usern = '" & usn & "'"
  rs1.open MYSQL, dataconn, 1, 3
  if not rs1.EOF or not rs1.BOF then 'username checker
   if psw = (rs1("passwo")) then  'check password
    session("logon") = "yes"
    session("usn") = usn
    if rs1("level") = "admin" then session("admin") = "yes"
    if request.form("rem") = "yes" then 'checkbox and create cookie
     response.cookies("logoncookie").Expires = date + 31
     response.cookies("logoncookie")("cookname")= usn
     response.cookies("logoncookie")("cookpass")= psw
    end if
   else
    session("logon") = "no" 'incorect password error
    errmess="password incorrect"
   end if
  else
   errmess="Incorect Username" 'incorrect username error
  end if
  rs1.close()
  dataconn.close()
 
end if
'show user logged in
if session("logon") = "yes" then
call logonyes
else
'show login required
call logonno
response.write errmess
end if
' END LOGIN PROCEDURE
%>
    </td>
  </tr>
</table>
<% function logonno() %>
<form name="form1" method="post" action="login.asp">
              Username
              <input type="text" name="username" size="17">
              <br>
              Password
              <input type="password" name="password" size="17">
              <br>
  Lembrar
  <input type="checkbox" name="rem" value="yes">
              <input type="submit" name="login" value="login">
</form>
<p>Por favor <a href="reg.asp">Clique Aqui</a> e registre-se</p>
<form name = "form1" method="post" action="login.asp">
              <input type="submit" name="logoff" value="logoff">
</form>
<% end function %>


O que devo fazer e como fazer?

Peço por favor a sua ajuda, pois sou leigo e gostaria de inserir este script em meu site para manter o controle so usuarios.

Obrigado.

PS: Este script eu peguei do PORTAL FIREMASTERS. Ele se constitue em:
Um banco de dados ACCESS
Uma página para LOGIN
Uma Página para REGISTRO

Edição feita por: homevirtual, 17/09/2004, 14:32.


#2 powerAsp_X

powerAsp_X
  • Visitantes

Posted 17/09/2004, 14:46

Amigo,

faça este teste e altere a linha abaixo:

dataconn.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=d:\meu\db2.mdb"

Por esta

 dataconn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("meu/db2.mdb") 

Depois fala o resultado ae...

:ph34r:

#3 homevirtual

homevirtual

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado
  • Localidade:São Paulo
  • Interesses:Tudo que me seja interessante. . .

Posted 17/09/2004, 16:21

Amigo,

faça este teste e altere a linha abaixo:

dataconn.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=d:\meu\db2.mdb"

Por esta

 dataconn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("meu/db2.mdb") 

Depois fala o resultado ae...

:ph34r:

Após fazer a mudança indicada me apareceu agora outra linha.

<% Set Conexao = CreateObject("ADODB.CONNECTION")


O que faço?

Obrigado

#4 powerAsp_X

powerAsp_X
  • Visitantes

Posted 17/09/2004, 18:00

A sintaxe correta é

<%
Set Conexao = Server.CreateObject("ADODB.CONNECTION")
%>

[]'s

:ph34r:

#5 homevirtual

homevirtual

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado
  • Localidade:São Paulo
  • Interesses:Tudo que me seja interessante. . .

Posted 17/09/2004, 18:31

A sintaxe correta é

<%
Set Conexao = Server.CreateObject("ADODB.CONNECTION")
%>

[]'s

:ph34r:

Tudo be ma sintaxe pode esta correta, mas infelizmente eu não estou conseguindo corrigir este erro.

Por isso estou sendo humilde em pedir ajuda neste caso.
Caso possa me ajudar desde já agradeço




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq