Avatar billede pfp Nybegynder
03. december 2001 - 22:48 Der er 25 kommentarer og
1 løsning

Hvorfor får jeg kun en post udskrevet?

Jeg har følgende kode som gerne skulle udskrive nogle bestemte records fra min database.

<%
SQL = \"SELECT * FROM PRODUKTER where Kategori = \'\" & Request.Querystring(\"Kategori\") & \"\'\"
rs.Open SQL, DSN, 1

Do While Not rs.EOF
Response.Write rs(\"Produktnavn\")
rs.movenext
Loop
%>

Af en eller anden grund får jeg kun en post udskrevet, selvom min kategori indeholder flere produkter?

Er der nogen der kan se fejlen?

/pfp
Avatar billede nordclc Nybegynder
03. december 2001 - 23:39 #1
Du kan jo prøve at checke, at der er tale om flere records:

<%
SQL = \"SELECT count(*) as antal FROM PRODUKTER where Kategori = \'\" & Request.Querystring(\"Kategori\") & \"\'\"
rs.Open SQL, DSN, 1

Response.Write rs(\"antal\")

%>

Avatar billede pfp Nybegynder
04. december 2001 - 08:11 #2
Response.Write rs(\"antal\")

jeg har da ikke et felt der hedder antal, og jeg ved at jeg har flere forskellige poster i samme kategori.
Avatar billede nordclc Nybegynder
04. december 2001 - 08:29 #3
Antal får du fra den count jeg laver i select\'en:

select count(*) as antal....!!!
Avatar billede nordclc Nybegynder
04. december 2001 - 08:30 #4
\"count(*)\" tæller antal af records du får retur.
Avatar billede pfp Nybegynder
04. december 2001 - 09:10 #5
Nå ok. Jeg får kun 1 record retur. Men det forstår jeg ikke for i min database har jeg flere produkter fra samme kategori?
Avatar billede nordclc Nybegynder
04. december 2001 - 09:14 #6
Hust at der er forskel på store og små bogstaver i tekstfelter! Har du evt. skrevet med store og små bogstaver forskelligt på dine records i feltet kategori?

Lidt indviklet, men jeg håber du forstår ;o)

//Claus
Avatar billede pfp Nybegynder
04. december 2001 - 09:32 #7
Der er ikke forskel på store og små bogstaver, jeg fatter simpelthen ikke hvad der går galt?
Avatar billede nordclc Nybegynder
04. december 2001 - 09:36 #8
Prøv med, hvis du altså ikke har 1000 poster i tabellen:

<%
SQL = \"SELECT * FROM PRODUKTER \"
rs.Open SQL, DSN, 1

Do While Not rs.EOF
Response.Write rs(\"Produktnavn\") & \" \" & rs(\"Kategori\")
rs.movenext
Loop
%>
Avatar billede -mundi- Nybegynder
04. december 2001 - 09:38 #9
<%
SQL = \"SELECT * FROM PRODUKTER where Kategori = \'\" & Request.Querystring(\"Kategori\") & \"\'\"
response.write strSQL
%>

tag den udskrevne SQLstreng og post den i som en query i din db og se hvad der sker ...
Avatar billede pfp Nybegynder
04. december 2001 - 09:49 #10
-mundi- >> der sker ikke noget?

nordclc >> ja, jeg have oprindeligt også lavet det sådan, men jeg har desværre rigtig mange produkter.
Avatar billede -mundi- Nybegynder
04. december 2001 - 09:51 #11
response.write SQL


Avatar billede -mundi- Nybegynder
04. december 2001 - 09:51 #12
min fejl :-)
Avatar billede pfp Nybegynder
04. december 2001 - 09:57 #13
Så får jeg fejl her:

<%
Do While Not rs.EOF
Response.Write rs(\"Produktnavn\")
rs.movenext
Loop
%>

Operation is not allowed when the object is closed.

Avatar billede -mundi- Nybegynder
04. december 2001 - 10:01 #14
det skal remarkes ud bare som test

<%
SQL = \"SELECT * FROM PRODUKTER where Kategori = \'\" & Request.Querystring(\"Kategori\") & \"\'\"
response.write strSQL

\'Do While Not rs.EOF
\'Response.Write rs(\"Produktnavn\")
\'rs.movenext
\'Loop
%>
Avatar billede -mundi- Nybegynder
04. december 2001 - 10:01 #15
hmm er din katetegori en tekst streng ? eller et talfelt ?
Avatar billede pfp Nybegynder
04. december 2001 - 10:06 #16
Hvis jeg marker alt det ud så sker der ikke noget. Kategorifeltet er et tekstfelt.
Avatar billede -mundi- Nybegynder
04. december 2001 - 10:08 #17
suuk jeg er åbenbart ikke helt vågen endnu :-)

<%
SQL = \"SELECT * FROM PRODUKTER where Kategori = \'\" & Request.Querystring(\"Kategori\") & \"\'\"
response.write SQL

\'Do While Not rs.EOF
\'Response.Write rs(\"Produktnavn\")
\'rs.movenext
\'Loop
%>
Avatar billede pfp Nybegynder
04. december 2001 - 10:11 #18
Jeg havde taget højde for din lille skrivefejl, men det virker ikke alligevel.
Avatar billede pfp Nybegynder
04. december 2001 - 10:14 #19
Nej undskyld det er mig der ikke er vågen. Den udskriver:
SELECT * FROM PRODUKTER where Kategori = \'Rodfrugter\'

Og jeg en post ved navn Rodfrugter i feltet Kategori.
Avatar billede -mundi- Nybegynder
04. december 2001 - 10:18 #20
og hvor mange poster får du returneret hvis det er du kører den sql i databasen som en query ?

Umiddelbart kan jeg ikke se nogen fejl andet end at du måske kun har 1 post i den kategori i databasen... Har du prøvet med andre kategorier ?
Avatar billede pfp Nybegynder
04. december 2001 - 10:54 #21
Det er det samme for alle kategorier selvom jeg har en 6-7 produkter pr. kategori.

jeg forstår ikke hvad du mener med:
\"og hvor mange poster får du returneret hvis det er du kører den sql i databasen som en query ?\"
Avatar billede -mundi- Nybegynder
04. december 2001 - 10:56 #22
ok hvilken database bruger du ?
Avatar billede pfp Nybegynder
05. december 2001 - 18:01 #23
Jeg ved ikke om det er mig der er ved at blive skør eller der bare er noget helt galt med min IIS for nu virker det mystisk nok.

-mundi- >>

Hvis du lige laver et svar også så syntes jeg næsten, at dig og nordclc skal dele de få point...i kan jo ikke gøre for at min IIS tér sig mærkeligt :-)

/pfp
Avatar billede -mundi- Nybegynder
05. december 2001 - 18:40 #24
Hmm jeg synes ikke jeg skal have nogen points hvis du ikke har fået løst dit problem, og jeg kan ikke se hvorfor det skulle være din iis der laver problemer ?

Hvis du har lyst er du velkommen til at zippe hele molevitten og maile det til mig på mundi@x-treme.ws

så skal jeg nok kigge på det
Avatar billede pfp Nybegynder
06. december 2001 - 08:44 #25
-mundi- >> tak for tilbuddet. Men jeg har lagt det over på min bærbare som også kører med IIS og der er der overhovedet ingen problemer.

Men tak for jeres indlæg!

/pfp
Avatar billede -mundi- Nybegynder
06. december 2001 - 09:17 #26
ok
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