/ 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
Problem med at hente data fra en database.~
Fra : Martin Rasmussen


Dato : 15-01-03 16:24

Jeg har oprettet en accesdatabase og vil bruge dataerne i
databasen til at lave et login til en hjemmeside. Problemet er at
jeg ikke kan finde ud af at hente data som den skal sammenlignes
med det man skriver i tekstboksen på hjemmesiden.

Jeg er lige begyndt at kode asp og jeg har kigget på html.dk
asp-tutorial.

Problemet er bare at det ikke virker, men her er hvad jeg er
kommet frem til:

<html>
<title>tid og dato</title>
<head>
</head>
<body>
<%

' ADODB connection objektet
Set Conn = Server.CreateObject("ADODB.Connection")
' Husk at angive den rigtige sti til din database
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="
&("c:\Inetpub\wwwroot\database.mdb")
' Åben databaseforbindelsen
Conn.Open DSN

' SQL forespørgsel
strSQL = "Select * from Brugerid"
' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

strSQL = "If Brugerid (email, adgangskode) values('" &
Request.Form("email") & "', '" & Request.Form("adgangskode") &
"')" Then

' Hvis korrekt sættes session til JA
Session("login") = "JA"
Session.Timeout = 30
Response.Write "<h1>Du er nu logget korrekt ind</h1>"
Response.Write "<p><a href='Selvespillet.html'>Gå til
spørgeskemaer.</a></p>"

else

' Hvis forkert sættes ingen session til NEJ
Session("login") = "NEJ"
Session.Timeout = 30
Response.Write "<h1>Du er IKKE logget korrekt ind</h1>"
Response.Write "<p><a href='Login.html'>Tilbage for at prøve
igen.</a></p>"

End If

Conn.Close
Set Conn = Nothing
%>
</body>
</html>

Håber der er nogle der kan hjælpe mig.

På forhånd tak.

Hilsen Martin Rasmussen

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jens Gyldenkærne Cla~ (16-01-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 16-01-03 00:16

Martin Rasmussen skrev:

> Problemet er bare at det ikke virker,

"Ikke virker" kan være 2000 forskellige ting. Fortæl os venligst
*hvordan* det ikke virker.

Prøv at starte på FAQ-siden for denne gruppe: <www.asp-faq.dk>.
Specielt kan følgende artikler være relevante:
- <http://asp-faq.dk/article/?id=41>
- <http://asp-faq.dk/article/?id=45>

Se også tråden "kan ikke få database tutorial til at fungere på min
egen computer", hvor Jakob Andersen har givet et svar der også ser
ud til at passe på dit tilfælde.

> ' Husk at angive den rigtige sti til din database
> DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="
> &("c:\Inetpub\wwwroot\database.mdb")

Slet paranteserne omkring det sidste led.

> ' SQL forespørgsel
> strSQL = "Select * from Brugerid"

Her vælger du alle data fra brugerID. Normalt vil man kun vælge de
data man skal bruge - i dette tilfælde den række hvor email og
adgangskode matcher værdierne fra din form.
Du skal bruge "WHERE" i din sqlsætning (se guiden på html.dk)

> ' Udfør forespørgsel (rs indeholder nu resultatet)
> Set rs = Conn.Execute(strSQL)

Her kører du din sqlsætning - den del er sådan set rigtig nok.

> strSQL = "If Brugerid (email, adgangskode) values('" &
> Request.Form("email") & "', '" & Request.Form("adgangskode") &
> "')" Then

Men her går det galt på flere måder. For det første tildeler du en
værdi til strSQL - det skal du ikke. strSQL bruges til at opbygge
en sqlsætning. Når du har brugt strSQL (på linjen "Set rs = ...")
skal du ikke bruge den mere. strSQL har ingen forbindelse til
databasen, det har rs derimod.

Det er også galt når du skriver "If Brugerid (email, adgangskode)
values (..."
If er en kommando i asp, ikke i SQL (altså ikke en
databasekommando). VALUES er en sqlkommando der bruges ved INSERT-
sætninger - altså hvis du fx skal indsætte et nyt brugernavn i
databasen, hvad der jo ikke er tilfældet her.

Du skal lave din sqlsætning om så den kun matcher den post der
svarer til din bruger. Når du så har kørt forespørgslen og har et
postsæt i variablen rs kan du med metoden .EOF afgøre om der er et
gyldigt login eller ej.


> Håber der er nogle der kan hjælpe mig.

Den bedste hjælp du kan få vil nok være at læse lidt mere i asp-
tutorialen. Du sammenblander asp- og databasekode lige nu, prøv at
følge tutorialen nøje og se hvor langt du kan komme.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

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

Månedens bedste
Årets bedste
Sidste års bedste