webForumDet fria alternativet

Hjälp med paging. Det funkar inte riktigt

ASP

7 svar · 466 visningar · startad av Megaman

Medlem sedan jan. 2004118 inlägg
Frågan#1
Medlem sedan juni 200032 967 inlägg
#2

Det jag kan se direkt är att du glömt ett = / response.write när du skriver ut sökordet till querystringen i länkarna.

<%=Request.QueryString("sok")%>

Varför har du dubbla procenttecken runt sökordet i SQL-frågan?

I övrigt skulle det vara bra om du använde [kod]-taggarna så är det lättare att läsa din kod.

Mvh

Medlem sedan jan. 2004118 inlägg
#3

Tack för ditt svar @anders...

Ursäkta att jag verkar nollad men vart exakt skall response.write vara i länken

som ni förstår så är jag inte alls bra på asp bara nybörjare som försöker att lära sig...

Medlem sedan juni 200032 967 inlägg
#4

Se kodexemplet i mitt inlägg, där jag lagt in = (som ju betyder response.write). Det använder du alltså för att skriva ut saker till webbläsaren.

Medlem sedan jan. 2004118 inlägg
#5

Okej sorry var för snabb med att fråga istället för att kolla...

Jag gjorde som du sa fast resultatet blev det samma den visar alla första 15 sökorden men när man trycker för att komma på sida 2 så kommer den upp fast den är tom precis som om han har tappat sökordet om man specifierar ordet alltså lägger till det i söksträngen så kommer sida 2 upp som den skall.

Alltså ordet man söker efter...

Jag fattar inte alls vad jag skall göra för att fixa det...

Jag kan ju posta sidans kod här men då är det alltid någon som klagar på det...

kanske kan jag skicka scriptet till dig på din e-post och så kan du kolla på det hemma @nders

MVH Megaman

Medlem sedan jan. 2004118 inlägg
#6

Försöker igen med att skicka iväg detta för att se om det är någon som kan se felet jag har försökt att pilla fram och tillbaka utan resultat.

Denna gången skall jag göra det ordentligt om det är någon som vill hela scriptet för att testa messa mig bara så skickar jag E-Post med scriptet i

<!-- #include file="adovbs.inc" -->

<html>
<head>
<title>Jattestenens Searchengine</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<%
AntalPS1 = 15  ' Antal träffar per sida

If Request.QueryString("sok") = "" Then
  sok = Request.Form("sokord")
Else
  sok = Request.QueryString("sok")
End If

IF sok = "" then
  sokord = "N/A"
ELSE
  sokord = sok
END IF

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("sok.mdb")

SQL2 = "SELECT COUNT(*) From sokmotor Where sokord Like '%" & sokord & "%'"
Set RecSet2 = Connect.Execute(SQL2)

traffar =RecSet2.Fields(0)

RecSet2.Close
Set RecSet2 = nothing

Set RecSet = Server.CreateObject("ADODB.Recordset")

Sidan = Request.QueryString("sida")
If Sidan = "" then 
  sida = 1 
Else 
  sida = Sidan 
End If 

RecSet.CursorLocation = 3
RecSet.CacheSize = AntalPS1

SQL = "Select * From sokmotor Where sokord Like '%" & sokord & "%'"
SQL = SQL & " Order By namn DESC"

RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic
%>
<link href="style.css" rel="stylesheet" type="text/css">
</head>

<body bgcolor="#FFFFFF" text="#000000" leftmargin="2">
<div align="center">
<p><font face="Verdana" size="6">Welcome To Jattestenens Searchengine<br>
<font size="2">here can you find what you are looking for... And best of all
it's that you can put in your own <br>
homepage now on this searchengine it's simpel and I will continue to make this
search Engine simpel</font></font></p>
<table width="580" border="0" style="border-collapse: collapse" bordercolor="#330099" cellpadding="0" cellspacing="0">
<tr>
<td style="border-left-style: solid; border-left-width: 1; border-right-style: solid; border-right-width: 1; border-top-style: solid; border-top-width: 1" width="578">
<div align="center"><font face="Verdana" size="2">Your search on:<b>
<%=sokord%> </b>gives fallow results:<b> <%=traffar%> </b><%
IF traffar = "1" then
Response.Write "Match"
ELSE
Response.Write "Matches"
END IF
%></font></div>
</td>
</tr>
<tr>
<td style="border-left-style: solid; border-left-width: 1; border-right-style: solid; border-right-width: 1" width="578">
<hr size="1" color="330099" noshade>
</td>
</tr>
<% IF RecSet.EOF then %>
<tr>
<td style="border-left-style: solid; border-left-width: 1; border-right-style: solid; border-right-width: 1" width="580">
<div align="center"><font face="Verdana" size="1">  I am sorry but i
couldn't find any word that match your search:...</font></div>
</td>
</tr>
<%
ELSE
 
RecSet.PageSize = AntalPS1
RecSet.AbsolutePage = sida

Sidor =  RecSet.PageCount
Y = 0 
Do While Not RecSet.EOF And Y < RecSet.PageSize
%>
<tr>
<td style="border-left-style: solid; border-left-width: 1; border-right-style: solid; border-right-width: 1" width="578"><a href="<%=RecSet("adress")%>" target="_blank"><b><font face="Verdana" size="1">&nbsp;<%=RecSet("namn")%>
</font></b></a><br>
<font size="1" face="Verdana"><p><%=RecSet("beskrivning")%></p></font></td>
</tr>
<%
Y = Y + 1
Recset.MoveNext
Loop
Recset.Close
Connect.Close

Set Recset = Nothing
Set Connect = Nothing
END IF
%>
<tr>
<td style="border-left-style: solid; border-left-width: 1; border-right-style: solid; border-right-width: 1" width="578">
<hr size="1" color="330099" noshade>
</td>
</tr>
<tr>
<td style="border-left-style: solid; border-left-width: 1; border-right-style: solid; border-right-width: 1; border-bottom-style: solid; border-bottom-width: 1" align="left" width="578">
<div align="center"><font face="Verdana" size="1"><b>

<%If Sidor > 1 Then

If Request.QueryString("sok") = "" Then
  sok = Request.Form("sokord")
Else
  sok = Request.QueryString("sok")

  If (Int(sida)) <> 1 Then%>
    <a href="sokresultat.asp?sok=<%=Request.QueryString("sok")%>&sida=<%=(Int(sida)-1)%>"><< Bakåt</a>
  <%Else%>
    &nbsp;
  <%End If
  End If
  For Sid = 1 To Sidor
    If (Int(Sid)) = (Int(sida)) Then%><%=Sid%><%Else%> <a href="sokresultat.asp?sok=<%=Request.QueryString("sok")%>&sida=<%=Sid%>"><%=Sid%></a> <%End If
  Next
  If (Int(sida)) <> (Int(Sidor)) Then%>
    <a href="sokresultat.asp?sok=<%=Request.QueryString("sok")%>&sida=<%=(Int(sida)+1)%>">Framåt >></a>
  <%Else%>
   <%End If
End If%>
  <br>
  </font>
</b>
<br>
<font face="Verdana" size="1"><b>
<a href="sokadd.asp">INSET YOUR HOMEPAGE HERE</a> | <a href="admin.asp">ADMINISTRATION</a> |
<a href="soksida.asp">NEW SEARCH</a></b></font>
</div>
</td>
</tr>
</table>
<center></div>
</body>
</html>

som sagt resultatet funkar på första sidan men när man trycker till sida 2 visas inget alls

MVH MegaMan

Medlem sedan sep. 20026 425 inlägg
#7

Megaman skrev:

som ni förstår så är jag inte alls bra på asp bara nybörjare som försöker att lära sig...

Lite orelaterat till ditt problem:

Om du är nybörjare borde du nog inte satsa på ASP, utan satsa på ASP.NET i stället. ASP.NET är nuet och framtiden. Ta dig en titt på exempelvis Vides sajt webeye.nu. Börja med exempelvis denna artikel: Intro till ASP.NET. :D

För att inte komma ifrån ämnet alltför mycket - vad skrivs ut om du skriver ut variabeln sok?

Response.Write(sok)
Medlem sedan jan. 2004118 inlägg
#8

när jag sa nubörjare så menade jag inte helt grön utan kan lite här och där men inte tillräkligt mycket... stöter på lite problem emellanåt men brukar fixa det för eller senare men just detta har jag inte löst så därför vände jag mig hit till er...

Men tack skall du ha m_soderlund

Det löste sig med din hjälp nu har du gjort en gladare ialla fall

åter igen tack...

MVH MegaMan...

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)