Avatar billede mskjoldp Novice
08. marts 2005 - 11:04 Der er 7 kommentarer og
1 løsning

lav en rs ud fra string

Hej E

IIS5.0/ASP/IE

Jeg tror dette er et simpelt spg, men jeg fejler på det, så lidt hjælp vi ljeg sætte pris på.

Hvordan laver jeg rs eller et Response.write udtræk ud fra denne SQL:
            Set rs = Conn.Execute("SELECT '" & Request.QueryString("id") & "' FROM bem WHERE Bstel='" & Request.QueryString("st") & "'")


Der er ingen problemer med R.Q("id") og R.Q("st"). De indeholder begge det rigtige og jeg finder det rigtige sted i db'en, men jeg mangler at kunne udskrive data.

/vh Skjold
Avatar billede fennec Nybegynder
08. marts 2005 - 11:14 #1
set rs = ....
do while not rs.eof
  response.write rs(Request.QueryString("id"))
  rs.MoveNExt
loop

eller
set rs = ...
do while not rs.eof
  response.write rs(0)
  rs.MoveNExt
loop
Avatar billede mskjoldp Novice
08. marts 2005 - 11:17 #2
prøver...
Avatar billede mskjoldp Novice
08. marts 2005 - 11:22 #3
den første kode fejler: Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal.

i denne linje: response.write rs(Request.QueryString("id"))

Den anden kode fejler IKKE, men udskriver desværre kun R.Q("id"), ikke det der er i db feltet.

Vi må prøve igen...
Avatar billede fennec Nybegynder
08. marts 2005 - 11:30 #4
Tror vi skal have tilrettet SQL'en for den giver vist ikke mening :o)

Hvilken værdi har R.Q("id") og R.Q("st")??
Og hvad er det du vil trække ud??
Avatar billede mskjoldp Novice
08. marts 2005 - 11:45 #5
Det er i forbindelse med en redigeringsside. Dvs at data ændre sig alt efter hvilken række der vælges at redigere i. Men i dette tilfælde kan vi benytte samme række til redigering.

Fra den side, der vælger hvilken række i db'en der skal redigeres, kommer R.Q("st") fra... i vores tilfælde er det via et klik på et billede hvor der på onclick er sat dette link ind:
default.asp?mode=kommentar&st=<%=st%>&id=<%=(Edit1(i))%>

var st indeholder texten: E-004

På vores redigeringsside kan jeg udskrive R.Q("st") og jeg får værdien E-004

E-004 udgør hvilken række i db'en der skal redigeres i.

Nu skal jeg så bare peje på kolonnen nu hvor jeg har rækken - hvilket vil give mig ét præsist felt i db'en som skal rettes. For at finde kolonnen i db'en bruger jeg R.Q("id") igen fra onclick:
default.asp?mode=kommentar&st=<%=st%>&id=<%=(Edit1(i))%>

var id indeholder texten: S_plan_dato

På vores redigeringsside kan jeg udskrive R.Q("id") og jeg får værdien S_plan_dato

Dvs- at jeg nu har både række og kolonne, for at finde det felt i db'en jeg vil redigere. Men jeg kan ikke fremvises hvad der er idet præsise felt.

Så hvordan sætter vi en SQL sammen der virker? Husk at det skal være dynamisk alt efter det onclick der sker.
Avatar billede mskjoldp Novice
08. marts 2005 - 11:54 #6
Kolonne feltet i db'en hedder B_S_plan_dato.. ikke S_plan_dato... Men det har ikke gjort den forskel jeg håbede på da jeg lige nu fandt kodefejlen. Jeg får stadigvæk
fejlen: Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal.

Jeg har lavet to fejl: i db'en hedder feltet B_plan_dato.. jeg har rettet R.Q.("st") til så den tager højde for B_

ny SQL:
Set rs = Conn.Execute("SELECT '" & "B_" & Request.QueryString("id") & "' FROM bem WHERE Bstel='" & Request.QueryString("st") & "'")

og rs:
do while not rs.eof
  response.write rs("B_" & Request.QueryString("id"))
  rs.MoveNExt
loop

men samme fejl: Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal

sry for den fejl jeg ikke havde set fre starten :/
Avatar billede mskjoldp Novice
08. marts 2005 - 11:59 #7
DOH ... sry fennec .. jeg har fundet fejlen.. det var B_

lig et svar og du får points for at tage dig tid til et fjols!
Avatar billede fennec Nybegynder
08. marts 2005 - 12:45 #8
.o) <-- One Eyed Jack
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