Avatar billede slapstick Nybegynder
06. september 2002 - 00:07 Der er 22 kommentarer og
1 løsning

viser ikke recordset

prøver lige med en mere relevant titel og så flere point !
har en side med produkter der henter dataen fra en base
alle produkterne ligger i samme tabel
kender forskel på dem via et felt der hedder type id
produkterne har id 1,2,3 osv osv
lige nu har jeg et produkt der har id 1 og et der har id 4
his jeg vil se produkter med id 1 så er der ik noget problem
men vil jeg se dem med id 4
så viser den ingenting selvom der er noget i tabellen
har set mig totalt blind på det for den siger ikke nogen fejl..
koden kommer her:

<%@ Language="VBSCRIPT" %>
<% Response.buffer = True %>
<!--#include file="include/dbconn.inc"-->
<%
sessid = Session.SessionID
typeting = Cint(request.querystring("type"))
typesql = "SELECT * FROM kategori WHERE typeid = " & typeting & ""
set rscrap = Conn.Execute(typesql)
prodtype = rscrap("type")
typeid = rscrap("typeid")
%>
<!--#include file="addkurv.asp"-->
<%
prodsql = "SELECT * FROM produkter WHERE typeid = '" & typeid & "'"
set rs2 = Conn.Execute(prodsql)
%>
<html>
<link href="include/shop.css" rel="stylesheet" type="text/css">

<head

</head>
<body marginheight="0" marginwidth="0">
<span class="text"><b><%=prodtype %> til salg:</b> </span><br><br>
<table cellpadding="0" border="0" cellspacing="0">
  <%
If rs2.EOF Then
%>
  <tr>
    <td class="text">Ingen produkter i denne kategori</td>
</tr>
<%
Else
set rsAntal = conn.execute("select count(*) from produkter where typeid = '" & typeid & "'")
iAntal = rsAntal(0)
if iAntal > 5 then
t=0
a=1
if not request.querystring = "" then
    offset = cint(request.querystring("offset"))
else
offset = 0
end if
%>
<tr>
<td>
<%
while t < iantal

if t = offset then
response.write("<font class='text'>side"&a&"&nbsp;&nbsp;</font>")
else
%>
<font class='text'><a href='produkter.asp?type=<%=typeid %>&offset=<%=t %>'>side<%=a %></a>&nbsp;&nbsp;</font>
<%
end if
a=a+1
t=t+5
wend
%>
</td>
</tr>
<%
t=0
a=0
if not offset = 0 then
for a=0 to offset-1
    rs2.movenext
    t=a   
next
end if
t=offset
While not rs2.EOF AND t < (offset+5) AND t >= offset
%>
<tr>
<form method="POST" action="produkter.asp?type=<%=typeid %>&offset=<%=offset %>">
      <td width="300" class="text" halign="left" valign="top">
<img src="produkter/<%=rs2("billede") %>" border="0" width="90" height="60">
<br>       
<%
vnavn = rs2("varenavn")
%>
        <input type="hidden" value="<%=rs2("varenr") %>" name="varenr">
<input type="hidden" value="<%=vnavn %>" name="varenavn">
<b><%=vnavn %></b>
<br>
<%=rs2("beskrivelse") %>
<br>
<input type="hidden" value="<%=rs2("varepris") %>" name="varepris">
<b><%=rs2("varepris") %> kr.</b>
<br>
<span class="text"><b>antal:</b></span>
<input name="vareantal" type="text" class="formsearchsmall" size="2" maxlength="2">
        &nbsp;&nbsp; 
<input name="kurv" type="submit" class="formbutton" value="kurv">
</td>
      <td class="text" valign="top">

       
</td>
</form>
</tr>
<%
t=t+1
rs2.movenext
wend
end if
end if
%>
</table>
<br><br>
<!--#include file="kurv.asp"-->
</body>
</html>
<!--#include file="include/dbconnclose.inc"-->

og hvis jeg fjerner posten fra basen så skriver den at der ingen varer er i den kategori præcis som den skal
Avatar billede microsoft Nybegynder
06. september 2002 - 00:50 #1
typeid = rscrap("typeid")

ÆNDRES TIL

typeid = rscrap("type")
Avatar billede slapstick Nybegynder
06. september 2002 - 00:54 #2
nej så viser den slet ingenting ligemeget hvilket produkt jeg vælger
Avatar billede microsoft Nybegynder
06. september 2002 - 01:01 #3
Du har en variabel for
typeid = rscrap("typeid"), hvor rscrap = Conn.Execute(typesql)

Den prøver du at sætte ind i følgende

<tr>
<form method="POST" action="produkter.asp?type=<%=typeid %>&offset=<%=offset %>">
      <td width="300" class="text" halign="left" valign="top">
<img src="produkter/<%=rs2("billede") %>" border="0" width="90" height="60">
<br>     

Det du'r vist ikke ikke.
Avatar billede microsoft Nybegynder
06. september 2002 - 01:04 #4
typeid = rscrap("typeid"), hvad bruger du lige den til?
Avatar billede slapstick Nybegynder
06. september 2002 - 01:06 #5
mjoh det virker fint
for hvis jeg vælger det ene produkt så viser den alt som den skal
http://super.skodliv.dk/shopp/produkter.asp?type=1
viser produktet sko og der er 10 entries i basen
http://super.skodliv.dk/shopp/produkter.asp?type=5
skulle vise produktet jakker hvor der er 2 entries i basen
men den viser ingenting og kan se at den ikke opfatter recordsettet som tomt
for hvis jeg sletter de 2 entries så skriver den ingen varer i den kategori blabla
Avatar billede slapstick Nybegynder
06. september 2002 - 01:08 #6
den er egentlig overflødig da jeg kunne bruge den her
typeting = Cint(request.querystring("type"))
har os prøvet begge dele og det giver samme resultat
Avatar billede microsoft Nybegynder
06. september 2002 - 01:19 #7
Hvis den er overflødig er det så ikke en ide at slette den.
Avatar billede slapstick Nybegynder
06. september 2002 - 01:21 #8
nu er den fjernet og jeg bruger variablen typeting istedet for
men den laver stadig det samme :/
Avatar billede microsoft Nybegynder
06. september 2002 - 01:25 #9
Ja,men du bruger stadig typeid inde i f.eks.:
prodsql = "SELECT * FROM produkter WHERE typeid = '" & typeid & "'"
- Hvor kommer din typeid fra du sætter ind i forespørgslen?
Avatar billede microsoft Nybegynder
06. september 2002 - 01:27 #10
Skal det ikke være sådan hér:
prodsql = "SELECT * FROM produkter WHERE typeid = '" & typeting & "'"
Avatar billede slapstick Nybegynder
06. september 2002 - 01:27 #11
nej nu ser forespørgslen sådan her ud
prodsql = "SELECT * FROM produkter WHERE typeid='"&typeting&"'"
set rs2 = Conn.Execute(prodsql)
og indholdet af typeting kommer fra querystring
Avatar billede microsoft Nybegynder
06. september 2002 - 01:28 #12
Netop
Avatar billede slapstick Nybegynder
06. september 2002 - 01:30 #13
men den gør jo stadig det samme
det underlige er at hvis man tager det ene produkt så virker det fint og tager an det andet så viser den intet
den får dataen samme sted fra :(
Avatar billede microsoft Nybegynder
06. september 2002 - 01:32 #14
Så var der lige denne hér eller hva':
form method="POST" action="produkter.asp?type=<%=rs("typeid")%>&offset=<%=offset %>">
Avatar billede microsoft Nybegynder
06. september 2002 - 01:33 #15
Jeg vrøvl, det skulle være sådan hér:
form method="POST" action="produkter.asp?type=<%=rs2("typeid")%>&offset=<%=offset %>">
Avatar billede slapstick Nybegynder
06. september 2002 - 01:36 #16
nu har jeg skiftet alle henvisninger til variablen typeid ud med typeting
med samme resultat
jeg har også prøver med rs2("typeid")
hjalp heller ikke
Avatar billede microsoft Nybegynder
06. september 2002 - 01:46 #17
KIan du vise koden, hvor den skriver der ingen varer er.
Avatar billede microsoft Nybegynder
06. september 2002 - 01:48 #18
Har fundet det.
Jeg må være blind.
Avatar billede microsoft Nybegynder
06. september 2002 - 02:30 #19
Du bruger denne hér:
if t = offset then
response.write("<font class='text'>side"&a&"&nbsp;&nbsp;</font>")
else

Og t er netop lig offset, når type=5
- Derfor vises ingenting.
Avatar billede slapstick Nybegynder
06. september 2002 - 10:16 #20
eh det den gør der er at hvis der ikke er flere poster end 5
så skal den feks skrive side1 og ingen side2 side3 osv osv
hvis offset ikke er lig 5 så går den igang med at skrive side2 side 3 osv til der ik er ´flere poster
Avatar billede slapstick Nybegynder
06. september 2002 - 10:24 #21
næ du havde sgu ret
så snart der var over 5 poster i basen så virkede det fint
hvordan kommer man uden om det? hehe
Avatar billede slapstick Nybegynder
08. september 2002 - 21:07 #22
nå jeg fandt selv ud af det heheh
tak for hjælpen ! :)
Avatar billede microsoft Nybegynder
10. september 2002 - 23:31 #23
Undskylder jeg ikke lige fulgte med de sidste dage.
- Jeg har haft lidt travlt

Takker for point. :)
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