webForumDet fria alternativet

Vides paging..

ASP

10 svar · 185 visningar · startad av Hallgren

Medlem sedan dec. 19991 606 inlägg
Frågan#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

Medlem 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

Medlem 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

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

kanske?

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

Medlem sedan dec. 19991 606 inlägg
#5

Äsch, små saker! ;) :e

Tack!

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

Medlem 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

Medlem 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]

Medlem 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

Medlem sedan dec. 19998 577 inlägg
#9

if-sats?

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

Medlem 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

Medlem 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

260 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)