Avatar billede poppo Nybegynder
20. september 2007 - 18:23 Der er 15 kommentarer og
1 løsning

asp login

hej...

hvem kan hjælpe hurtigst muligt..

skal bruge et login script med en login side og en password beskyttet side og en logud side som kan køre på mit webhotel.

jeg har oploadet mine filer på one.com hotel og de sider jeg har virker ikke

kan en prøve at lave de sider?? de kører noget asp under sun java kan i tjekke på one.com

takkkkkkkkkkkkker
Avatar billede w13 Novice
20. september 2007 - 18:55 #1
Må vi se de sider, du har, som ikke virker? Ellers risikerer vi jo bare, at lave samme fejl.
Avatar billede w13 Novice
20. september 2007 - 19:06 #2
Ellers kan du benytte nedenstående kode til at logge dine brugere ind med.

login.asp
----------------------------------------
<%Set rs=Server.CreateObject("ADODB.RecordSet")
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("/db/database.mdb")

Set rs=Conn.Execute("SELECT * FROM [users] WHERE [username]='"&Request.Form("username")&"' And '"&Request.Form("password")&"'")
If Not rs.EOF Then
    Session("username")=""
    Response.Redirect "wronglogin.asp"
Else
    Session("username")=rs("username")
    Response.Redirect "oklogin.asp"
End If
rs.Close

Conn.Close
set Conn=nothing%>
----------------------------------------
Her i koden hedder databasen "database.mdb" og ligger i mappen "db". Brugertabellen hedder "users", brugernavnfeltet hedder "username", passwordfeltet hedder "password", og hvis man ikke eksisterer, bliver man videresendt til siden "wronglogin.asp". Hvis login'en er i orden, opbevares brugernavnet i Session("username") og man videresendes til "oklogin.asp".

Så kan du indsætte <%If Session("username")="" Then Response.Redirect "wronglogin.asp"%> på de sider, som skal være passwordbeskytte.
Og ved logud kan du bare køre <%Session.Abandon%> - så nulstilles alle sessions.
Avatar billede w13 Novice
20. september 2007 - 19:11 #3
Brugere kan så logge ind fra en anden side med:
------------------------------------
<form method="post" action="login.asp">
    Brugernavn: <input type="text" name="username"><br>
    Password: <input tyoe="text" name="password"><br>
    <input type="submit" value="Log ind">
</form>
------------------------------------
I øvrigt var der en fejl i login.asp-koden.

Set rs=Conn.Execute("SELECT * FROM [users] WHERE [username]='"&Request.Form("username")&"' And '"&Request.Form("password")&"'")
skulle være:
Set rs=Conn.Execute("SELECT * FROM [users] WHERE [username]='"&Request.Form("username")&"' And [password]='"&Request.Form("password")&"'")
Avatar billede poppo Nybegynder
20. september 2007 - 19:15 #4
hej..

har lige fundet ud af at det er fordi de ikke understøtter access database på webhotellet så de 3 forskellige side jeg skal bruge skal ikke bruge sådan en

mvh per
Avatar billede w13 Novice
20. september 2007 - 19:18 #5
Ok. Så er det vel ret omfattende? Du har allerede en access database, right? Så du skal have alt fra den over i en anden database, som one.com understøtter.
Avatar billede w13 Novice
20. september 2007 - 19:21 #6
Princippet er det samme. Når login er godkendt fra databasen opbevarer du bare brugernavnet i en Session - evt. Session("username") - og så kan du teste, om den er tom, på de sider, der skal være passwordbeskyttet. Er den tom, er man ikke logget ind. Ved logud bruger du blot Session.Abandon .

Hvis du ønsker at vise brugeren hans brugernavn, kan du bare bruge:

Response.Write Session("username")
Avatar billede poppo Nybegynder
20. september 2007 - 19:31 #7
øøøøhhh... pass

det var ikke lige til at forstå for min viden. fik lavet disse 3 sider og er baseret på en access database

dette understøtter de ikke og derfor skal jeg bruge 3 nye sider som kan logge en bruger ind og logge ud og den tekst som skal stå på den password sikret side

alle som bruger siden bruger det samme adgang og password så databasen som jeg har har kun et reg..

mvh per
Avatar billede w13 Novice
20. september 2007 - 19:35 #8
Ah, så faktisk behøver man slet ikke bruge database?

Så bruger du bare:
---------------------------------
<%strBrugernavn="pære"
strPassword="æble"

If strBrugernavn<>Request.Form("brugernavn") Or strPassword<>Request.Form("password") Then
    Session("username")=""
    Response.Redirect "wronglogin.asp"
Else
    Session("username")=strBrugernavn
    Response.Redirect "oklogin.asp"
End If%>
---------------------------------
Så ændrer du bare strBrugernavn og strPassword øverst.
Avatar billede poppo Nybegynder
20. september 2007 - 19:44 #9
kan du lave de3 forskellige side til mig med hvad der skal stå på de sider

1/ login formular

2/ ok side(hvad skal der stå øverst så man ikke kan komme ind på siden uden at bruge login siden)

3/ logud siden øhvis man forlader siden

er noget ny i dette derfor dette???

mvh per
Avatar billede w13 Novice
20. september 2007 - 19:55 #10
login.asp:
------------------------------------------------
<%If Request.Querystring("mode")="submit" Then
    strBrugernavn="pære"
    strPassword="æble"

    If strBrugernavn<>Request.Form("brugernavn") Or strPassword<>Request.Form("password") Then
        Session("username")=""
        Response.Redirect "login.asp?error=wronglogin"
    Else
        Session("username")=strBrugernavn
        Response.Redirect "oklogin.asp"
    End If
End If%>

<form method="post" action="login.asp?mode=submit">
    <h2>Log ind</h2>
    <%If Request.Querystring("error")="wronglogin" Then
        Response.Write "<span class=""color:#800000"">Brugernavn og password var ikke korrekt!</span>"
    ElseIf Request.Querystring("error")="notloggedin" Then
        Response.Write "<span class=""color:#800000"">Du skal være logget ind for at se denne side!</span>"
    ElseIf Request.Querystring("mode")="loggedout" Then
        Response.Write "<span class=""color:#008000"">Du er nu logget ud!</span>"
    End If%>
    Brugernavn: <input type="text" name="username"><br>
    Password: <input type="text" name="password"><br>
    <input type="submit" value="Log ind">
</form>
-----------------------------------------------

oklogin.asp
-----------------------------------------------
<%If Session("username")="" Then Response.Redirect "login.asp?error=notloggedin"%>
<p>Du er nu logget ind<br>
<a title="Log ud" href="logout.asp">Log ud</a></p>
-----------------------------------------------

logout.asp
-----------------------------------------------
<%Session.Abandon
Response.Redirect "login.asp?mode=loggedout"%>
Avatar billede poppo Nybegynder
20. september 2007 - 20:22 #11
sider er lavet med de navn ok oploadet

den skriver Brugernavn og password var ikke korrekt! selvom jeg bruger disse pære og æble har jej lavet en fejl
Avatar billede poppo Nybegynder
20. september 2007 - 20:28 #12
jeg har kopieret teksten fra det du har lavet og lavet en side og gemt den under de navne som du har skrevet...

kan  ikke lige se hvad der skulle været gået galt.

mvh per
Avatar billede w13 Novice
20. september 2007 - 21:14 #13
Det er mig, der er dum. Form-felterne hedder jo username og password, og jeg tjekker på brugernavn og password. Så if-sætningen skal være:
    If strBrugernavn<>Request.Form("username") Or strPassword<>Request.Form("password") Then

og ikke:
    If strBrugernavn<>Request.Form("brugernavn") Or strPassword<>Request.Form("password") Then
i login.asp
Avatar billede poppo Nybegynder
21. september 2007 - 03:02 #14
virker helt ok nu da jeg fik ændret den sidste linje......    ok tak for hjælpen. hvon for du pointen? kigger på det
Avatar billede w13 Novice
21. september 2007 - 15:07 #15
Jeg opretter et svar, som du kan acceptere.
Avatar billede poppo Nybegynder
21. september 2007 - 15:57 #16
takker for hjælpen...
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

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