webForumDet fria alternativet

redirect

2 svar · 169 visningar · startad av satchmo

satchmoMedlem sedan nov. 200120 inlägg
#1

Goddag har ett litet problem.

Har en sida med paging när man väljer att den ska visa nästa 25 produkter så går det åt pipan. den skickar honom till main.

Om användern listar ett gruppnummrer som inte finnsa ska han skickas till main, annars ska den lista de 25 nästa produkterna.

Felmedelandet:
Körningsfel i Microsoft VBScript fel '800a000d'

Inkompatibla typer: '[string: ""]'

Koden:
Dim GruppNum, GruppNamn
GruppNum = Request.Form("varugrupp") & Request.Querystring("varugrupp")
If GruppNum = "" Then Response.Redirect("main.asp")

GruppNum = Int(GruppNum)

Hoppas nu guru's kan lösa detta.
Mvh Satchmo the man the myth the one who didnt solvew the problem.

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Vilken rad får du fel på? Du kan ju lägga till en kontroll på att värdet i GruppNum är numeriskt.

Dim GruppNum, GruppNamn
GruppNum = Request.Form("varugrupp") & Request.Querystring("varugrupp")
If GruppNum = "" Then Response.Redirect("main.asp")
if not isnumeric(Gruppnum) then Then Response.Redirect("main.asp")
GruppNum = Clng(GruppNum)

red: hur ser gruppnum ut? Borde du inte använda clng i stället?
------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 13 dec 2001]

satchmoMedlem sedan nov. 200120 inlägg
#3

Det slår fel på denna raden när jag ska bläddra till via pagingen och visa nästa 25 produkter. Den återgår nämligen till main sidan då.
http://localhost/list_varugrupp.asp?varugrupp=24 http://localhost/list_varugrupp.asp?varugrupp=25
osv.
om någor försöker ta sig till en tabell som inte finns ex http://localhost/list_varugrupp.asp?varugrupp=38
ska den återgå till mainsidan. För 38 är tom

Hela Koden:
<%
const adOpenForwardOnly = 0
const adOpenKeyset = 1
const adOpenDynamic = 2
const adOpenStatic = 3
const adLockReadOnly = 1
const adLockPessimistic = 2
const adLockOptimistic = 3
const adLockBatchOptimistic = 4
session.LCID=1053

Dim GruppNum, GruppNamn
GruppNum = Request.Form("varugrupp") & Request.Querystring("varugrupp")
'If GruppNum = "" Then Response.Redirect("main.asp")
'Om ovanstående är avmarkerad så slår det fel på raden under denna.
GruppNum = Int(GruppNum)

Set Connect=server.CreateObject("adodb.connection")
Set RS = Server.CreateObject("ADODB.Recordset")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("prodx5.mdb")
RS.open "SELECT Produkter.Varugrupp AS GruppNum, Produkter.Titel AS Titel, Produkter.Titel2 AS Titel2, Produkter.Pris AS Pris, Produkter.ID AS Prod_ID, Varugrupper.Namn AS GruppNamn FROM Produkter, Varugrupper WHERE Produkter.Varugrupp = Varugrupper.ID AND Produkter.Varugrupp = " & GruppNum & " ORDER BY Produkter.Titel", Connect, adopenkeyset, adlockoptimistic
%>
<html><head><style>
A:Link {color:000000;text-decoration:none;}
A:Visited {color:000000;text-decoration:none;}
A:Hover {color:#6666CC;text-decoration:underline;}
</style></head>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#000000" VLINK="#000000" ALINK="#F70404" background="gfx/bgty.jpg">
<br><center><font face="Verdana, Arial, Helvetica, sans-serif"><b><font size="-1">Produkter under: <%=RS("GruppNamn")%></font></b></font><br>
</div>
<CENTER><HR WIDTH="75%" size="1" COLOR="#000000">

<table cellpadding="4" cellspacing="2" border="0"><TR bgcolor="#6666CC">
<TD ><B><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><% = RS("GruppNamn")%></font></B></TD>
<TD><B><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Titel</font></B></TD>
<TD><B><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Pris</font></B></TD></TR>
<%
'******************************************************************
'Här ställer du in hur många varor du vill ha per sida

perpage = 25
For n = 1 to RS.recordcount step perpage
If n <> 1 then response.write " | "
if n <> cint (request("start")) then
response.write "<a href=""" & request ("script_name") & "?start=" & n & """>"
else
response.write "<font color=""red"">"
end if
response.write n & " till "
if n + perpage <= RS.recordcount then
response.write n + (perpage) - 1
else
response.write RS.recordcount
end if
if n <> cint (request("start")) then
response.write "</a>"
else
response.write "</font>"
end if

  next
  response.write "\<br\>\<br\>"

  if request("start") = "" then
     start = 1
  else
     start = cint (request("start"))
  end if
  RS.move start - 1
   response.write "\<H5\>Varunummer  mellan " & start & " och " & start + perpage -1 & "\</H5"

  for row = start to start + (perpage - 1)
     if RS.eof then exit for

Numcols = 40 '0=== Antal kolumner i din tabell ===0
With Response
'Do Until RS.EOF
.Write "<tr><td width='150'><font face='Verdana, Arial' size='-2'><a href='visa_produkt.asp?id=" & RS("Prod_ID") & "' target='main'>"
.Write RS("Titel")
.Write "<td width='170'><font face='Verdana, Arial' size='-2'><a href='visa_produkt.asp?id=" & RS("Prod_ID") & "' target='main'>"
.Write RS("Titel2")

	.Write "\</a\>\</font\>\</td\>\<td align='right' width='80'\>\<div align='right'\>\<font face='Verdana, Arial' size='-2'\>"
	.Write FormatCurrency(RS("Pris"))
	.Write "\</font\>\</div\>\</td\>\</tr\>"

	RS.MoveNext

End With
Next

RS.Close
Connect.Close
Set RS = Nothing
Set Connect = Nothing

%></table><center><HR WIDTH=75% size=1 COLOR="#000000"><font size="-2" face="Verdana, Arial, Helvetica, sans-serif">
<b>| <a href="varukorg_visa.asp">Varukorg</a> | <a href="kassan.asp">Till kassan</a> |</b></font></center></CENTER></body></html>

Mvh Satchmo the man the myth the man who needs a brainscan.

135 ms totalt · 3 externa anrop · v20260731065814-full.30151723
130 ms — hämta forumlista (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)