4 messaggi dal 24 marzo 2004
Buonasera a tutti...utilizzo il codice che riporto qui sotto per paginare degli eventi che vengono proposti nella provincia dove abito. La paginazione funziona bene, ho provato ad inserire 3 tasti con le seguneti funzioni:

Primo tasto: Per visualizzare gli eventi che ci sono nel mio comune (pordenone)
Secondo tasto: Per e visualizzare gli eventi al di fuori del comune dove abito..
Terzo tasto: Pervisualizzare tutti gli eventi...

premetto che la ricerca la faccio su un campo che si chiama Luogo dove viene indicato il luogo dell'evento

Purtroppo il secondo tasto..non mi visualizza nulla... qualcuno sarebbe così gentile da aiutarmi??'

alessia

di seguito riporto il codice...

<td><%
iPageSize = 10 'NUMERO RECORD PER PAGINA

If Request.QueryString("page") = "" Then
iPageCurrent = 1
Else
iPageCurrent = CInt(Request.QueryString("page"))
End If

luogo = trim(request("luogo"))
tipo = trim(request("tipo"))
datet = year(date()) & "/" & month (date()) & "/" & day(date())

strSQL = "select * from eventi where eventi.data_fine >= #"& datet &"#"
if Request.ServerVariables("REQUEST_METHOD")="GET" then
'Viene dai form
if len(luogo) > 0 then
strSQL = strSQL &" AND luogo LIKE '%"& luogo &"%'"
else
if tipo = "no_pordenone" then
strSQL = strSQL &" AND luogo NOT LIKE '%"& luogo &"%'"
end if
end if
end if
strSQL = strSQL &" order by data_inizio asc, ora_inizio asc, id asc"
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.PageSize = iPageSize
objRS.CacheSize = iPageSize
objRS.Open strSQL, objConn, adOpenStatic, adLockReadOnly, adCmdText

reccount = objRS.recordcount
iPageCount = objRS.PageCount

If iPageCurrent > iPageCount Then iPageCurrent = iPageCount
If iPageCurrent < 1 Then iPageCurrent = 1

If iPageCount = 0 Then
Response.Write "<p><table><td><font face='verdana' size='2' color='#000000'><b>Non sono stati trovati eventi.</b></td></table></p>"
Else
objRS.AbsolutePage = iPageCurrent
iRecordsShown = 0
%>
<table cellpadding="0" cellspacing="0" border="0" width="560">
<tr>
<td bgcolor="#cccccc">
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr height="22">
<td bgcolor="#E4E6E7" WIDTH="30" class="fortext"> </td>
<td bgcolor="#E4E6E7" WIDTH="195" class="fortext"><strong>Evento</strong></td>
<td bgcolor="#E4E6E7" WIDTH="175" class="fortext"><strong>Località</strong></td>
<td bgcolor="#E4E6E7" WIDTH="80" class="fortext"><strong>data
inizio</strong></td>
<td bgcolor="#E4E6E7" WIDTH="80" class="fortext"><strong>data
fine</strong></td>
</tr>
<%
'SI VISUALIZZA IL CONTENUTO DELLA STRINGA SQL
'ALL'INTERNO DELLA TABELLA PRIMA DEFINITA
cont=1
Do While iRecordsShown < iPageSize And Not objRS.EOF
Dim Rig, bg
Rig = Rig + 1
If Rig Mod 2 = 0 then
bg = "#F3F4F5"
Else
bg = "#FFFFFF"
End if
Response.Write "<tr bgcolor = " & bg & "><td class=""fortext""><div align=""center""><img src=""../image/small/"& objRS("tipo") &".gif"" align=""absmiddle"" border=""0"" </div></td>"
Response.Write "<td class=""fortext""><a href=""eventi.asp?id="& objRS("id") &"&tabella=eventi&dettagli=1"" class=""lnk"">"& Left((objRS("titolo")),30) &"..</a></td>"
Response.Write "<td class=""fortext"">"& Left((objRS("luogo")),25) & "..</td>"
Response.Write "<td class=""fortext"">" & objRS("data_inizio") & "</td>"
%>
<td class="fortext">
<%
if objRS("data_inizio") = objRS("data_fine") then
response.write " "
else
response.write objRS("data_fine")
end if
%>
</td><%
Cont = Cont + 1
'POSIZIONAMENTO ALLA RIGA SUCCESSIVA DEL DB
iRecordsShown = iRecordsShown + 1
objRS.MoveNext
Loop
'PULIZIA DEGLI OGGETTI ADO
objRS.Close
Set objRS = Nothing
%>
</table>
</td>
</tr>
</table>
<%End if%>
<p>
<%If ipagecount <> 1 Then%>
<center>
<table align="center">
<tr valign="middle">
<td width="50%" align="center" valign="middle"><font face="verdana" size="1" color="#000000">
<b>[
<%if iPageCurrent-2 > 0 and iPageCurrent > 2 then%>
<a href="default.asp?page=1"><img border="0" src="../image/small/first.gif" valign="middle" alt="Prima"></a>
<%end if%>
<%if iPageCurrent > 1 then%>
<a href="default.asp?page=<%=iPageCurrent-1%>"><img border="0" src="../image/small/pre.gif" valign="middle" alt="Precedente"></a>
<%end if%>
<%if iPageCount > 2 then
if iPageCurrent-2 < 1 then da_pag = 1 else da_pag = iPageCurrent-2
if iPageCurrent+2 > iPageCount then fino_a_pag = iPageCount else fino_a_pag = iPageCurrent+2
else
da_pag = 1
fino_a_pag = iPageCount
end if%>
<%for i = da_pag to fino_a_pag%>
<%if i = iPageCurrent then%>
<font color="red"><%=i%></font>
<%else%>
<a href="default.asp?page=<%=i%>"><%=i%></a>
<%end if%>
<%next%>
<%if iPageCurrent > 0 and iPageCurrent < iPageCount then%>
<a href="default.asp?page=<%=iPageCurrent+1%>"><img border="0" src="../image/small/next.gif" valign="middle" alt="Successiva"></a>
<%end if%>
<%if iPageCurrent+1 < iPageCount then%>
<a href="default.asp?page=<%=iPageCount%>&luogo=<%=luogo%>"><img border="0" src="../image/small/last.gif" valign="middle" alt="Ultima"></a> </a>
<%end if%>
]</b>
</font></td>
</tr>
<tr>
<td colspan="2" align="center"><font face="verdana" size="1" color="#000000">
<center>
Pagina
<font color="#FF0000"><b><%=iPageCurrent%></b></font>
di
<font color="#FF0000"><b><%=iPageCount%></b></font>
</center>
</font></td>
</tr>
</table>
<%end if%>
<%
objConn.Close
Set objConn = Nothing
%>
</td>
</tr>
<tr>
<td height="20" colspan="3"><div align="center">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><form method="get" action="default.asp">
<input type="hidden" name="luogo" value="pordenone" />
<input type="Submit" name="submit" value="Eventi di Casarsa" />
</form></td>
<td>
<form method="get" action="default.asp">
<input type="hidden" name="tipo" value="no_pordenone" />
<input type="Submit" name="submit" value="Tutti gli altri comuni" />
</form></td>
<td>
<form method="get" action="default.asp">
<input type="hidden" name="tipo" value="tutti" />
<input type="Submit" name="submit" value="Tutti i comuni" />
</form></td>
</tr>
</table>
26 messaggi dal 12 marzo 2001
www.albnet.eu
Hai dimenticato di mettere nel form "tutti gli altri comuni" la riga <input type="hidden" name="luogo" value="pordenone" />.

Ammesso che vuoi mantenere la query, devi usare un codice diverso tipo:

<% 
luogo = trim(request("luogo")) 
tipo = trim(request("tipo")) 
datet = year(date()) & "/" & month (date()) & "/" & day(date()) 

strSQL = "select * from eventi where eventi.data_fine >= #"& datet &"#" 

if Request.ServerVariables("REQUEST_METHOD")="GET" then 
  'Viene dai form 
  if len(luogo) > 0 then 
    if tipo = "no_pordenone" then 
      strSQL = strSQL & " AND luogo NOT LIKE '%"& luogo &"%'" 
    else
      strSQL = strSQL &" AND luogo LIKE '%"& luogo &"%'" 
    end if 
  end if 
end if 

strSQL = strSQL &" order by data_inizio asc, ora_inizio asc, id asc" 
%> 


Ciao

Albnet
http://www.albnet.eu/
4 messaggi dal 24 marzo 2004
Grazie albinet, funziona alla perfezione..

un'ultima domanda...se posso, quando ho diversi record che vengono divisi in più pagine (10 record per pagina), e io seleziono gli eventi fuori pordenone, come faccio a mantenere questa selezione scorrendo le pagine?

cerco di essere più chiara, quando apro la pagina, con il codice che ti ho postato, mi visualizza tutti gli eventi.. se io seleziono solo gli eventi a Pordenone, e mi trova 2 pagine di eventi..vorrei che anche nella seconda pagina mi visualizzasse solo gli eventi di PN....e adesso non funziona alla perfezione...come faccio per passare la variabile anche nelle altre pagine?

spero di essermi spiegata bene...

buona serata, e grazie ancora

alessia.
26 messaggi dal 12 marzo 2001
www.albnet.eu
Puoi operare in vari modi... visco che usi i link, ti conviene continuare aggiungengo anche il tipo:

<a href="default.asp?page=<%=iPageCount%>&luogo=<%=luogo%>&tipo=<%=tipo%>">


Ricodati di aggiungere sempre il luogo e il tipo nella stringa anche se sono nulli così eviti di dimenticarti un pezzo. Se no puoi aggiungere delle condizioni:

strUrl = "<a href=""default.asp?page=" & iPageCount
if Isnull(luogo) = false then
strUrl = strUrl & "&luogo=" & luogo
end if
if Isnull(tipo) = false then
strUrl = strUrl & "&tipo=" & tipo
end if
strUrl = strUrl & """>" & iPageCount & "</a>"

Modificato da albinet il 01 febbraio 2005 21.07 -

Albnet
http://www.albnet.eu/
4 messaggi dal 24 marzo 2004
grazie albinet, funziona alla perfezione. Molto gentile.

buona serata
alessia

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.