5 messaggi dal 13 febbraio 2001
Ho un problema con la paginazione, il seguente codice funziona correttamente se dichiaro all'interno della pagina la variabile di ricerca e non funziona se la variabile viene da un form o da una querystring come mai secondo voi.
CODICE
<html>
<head>
<title>GESTIONE PAGINAZIONE</title>
<style type="text/css">
<!--
A, a:visited { color: #000000; text-decoration: none}
A:Active, a:hover { color: #ff0000; text-decoration: underline}

body { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: xx-small}
table { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: x-small}
td { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: x-small}
tr { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: x-small}
-->
</style>
</head>
<%set conn=Server.CreateObject("ADODB.connection")
set rs1 = Server.CreateObject("ADODB.recordset")
conn.open "DB1" %>
<body bgcolor="#FFFFFF">
<%
strRicerca = Request.QueryString("key")
gif = Request.Querystring("gif")
'response.write strRicerca &"<br>"
'response.write gif

RecordPerPagina = 8
If Request.QueryString("page") = "" Then
page = 1
Else
page = CInt(Request.QueryString("page"))
End If
strSQL = "SELECT * FROM tab_attivita WHERE Categoria LIKE '"&strRicerca&"' ORDER by Nome ASC"
rs1.open strSQL,conn,1,3
%>
<table width="550" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td>gif<br>
<br>
record count<br>
</td>
</tr>
<tr>
<td>
<%
rs1.PageSize = RecordPerPagina
rs1.AbsolutePage = page
For i=1 to RecordPerPagina
if Not rs1.EOF then %>
<table width="530" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td colspan="2">Nome:<%=rs1("Nome") %></td>
</tr>
<tr>
<td>Indirizzo</td>
<td>Chiusura</td>
</tr>
<tr>
<td>Tel</td>
<td>bo</td>
</tr>
<tr>
<td>categoria/sottocategoria</td>
<td> </td>
</tr>
<tr>
<td colspan="2">spacer</td>
</tr>
</table>
<%
rs1.MoveNext
end if
Next
%>
</td>
</tr>
<tr>
<td bgcolor="#FFCCCC">
<%
Response.Write "<P><B>Pagine:</B> "
For pag=1 to rs1.PageCount
Response.Write "<A href='GESTIONE_PAGINAZIONE.ASP?page=" & pag
Response.Write "&" & Server.UrlEncode(strRicerca)
Response.write "'>"
Response.Write pag & " "
Response.Write "</A>"
Next
Response.Write "</P>" %></td>
<td><%Response.write "<B>PAGINA</b> "&page& " di "& (pag-1)&"<br>"%></td>
</tr>
</table>
<%
conn.close
Set conn=nothing
Set rs1=nothing %>
</body>
</html>

Ringraziandovi anticipatamente per la risposta Grazie


La chiave di ricerca devi memorizzarla in una sessione altrimenti ad ogni reload di pagina, chiedi un parametro che non esiste (perchè viene fornito solo la 1° volta).

---[ www.digiscout.it ]---

"This message was written using 100% recycled electrons"
635 messaggi dal 06 settembre 2002
Ciao,
scusate per l'intrusione, tuttavia, quando generi i numeri di pagina, la stringa di ricerca la passi "& Server.UrlEncode(strRicerca)"
solo che, quando la prelevi sulla pagina successiva ricerchi
una variabile di nome Key...

Secondo me, dovresti aggiungere dopo
strRicerca = Request.QueryString("key")


una riga del tipo
key=strRicerca

e modificare la riga
& Server.UrlEncode(strRicerca)

con
& Server.UrlEncode(key)

in questo modo dovrebbe funzionare tutto correttamente, anche senza session

Spero di essere stato di aiuto.

Ciao

 JD

OJD
5 messaggi dal 13 febbraio 2001
innanzitutto grazie per la risposta ad esntrambi, non volevo farlo con la session, e con il secondo metodo illustrato da ojd non mi funzion alo stesso, mi da un errore del genere:

ADODB.Recordset error '800a0bcd'

Il record corrente corrisponde all'inizio o alla fine del file oppure è stato eliminato. Per eseguire l'operazione richiesta è necessario disporre di un record corrente.

/atMagenta/GESTIONE_PAGINAZIONE.ASP, line 48
Nel caso mi dareste ancora una mano a sistemare questo script vi ringrazio anticipatamente:

PS. nella strSQL mi conviene USare i '%"&strRicerca&'%"
oppure no
Grazie

14 messaggi dal 26 agosto 2001
Spero che il codice sottostante ti sia d'aiuto.
Anch'io ho avuto i tuoi stessi problemi nella paginazione e alla fine li ho risolti così:

<%@ Language=VBScript %>
<% Option Explicit %>
<!-- #include file="adovbs.inc" -->

<%
Dim strente, nente, strattivita, nattivita, strprov, nprov, val, supp

'leggo le variabili dai campi del modulo
strprov = TRIM( request.form("provincia"))
if strprov="" then
nprov = Request("provincia")
strprov = nprov
end if

strente = TRIM( request.form("ente"))
if strente="" then
nprov = Request("ente")
strente = nente
end if

strattivita = TRIM( request.form("attivita"))
if strattivita="" then
nattivita = Request("attivita")
strattivita = nattivita
end if

%>
<html>
<head>
<title>Ricerca</title>

</head>

<body bgcolor="#FFFFFF" text="#000000">
<br>
<table width="730" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td width="135" valign="top" > <br>
</td>
<td colspan="2" valign="top" class="testo">
<table width="95%" border="0" cellspacing="0" cellpadding="1" align="right">
<tr>
<td bgcolor="#9E181C">
<table width="100%" border="0" cellspacing="0" cellpadding="3" bgcolor="#FFFFFF">
<tr>
<td class="testo">
<div align="center"><b>RISULTATO DELLA RICERCA</b></div>
</td>
</tr>
</table>
</td>
</tr>
</table>
<p><br>
<br>
</p>
<p> <br>
</p>
<table width="95%" border="0" cellspacing="0" cellpadding="1" align="right" class="testo">
<tr>
<td bgcolor="#9E181C">
<table width="100%" border="0" cellspacing="0" cellpadding="3" bgcolor="#FFFFFF">
<tr>
<td class="testo">
<div align="center" class="testo">
<table border="0" align="center" width="550">
<tr >
<%

' *** Set up data access
dim sqlString, strSql
dim icount, i
dim pg
dim rowCount
dim objconn, objrs

icount = 0
pg = trim (request("pg"))

if pg = "" then pg = 1
Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")
objConn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("database/dbgaralibera.mdb")
objRS.CursorType = adOpenStatic
objRS.pagesize = 8
objRS.ActiveConnection = objConn
if strprov <> "-" then
strSql = "SELECT Regione, prov, url, ente, attivita, legenda, link FROM tblgara where ((prov like '" & strprov & "') or (regione LIKE '" & strprov & "'))"
end if

if strprov = "-" then
strSql = "SELECT Regione, prov, url, ente, attivita, legenda, link FROM tblgara where prov <> '-' "
end if

if strente <> "-" then
strSql = strsql + "AND( ente LIKE '%" & strente & "%') "
end if
if strattivita <> "-" then
strSql = strsql + "AND( attivita LIKE '%" & strattivita & "%') "
end if
strSql = strsql + "order by prov asc"
objRS.Open strSql
if objRS.eof=true then
response.write("")
else
objRS.absolutepage = pg
end if
Do While Not objRS.EOF and rowCount < objRS.PageSize
rowCount = rowCount + 1

icount=icount+1

Response.Write("<TR>")
Response.Write("<TD>")
%>
<span class="unnamed1">Regione</span>
<%
Response.Write("</TD>")
Response.Write("<TD>")
%>
<span class="unnamed1"><%=objRS("regione")%></span>
<%
Response.Write("</TD>")
Response.Write("</TR>")

'riga visualizza provincia
Response.Write("<TR>")
Response.Write("<TD>")
%>
<span class="unnamed1">Provincia</span>
<%
Response.Write("</TD>")
Response.Write("<TD>")
%>
<span class="unnamed1"><%=objRS("prov")%></span>
<%
Response.Write("</TD>")
Response.Write("</TR>")
' Fine riga provincia

'riga visualizza url
Response.Write("<TR>")
Response.Write("<TD>")
%>
<span class="unnamed1">URL: </span>
<%
Response.Write("</TD>")
Response.Write("<TD>")
%>
<span class="unnamed1"><A href=http://<%=objRS("link")%>><%=objRS("url")%></A></span>
<!-- <span class="unnamed1"><A href=http://www.<%=objRS("url")%>><%=objRS("url")%></A></span> -->
<%
Response.Write("</TD>")
Response.Write("</TR>")
' Fine riga url

'riga visualizza valutazione
Response.Write("<TR>")
Response.Write("<TD>")
%>
<span class="unnamed1">VALUTAZIONE :</span>
<%
Response.Write("</TD>")
Response.Write("<TD>")
%>
<% if objRS("legenda") <> "??" then %>
<span class="unnamed1"><img src=immagini/legenda/<%=objRS("legenda")%>></span>
<%END IF %>
<%
Response.Write("</TD>")
Response.Write("</TR>")
' Fine riga legenda

Response.Write("<TR>")
Response.Write("<TD colspan=2>")
%>
<img src="immagini/angolo01.gif" width="100%" height="1">
<%
Response.Write("</TD>")
Response.Write("</TR>")


objRs.MoveNext
Response.Write("</TR>")
Loop


%>
</table>
<p><font size="2" face="arial">
<%
if icount = 0 then
Response.write("non ci sono al momento bandi di gara per la ricerca effettuata")
end if
%>
</font></p>
<p>  </p>
<p>
<%
if objRS.pagecount > 1 then
%>
<font size="2" face="arial" color="darkgreen"> <b>Vai alla
pagina :</b>
<%
for i = 1 to objRS.pageCount
if i <> cINT( pg ) then
%>
<a href="garaliberaris.asp?provincia=<%=strprov%>&ente=<%=strente%>&pg=<%=i%>&attivita=<%=strattivita%>">
<%=i%></a> 
<%ELSE%>
<b><%=i%></b> 
<% END IF %>
<%
next
%>
</font>
<%
END IF
objRs.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing
%>
</p>
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br>
</td>
</tr>
<tr>
<td width="135" valign="top"> </td>
<td width="440" valign="top"> </td>
<td width="155" valign="top"> </td>
</tr>
</table>
<div align="center">
<p> </p>
</div>
</body>
</html>


Il codice è un pò lungo nonostante lo abbia ripulito di tutto cio che era inutile ai fini della comprensione del procedimento
Fammi sapere se hai risolto


Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.