webForumDet fria alternativet

Vides paging..

10 svar · 185 visningar · startad av Hallgren

HallgrenMedlem sedan dec. 19991 606 inlägg
#1

Yo!

Sitter och med en kopp kaffe och ett Vides paging skript som förmodligen funkade innan jag fick tag på det. :l

Efter ha pillat så ser det ut så här.

strSQL = "SELECT * FROM varor WHERE vara LIKE '%" & Request.form("sokord") & "%'"

Set objRs = Server.Createobject("Adodb.Recordset")

intPageId = request.querystring( "pageid" )
if intPageId = "" then intPageId = 1

with objRs
  .cursorlocation = 3 
  .open strSQL
  .pagesize = 10 
  .absolutepage = intPageId 
end with

intPages = cint( objRs.pagecount )
intCurrentPost = 0

do while not objRs.eof and intCurrentPost < objRs.pagesize
  strContents = strContents & objRs(vara)
  intCurrentPost = intCurrentPost + 1
  objRs.movenext
loop

for i = 1 to objRs.pagecount
  strNavigation = strNavigation & " <a href='?pageid=" & i & "'>" & i & "</a>"
next

response.write  strContents 
response.write strNavigation

Felmedelandet lyder:
Operation is not allowed on an object referencing a closed or invalid connection.
/webshop/search/sokexe.asp, line 23

Rad 23 är..

.open strSQL

------------------
Forumledare, webForum

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Det saknas ett connectionobjekt i din open

set connect = server.createobject("adodb.connection")
connect.open "dsn"
with objRs
.cursorlocation = 3 
.open strSQL,connect
.pagesize = 10 
.absolutepage = intPageId 
end with

t.ex.

------------------
essentitia preter non sans multiplicandum

HallgrenMedlem sedan dec. 19991 606 inlägg
#3

Vill fortfarande inte riktigt funka.

Item cannot be found in the collection corresponding to the requested name or ordinal.
/webshop/search/sokexe.asp, line 32

strContents = strContents & objRs(vara)

------------------
Forumledare, webForum

LarsGMedlem sedan dec. 200012 464 inlägg
#4
strContents = strContents & objRs("vara")

kanske?

------------------
essentitia preter non sans multiplicandum

HallgrenMedlem sedan dec. 19991 606 inlägg
#5

Äsch, små saker! ;) :e

Tack!

------------------
Forumledare, webForum

HallgrenMedlem sedan dec. 19991 606 inlägg
#6

Mmmm, nu är det allt en liten bugg som jäklas med mig.

Jag söker på något och så får jag ett resultat, precis som det skall vara men klickar jag sedan på länken som finns där som indikerar att det bara är en sida så visar sig alla sidor och det är plötsligt 8 träffar. :l

Och så en liten fråga till. Resultaten lagras ju i strContents men om man inte vill ha dem på rad hur gör man då för att loopa det med en <br>?

------------------
Forumledare, webForum

LarsGMedlem sedan dec. 200012 464 inlägg
#7

Jo

När du klickar på länken så kör du följande fråga

strSQL = "SELECT * FROM varor WHERE vara LIKE '%" & Request.form("sokord") & "%'"

i det läget så är Request.form("sokord") odefinierat så din fråga blir då

SELECT * FROM varor WHERE vara LIKE '%%'

dvs, du kommer att hitta alla poster.

På något sätt måste du alltså komma ihåg sökordet.

Fråga 2

if intCurrentPost > 0 then
   strContents = strContents & "<br>" 
end if
strContents = strContents & objRs("vara")

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 14 nov 2001]

HallgrenMedlem sedan dec. 19991 606 inlägg
#8

Mmm, kan inte riktigt se hur man ska kunna lagra sökordet och sen göra så att skriptet ignorerar dåvarande SQL sattsen. :l

Vad säga om att lagra ordet i en session och anropa den om request.form är tom eller bara använda session?

------------------
Forumledare, webForum

VideMedlem sedan dec. 19998 577 inlägg
#9

if-sats?

------------------
Doesn't 'expecting the unexpected' make the unexpected expected?
webeye.nu

HallgrenMedlem sedan dec. 19991 606 inlägg
#10

Jo, det är sant men då är frågan hurska bygga upp den. Ska man byta ut hela sql sattsen eller ska man bara ge request.form("sokord") ett värde om det är tomt?

------------------
Forumledare, webForum

LarsGMedlem sedan dec. 200012 464 inlägg
#11
if request.form("sokord") = "" then
 word = session("sokord")
else
 word = request.form("sokord")
 session("sokord") = word
end if

Du kan inte sätta ett värde i requestobjeketet i en asp-sida.

------------------
essentitia preter non sans multiplicandum

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