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"> </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"> </td>
<td width="49%" height="27"> </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.