Avatar billede riishoj Nybegynder
18. oktober 2006 - 19:39 Der er 6 kommentarer og
1 løsning

Få udskrevet alle oplysninger i tabellen

Jeg har en tabel med følgende kolonner:

BrugerID  SkoleKom-navn  Brugertype  Klasse

Brugeren logger sig ind via en form og login.asp, som ser sådan ud

<%
'asp herfra------------------------

  ' bruges til at tjekke om brugeren finde i db ved login
' Sender resultaterne fra tilføj links til databasen

strBrugerID = Trim(Replace(Request.Form("BrugerID"),"'",""))
strSQL ="SELECT * FROM bhklasse WHERE UCase(BrugerID) = '" & UCase(strBrugerID) & "'"
set rs = Conn.execute(strSQL)
if not rs.EOF then
response.write rs("BrugerID")

end if
'først tjekke om brugeren findes ved at tjekke om recordsetet er tomt.
if not rs.EOF then
  if LCase(rs("BrugerID")) = LCase(strBrugerID) then
    'LOGIN OK
    session("BrugerID") = rs("BrugerID")
   

  Response.Redirect("elevside.asp")
  else
    'INGEN BRUGER FUNDET
    'Eller en blev fundet men databasen bruger navn passer ikke med det
    'indtastede brugernavn
  end if
else
'brugeren ikke fundet lave det som skal ske hvis brugeren ikke er fundet her
response.write "<p align=center><font color=black  face=verdana size=3><b>Forkert brugernavn eller password.<br> Prøv igen.</b></p><br>"
end if
Conn.Close
Set Conn = Nothing
%>

Hvis brugeren godkendes, bliver han altså dirigeret til elevside.asp. Her vil jeg gerne have udskrevet alle de oplysninger om brugeren, som står i tabellen. Jeg kan godt få udskrevet BrugerID ved hjælp af Session("BrugerID"), men hvordan får jeg udskrevet SkoleKom-navn, Brugertype og Klasse?
Avatar billede langthjem Nybegynder
18. oktober 2006 - 19:53 #1
Nu har du jo gjort noget fyfy ved at bruge en "SELECT *". Men da du nu har gjort det sådan, så kan du bare ændre til:
#CODE#
'LOGIN OK
session("BrugerID") = rs("BrugerID")
session("SkoleKom-navn") = rs("SkoleKom-navn")
session("Brugertype") = rs("Brugertype")
session("Klasse") = rs("Klasse")

Response.Redirect("elevside.asp")
#CODE#

Hvis du vil rette din SELECT til skal den se sådan ud:
#CODE#
strSQL ="SELECT BrugerID,SkoleKom-navn,Brugertype,Klasse FROM bhklasse WHERE UCase(BrugerID) = '" & UCase(strBrugerID) & "'"
#CODE#
Avatar billede langthjem Nybegynder
18. oktober 2006 - 19:53 #2
Det var ment som et svar ;-)
Avatar billede riishoj Nybegynder
18. oktober 2006 - 20:32 #3
Hvorfor er det bedre at bruge strSQL ="SELECT BrugerID,SkoleKom-navn,Brugertype,Klasse FROM bhklasse fremfor strSQL ="SELECT * FROM bhklasse?
Avatar billede ffsoft Praktikant
18. oktober 2006 - 21:28 #4
Fordi det er mere økonomisk kun at trække de felter der er
brug for, frem for alle.
Avatar billede riishoj Nybegynder
18. oktober 2006 - 22:44 #5
OK, men i mit tilfælde havde jeg jo netop brug for alle 4 oplysninger og så er det vel nemmest at skrive strSQL ="SELECT *
Tak til langthjem for et brugbart svar.
Avatar billede ffsoft Praktikant
19. oktober 2006 - 09:53 #6
Det er nemmere at skrive Select * From .... frem for Select BrugerID,  SkoleKom-navn,  Brugertype,  Klasse From ....
Hvis din tabel kun indeholder disse 4 felter er det selvfølgelig lige meget,
men hvis du har 20 felter i tabellen og kun skal bruge 4, er det overkill
at vælge alle.
Avatar billede langthjem Nybegynder
21. oktober 2006 - 15:53 #7
Det er ganske enkelt god skik og brug kun at vælge de felter du skal bruge. En anden ting er at hvis du på et tidspunkt vælger at lave dit rs om til et array med alle felter, og derefter tilføjer et felt til tabellen, så vil indexet for de forskellige felter ændre sig, og så virker array'et ikke.
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