Avatar billede toranaga Nybegynder
30. marts 2004 - 14:40 Der er 5 kommentarer

Hjælp til login script

Jeg har en asp admin side som jeg ønsker login til. Jeg har en database hvori der er en tabel kaldet BrugerDB. Heri står det brugernavn og adgangskode der kan bruges til login. Jeg har forsøgt at kopiere scriptet over fra noget jeg har brugt tidligere (som en bekendt har lavet for mig). Her følger hele siden med login. Meningen er så at man skal stilles videre til adm.asp ved korrekt login, men det virker ikke. Den melder ingen fejl udover siden kan ikke vises. Kan nogen se fejl i følgende?:

<!-- #INCLUDE FILE="adovbs.inc" -->

<%
IF Request("login") = "bad" THEN
Response.Write "<center><font face=""ariel"" size=""2"">Adgang nægtet, prøv igen.</font></center>"
END IF

IF Request("login") = "check" THEN

Dim Path, FinalPath, DSN
path = split(StrReverse(server.mappath(Request.ServerVariables("PATH_INFO"))),"\",2)
finalpath = StrReverse(path(1))
News = "DBQ=" & finalpath &"\..\Fpdb\database.mdb;DefaultDir=" & finalpath & "\..\Fpdb ;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;ImplicitCommitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes;"

'Connect to database
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.CursorLocation = adUseClient
Conn.Open News

'Create recordset and retrieve information
SQL = "SELECT * FROM BrugerDB WHERE username = '" & Request.Form("name") & "'"
Set rs = Server.CreateObject("ADODB.RecordSet")
Rs.Open SQL, Conn, adOpenStatic, adLockReadOnly

IF rs("password") = Request.Form("pass") THEN

Response.Cookies("SavedLogin")("Username") = rs("username")
Response.Cookies("SavedLogin")("pass") = rs("password")
Response.Cookies("SavedLogin")("Status") = rs("Status")
Response.Cookies("SavedLogin")("email") = rs("email")
Response.Cookies("SavedLogin")("tid") = now
Response.Cookies("SavedLogin").expires = date + 30
Session("login") = "true"

Response.Redirect "adm.asp"
ELSE
Response.Redirect "login.asp?login=bad"
END IF
END IF

%>
<title>admin - login</title>
<body>
<p>

<p align="center">
<p align="center">
<b><font face="Arial" size="4" color="#FFFFFF">Køb &amp; Salg administration</font></b><form method="POST" action="login.asp?login=check">

  <div align="center">
    <table border="1" width="300" bordercolor="#000000" bordercolorlight="#000000" bordercolordark="#000000" cellspacing="0" cellpadding="0" style="border-collapse: collapse">
      <tr>
        <td width="50%">
          <p align="right"><font face="Arial" size="2"><b>Username:</b></font></td>
        <center>
        <td width="50%"><input type="text" name="name" value="<%=Request.Cookies("SavedLogin")("Username")%>" size="20"></td>
        </tr>
      </center>
      <tr>
        <td width="50%">
          <p align="right"><b><font size="2" face="Arial">Password:</font></b></td>
        <center>
        <td width="50%"><input type="password" name="pass" value="<%=Request.Cookies("SavedLogin")("pass")%>" size="20"></td>
        </tr>
      </table>
    </center>
  </div>
  <%
  IF Request.Cookies("SavedLogin")("tid") = "" THEN
  ELSE
  %>
  <p align="center"><font face="Arial" size="1">Du var sidst logget på <%=Request.Cookies("SavedLogin")("tid")%></font></p>
<%END IF%>
Avatar billede toranaga Nybegynder
30. marts 2004 - 14:43 #1
Her er så den side med admin delen som man skal få adgang til:

<!-- #INCLUDE FILE="adovbs.inc" -->
<%
IF Session("login") = "" THEN
Response.Redirect "login.asp"
END IF

IF Request("add") = "yes" THEN

function SQLBless(s)
    dim tmp
   
    tmp = s
   
    tmp = replace(tmp, "'", "''")

    SQLBless = tmp
end function
%>

<html>
<head>
<title>nyhedsmail administration</title>
</head>
<style>
    body { font-family: Verdana, Arial; font-size: 8pt }
</style>
<body>

<p align="center">Nyhedsmail administration</p>

    Emne :<br>
  <form action="/nyhedsmail/admin_ac.asp" method="post">
  <input type="text" name="subject" size="20"></input><br><br>
  Besked :<br><br>
  <textarea name="message" cols="60" rows="15"></textarea><br>
  <input type="submit" value="Send">
  </form>

</body>
</html>
Avatar billede phineas_phreak Nybegynder
30. marts 2004 - 15:07 #2
sikker på at dub include file ligger det rigtige sted ?

i din form kalder du filen  action="/nyhedsmail/admin_ac.asp"

og i filen admin_ac.asp refererer du til din .inc som om den lå i samme katalog.

Medmindre du har 2 .inc filer skal du rette destinationen i én af filerne så du får rigtig henvisning. Ellers får du fejl
Avatar billede phineas_phreak Nybegynder
30. marts 2004 - 15:08 #3
Prøver lige på lidt bedre dansk :)

Hvis din fil adovbs.inc ligger i samme katalog som login.asp skal du i

filen admin_ac.asp rette øverste linje
<!-- #INCLUDE FILE="adovbs.inc" -->

til

<!-- #INCLUDE FILE="../adovbs.inc" -->
Avatar billede toranaga Nybegynder
30. marts 2004 - 15:34 #4
filen admin_ac.asp indeholder ikke <!-- #INCLUDE FILE="../adovbs.inc" -->
Avatar billede phineas_phreak Nybegynder
30. marts 2004 - 15:42 #5
godt, men kan du se hvad jeg mener ?

i det første indlæg du postede skrev du...

<!-- #INCLUDE FILE="adovbs.inc" -->

<%
IF Request("login") = "bad" THEN
Response.Write "<............


osv. osv.

Det var derfor jeg gik udfra det var den fil der hed admin_ac.asp

men ihvertfald skal du sikre dig at referecen til din .inc fil er korrekt i alle filer. Start med det ville være mit bud
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester