/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
SIMPELT login script
Fra : Claus Skaarup \(Arbe~


Dato : 21-09-06 10:10

Hej i stuen

Jeg har en hjemmeside: www.vocalart.dk hvor der findes nogle menupunkter,
som du kan se. Lige nu er en af punkterne "sanger login", hvor man kan logge
ind og se private oplysninger. Loginsiden ligger på en helt anden adresse og
er slet ikke integreret i www.vocalart.dk. Det skal den selvfølgelig være
med tiden.

Det var forhistorien

Det jeg leder efter er en simpel loginfunktion, hvor siden kalder en
standardmenu (som den der er nu). Så skal der så være noget loginhalløj i
bunden af menuen, hvor siden kalder "menu2.asp", hvis man logger ind.
Der behøver kun at være ét brugernavn/login, så at lave en database til
formålet er nok lige rigeligt.

Er der én, der kan flikke sådan noget sammen til mig, så bliver jeg glad.
Jeg er nemlig ikke særlig velbevandret i asp - desværre.
--
Mvh Claus
www.vocalart.dk OPDATERET,
www.limfjordsteatret.dk
www.radiolimfjord.dk, www.skaarup.nl.



 
 
spintail (21-09-2006)
Kommentar
Fra : spintail


Dato : 21-09-06 15:53


Claus Skaarup (Arbejde) skrev:

> Er der én, der kan flikke sådan noget sammen til mig, så bliver jeg glad.
> Jeg er nemlig ikke særlig velbevandret i asp - desværre.

Hej Claus
Du må meget gerne få mit du kan DL det her som en rar fil.
Det består af 2 filer har du flere spørsmål så bare spørg.

http://spintail.dk/login.rar

Kik evt også her

http://validator.w3.org/check?uri=http%3A%2F%2Fwww.vocalart.dk%2F&charset=%28detect+automatically%29&doctype=Inline&verbose=1


MvH
Allan


Jørn Andersen (22-09-2006)
Kommentar
Fra : Jørn Andersen


Dato : 22-09-06 05:27

On 21 Sep 2006 07:52:40 -0700, "spintail" <Spintail@pockets.dk> wrote:

>
>Claus Skaarup (Arbejde) skrev:
>
>> Er der én, der kan flikke sådan noget sammen til mig, så bliver jeg glad.
>> Jeg er nemlig ikke særlig velbevandret i asp - desværre.
>
>Hej Claus
>Du må meget gerne få mit du kan DL det her som en rar fil.
>Det består af 2 filer har du flere spørsmål så bare spørg.
>
>http://spintail.dk/login.rar

Det skal så lige tilføjes, at man på alle de sider, der skal være
beskyttede, skal checke med:

If Session("Login") = 1 Then
' OK
Else
Response.Redirect("login.asp")
End If

Dette placeres i toppen af siden (og kan evt. laves som en
include-fil).

NB: I din login2.asp åbner du en database-forbindelse, men du bruger
den ikke til noget, så den bør fjernes (og i øvrigt bliver den ikke
lukket på siden).

På login.asp bliver hverken forbindelsen eller recordsettet lukket.
Luk dem med:
Login.Close
Set Login = Nothing
rs.Close
Set rs = Nothing
- når du er færdig med at bruge dem og inden Redirect.

I øvrigt er det lidt forvirrende, at du kalder dit Connection object
for "rs" og dit Recordset object for "Login" ...
Selv om det ikke har nogen funktionsmæssig betydning - der er frit
navnevalg - så kan det forvirre i en fejlretningssituation.
Et forslag kunne være "objConn" og "objRsLogin".


Mvh. Jørn

--
Jørn Andersen,
Brønshøj

Leif Neland (24-09-2006)
Kommentar
Fra : Leif Neland


Dato : 24-09-06 22:25

Jørn Andersen wrote:
>
> NB: I din login2.asp åbner du en database-forbindelse, men du bruger
> den ikke til noget, så den bør fjernes (og i øvrigt bliver den ikke
> lukket på siden).
>
> På login.asp bliver hverken forbindelsen eller recordsettet lukket.
> Luk dem med:
> Login.Close
> Set Login = Nothing
> rs.Close
> Set rs = Nothing
> - når du er færdig med at bruge dem og inden Redirect.

> Mvh. Jørn

Skal alt lukkes i ASP?

Kan manglen på lukning være årsag til en applikation, jeg har overtaget,
efter et stykke tid opfører sig underligt (Jmail sender tomme mails, andre
gange "Not enough memory to complete operation")

Når IIS genstartes, fungerer det igen.

Jeg er vant til i php, at alting lukkes, når siden er færdigeksekveret, og
man da godt kan lukke ting, hvis man har lyst, og hvis det f.ex. er et stort
objekt, og siden kører i lang tid, men det er ikke strengt nødvendigt.

Kan man via asp se, hvor meget ledigt "memory" (som der nogen gange ikke er
"enough" af) der er tilgængelig for asp?

Leif




Jørn Andersen (24-09-2006)
Kommentar
Fra : Jørn Andersen


Dato : 24-09-06 23:02

On Sun, 24 Sep 2006 23:24:39 +0200, "Leif Neland" <leif@neland.dk>
wrote:

>> Luk dem med:
>> Login.Close
>> Set Login = Nothing


>Skal alt lukkes i ASP?

Det er i hvert fald hvad jeg har lært.

Hvis det er sider med mere nogle få samtidige besøgende, er det
desuden en god idé at vente med at definere/åbne database-forbindelser
og recordsets til de skal bruges og lukke, så snart de ikke skal
bruges længere.

>Kan manglen på lukning være årsag til en applikation, jeg har overtaget,
>efter et stykke tid opfører sig underligt (Jmail sender tomme mails, andre
>gange "Not enough memory to complete operation")
>
>Når IIS genstartes, fungerer det igen.

Det er i hvert et godt nud, der er værd at afprøve.

>Jeg er vant til i php, at alting lukkes, når siden er færdigeksekveret, og
>man da godt kan lukke ting, hvis man har lyst, og hvis det f.ex. er et stort
>objekt, og siden kører i lang tid, men det er ikke strengt nødvendigt.

Det må vi vist have en af programmørerne til at svare på - jeg er kun
en glad amatør

>Kan man via asp se, hvor meget ledigt "memory" (som der nogen gange ikke er
>"enough" af) der er tilgængelig for asp?

Det ved jeg heller ikke :(


Mvh. Jørn

--
Jørn Andersen,
Brønshøj

Jørn Andersen (24-09-2006)
Kommentar
Fra : Jørn Andersen


Dato : 24-09-06 23:37

On Mon, 25 Sep 2006 00:02:02 +0200, Jørn Andersen <jorn@jorna.dk>
wrote:

>>Kan manglen på lukning være årsag til en applikation, jeg har overtaget,
>>efter et stykke tid opfører sig underligt (Jmail sender tomme mails, andre
>>gange "Not enough memory to complete operation")
>>
>>Når IIS genstartes, fungerer det igen.
>
>Det er i hvert et godt nud, der er værd at afprøve.

Der skulle stå "et godt bud" - sorry!


Mvh. Jørn

--
Jørn Andersen,
Brønshøj

spintail (22-09-2006)
Kommentar
Fra : spintail


Dato : 22-09-06 23:51


Jørn Andersen skrev:

> On 21 Sep 2006 07:52:40 -0700, "spintail" <Spintail@pockets.dk> wrote:
>
> >
> >Claus Skaarup (Arbejde) skrev:
> >
> >> Er der én, der kan flikke sådan noget sammen til mig, så bliver jeg glad.
> >> Jeg er nemlig ikke særlig velbevandret i asp - desværre.
> >
> >Hej Claus
> >Du må meget gerne få mit du kan DL det her som en rar fil.
> >Det består af 2 filer har du flere spørsmål så bare spørg.
> >
> >http://spintail.dk/login.rar
>
> Det skal så lige tilføjes, at man på alle de sider, der skal være
> beskyttede, skal checke med:
>
> If Session("Login") = 1 Then
> ' OK
> Else
> Response.Redirect("login.asp")
> End If
>
> Dette placeres i toppen af siden (og kan evt. laves som en
> include-fil).
>
> NB: I din login2.asp åbner du en database-forbindelse, men du bruger
> den ikke til noget, så den bør fjernes (og i øvrigt bliver den ikke
> lukket på siden).

Ok viste jeg ikke takker Jørgen

> På login.asp bliver hverken forbindelsen eller recordsettet lukket.
> Luk dem med:
> Login.Close
> Set Login = Nothing
> rs.Close
> Set rs = Nothing
> - når du er færdig med at bruge dem og inden Redirect.
> I øvrigt er det lidt forvirrende, at du kalder dit Connection object
> for "rs" og dit Recordset object for "Login" ...
> Selv om det ikke har nogen funktionsmæssig betydning - der er frit
> navnevalg - så kan det forvirre i en fejlretningssituation.
> Et forslag kunne være "objConn" og "objRsLogin".

Jeg må lige have kikket lidt nærmere på det, kan godt se hvad du
mener, da jeg selv lige er begyndt med SSI var det fin info at man kan
bruge include-fil til at chekke

Tak igen og mere arbejde til mig

MvH
Allan


Jørn Andersen (23-09-2006)
Kommentar
Fra : Jørn Andersen


Dato : 23-09-06 00:31

On 22 Sep 2006 15:51:23 -0700, "spintail" <Spintail@pockets.dk> wrote:

>Tak igen

Velbekomme

>og mere arbejde til mig

Ja, sådan er det jo - man bliver aldrig udlært.
Det værste er så, når man kommer til at kigge på noget kode, man
lavede for et halvt år siden. Så tager man sig til hovedet og tænker,
at det må straks laves om - lige indtil man siger til sig selv, at der
må være bedre ting at bruge tiden på :)


Mvh. Jørn

--
Jørn Andersen,
Brønshøj

spintail (08-10-2006)
Kommentar
Fra : spintail


Dato : 08-10-06 05:42


Jørn Andersen skrev:

> På login.asp bliver hverken forbindelsen eller recordsettet lukket.
> Luk dem med:
> Login.Close
> Set Login = Nothing
> rs.Close
> Set rs = Nothing
> - når du er færdig med at bruge dem og inden Redirect.


Hmm ved ikke rigtigt hvor det skal sættes har prøvet noget
forskelligt men det virker ikke lige efter hensigten...

Jeg får denne fejl:

Microsoft VBScript runtime error '800a01a8'

Object required: ''

/admin/temp.asp, line 97


Måske du har en ide om hvor der skal lukkes?


<%
SET rs = Server.CreateObject("ADODB.Connection")
rs.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("DB.mdb")


If Request("mode") = "Check" then

bnavn = Trim(Replace(Request.Form("username"),"'",""))
pword = Trim(Replace(Request.Form("password"),"'",""))

Sql = "Select Count(*) as Found from table where (u = '" & bnavn & "')
and (p ='" & pword & "')"
Set Login = Rs.Execute(Sql)
if Login("Found") = 0 then
Session("login") = 0
error = "Forkert Brugernavn eller Password."
else
Session("Login") = 1
Session("password-session") = Request("username")
Response.Redirect "SIte.asp"
end if
else
end if
%>

MvH
Allan


Jørn Andersen (08-10-2006)
Kommentar
Fra : Jørn Andersen


Dato : 08-10-06 16:36

On 7 Oct 2006 21:41:55 -0700, "spintail" <mastiff@mail.dk> wrote:

>Jørn Andersen skrev:
>
>> På login.asp bliver hverken forbindelsen eller recordsettet lukket.
>> Luk dem med:
>> Login.Close
>> Set Login = Nothing
>> rs.Close
>> Set rs = Nothing
>> - når du er færdig med at bruge dem og inden Redirect.
>
>
>Hmm ved ikke rigtigt hvor det skal sættes har prøvet noget
>forskelligt men det virker ikke lige efter hensigten...
>
>Jeg får denne fejl:
>
>Microsoft VBScript runtime error '800a01a8'
>
>Object required: ''
>
>/admin/temp.asp, line 97

Hvilken en er linie 97?

>Måske du har en ide om hvor der skal lukkes?

Objekterne skal lukkes og slukkes, når du er færdig med at bruge dem.
Du "danner" objekterne med
Set <objekt-navn> = osv.
og åbner med:
<objektnavn>.Open

Herefter bruger du objektet til et eller andet.

De skal så lukkes med:
<objektnavn>.Close
- og slukkes med:
Set <objekt-navn> = Nothing

Så er det bare at løbe igennem scriptet:

Her danner og åbner du objektet rs:
>SET rs = Server.CreateObject("ADODB.Connection")
>rs.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" &
>Server.MapPath("DB.mdb")
>
>If Request("mode") = "Check" then
- Husk lige til senere, at vi er inde i en If-struktur!
<snip>

Her bruger du rs-objektet - og danner og åbner objektet Login:
>Set Login = Rs.Execute(Sql)
I dette tilfælde er der ikke noget .Open - den er implicit.

Her bruger du Login-objektet:
>if Login("Found") = 0 then
Endnu en If!

>else
>Session("Login") = 1

>Session("password-session") = Request("username")
>Response.Redirect "SIte.asp"

>end if

Her er vi så på vej ud af "True-grenen" af den første If - hvor vi jo
dannede Login-objektet - så den er vi færdig med at bruge. Den skal så
lukkes og slukkes, inden vi går ud:
Login.Close
Set Login = Nothing

Hvis vi ikke lukkede her, så ville vi få den fejl, du beskriver, hvis
Request("mode") *ikke* var "Check".
>else

>end if
Og her kom vi ud af den første If

Her er du så også færdig med at bruge rs-objektet, så den skal lukkes
og slukkes her:
rs.Close
Set rs = Nothing


Men, men, men: Undervejs har du en Response.Redirect. Det vil jo sige,
at du ikke får lukket og slukket, hvis den bliver aktiveret.
Så inde i den samme If, hvor du har Response.Redirect, bør du lukke og
slukke (begge objekter), dvs. lige inden linien med Response.Redirect.

Så skulle du være garderet.

Som nævnt er det lidt forvirrende, at du kalder Connection-objektet
for rs og RecordSet-objektet for Login - men det er op til dig.

Noget andet er, at der (hvis ikke det bruges senere i scriptet) ikke
er nogen grund til at åbne Connection-objektet, hvis mode ikke er
"Check". Så du vil gøre det lidt mindre forvirende (og bruge færre
server-ressourcer), hvis du kun åbnede det, når mode er "Check".

If'er er nogle dejlige ting - men man skal lige huske, om man er inde
i dem eller uden for


Et link til fejlkoden:
<url:
http://classicasp.aspfaq.com/general/why-do-i-get-the-error-object-required.html>

aspfaq.com er uundværlig, hvis man skal have hjælp til ASP-fejlkode.
Bare åbn aspfaq.com og copy-paste fejlnummeret (800a01a8) ind i
søgefeltet på fosiden, så er du som regel godt på vej.

Good luck!

--
Jørn Andersen,
Brønshøj

Søg
Reklame
Statistik
Spørgsmål : 177547
Tips : 31968
Nyheder : 719565
Indlæg : 6408797
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste