Newsgroup: it.comp.www.asp
Titolo: altro test paginaz..estrae tutto

in questo caso mi cambia pagina ma mi prende tutto il db
nella barra indirizzi al primo cambio pagina:
http://lll/xxx/yyy/search.asp?page=2&compaq
perr mi trova tutti i record e non tiene la variabile , tamnto che alle sucessive
pagine:
http://lll/xxx/yyy/search.asp?page=3&
SQL=" SELECT * FROM Qprodotti2 WHERE "
arrRicerca = Split(Trim(Request("StrSearch")), " ") 
for i = o to ubound(arrRicerca)
SQL = SQL & " stato = 1 AND "
SQL = SQL & " articolo = '" & arrRicerca(i) & "' or " 
SQL = SQL & " t_scat = '" & arrRicerca(i) & "' or "
SQL = SQL & " marca LIKE '%" & arrRicerca(i) & "%' or "
SQL = SQL & " tipocat LIKE '%" & arrRicerca(i) & "%' or "
next
SQL = Mid(SQL, 1, Len(SQL)-3) 
arrRicerca = request("strSearch")
poi...
link painaz:
Response.Write "<A href='search.asp?page=" & pag
response.write "&" & server.urlencode(arrRicerca)
response.write"'>"
sto andando fuori di testa
ciao
--
Enjoy the .NET community! ASPItalia.com
 
http://forum.aspitalia.com/
 
http://www.aspitalia.com/

Dovresti cercare di spiegare un po meglio quello che ti succede, da quello
che hai scritto saro sincero ma non ho capito molto :)
ciao
--
Alessandro
UGIdotNET - 
http://www.ugidotnet.org


Ciao,
C.... lo so ma ho provato talmente tante soluzioni diverse che non so nemmeno io
quale sia la piy vicina al mio problema, l'ultima adottata h lo script di daniele
bocchiccio:
la query:
recXpag = 2
Page = request("page")
if page = "" then page = 1
SQL=" SELECT * FROM Qprodotti2 WHERE "
arrRicerca = Split(Trim(Request("StrSearch")), " ") 
for i = o to ubound(arrRicerca)
   SQL = SQL & " stato = 1  AND "
   SQL = SQL & " articolo = '" & arrRicerca(i) & "'  or " 
   SQL = SQL & " t_scat = '" & arrRicerca(i) & "' or "
   SQL = SQL & " marca LIKE '%" & arrRicerca(i) & "%' or "
   SQL = SQL & " tipocat LIKE '%" & arrRicerca(i) & "%' or "
 
 
next
SQL = Mid(SQL, 1, Len(SQL)-3) 
arrRicerca = request("strSearch")
[cut]
salto al  link per la paginazione:
Response.Write "<A href='search.asp?page=" & pag
response.write "&" & server.urlencode(arrRicerca)
response.write"'>"
--
il risultato con questo tipo di approccio i :
La prima pagina funziona correttamente, le pagine sucessive estraggono tutto il
contenuto del db.
allora: pagina 1:
4 record trovati dsivisi in 2 pagine, se passo alla sucessiva pagina ho sulla barra
degli indirizzi:
http://loris-amd1800/oasismarket/vetrine/search.asp?page=2&compaq
che mi pare corretto, ma ho 17 articoli trovati, se passo alla 3 pagina va persa
la variabile e ho sempre i 17 articoli cioh tutto il db e non compare + la stringa
di ricerca sulla barra indirizzi.
quindi ho:
http://loris-amd1800/oasismarket/vetrine/search.asp?page=3&
spero di essermi fatto capire.
ciao grz



Non vedo il problema:
1) Nella prima pagina i parametri di ricerca li hai (altrimenti la pagina
non avrebbe i risultati corretti)
2) Il link alla "seconda" pagina viene fatto dalla prima (che per il punto 1
conosce i parametri)
3) 1+2
Saluti,
Luca Barbetta kck/skd


Come, se alla pag 1 trovo 4 record e alla 2 ne vengono 17 significa che il problema
c'h eccome.
ciao


sembrerebbe il solito problema del top: se metti top n ma trova n+x records
nella ricerca visualizza n+x
se hai un contatore prova a mettere al termine dell'order by ,contatore

 c'h eccome.
Ti è sfuggito il punto 3!
Se la prima pagina ha i parametri e funziona, evidentemente la "seconda"
pagina (che altro non è che la prima richiamata con differenti parametri)
non è stata chiamata correttamente.
Quindi i parametri di ricerca devi riscriverli sui link delle pagine
successive/precedenti e rileggerli da querystring, altrimenti perdi i filtri
sulla ricerca ed ottieni tutti i risultati anzichè un sottoinsieme.
Saluti,
Luca Barbetta kck/skd

sulla ricerca ed ottieni tutti i risultati anzichh un sottoinsieme.
E si infatti h quello che sto cercando di fare, ma come, ho fatto 2000 prove, 
'qui sulla query ho provato a modificare le parentesi, per es in questo modo:
...WHERE ("
e chiudendo...
...(SQL)-3) & " )" 
 ho sempre la pag 1 corretta ma alla 2 ho un errore di sintassi nella clausola
from, se levo le parentesi come sotto, ho il problema di cui ti dicevo precedentemente,
se modifico ancora l'istruzione "mid(sql,1,len(sql)-3&")" ho altri comportamenti
con operatori mancanti  a secondo di quello che modifico.
SQL=" SELECT * FROM Qprodotti2 WHERE "
arrRicerca = Split(Trim(Request("StrSearch")), " ") 
for i = o to ubound(arrRicerca)
   SQL = SQL & " stato = 1  AND "
   SQL = SQL & " articolo = '" & arrRicerca(i) & "'  or " 
   SQL = SQL & " t_scat = '" & arrRicerca(i) & "' or "
   SQL = SQL & " marca LIKE '%" & arrRicerca(i) & "%' or "
   SQL = SQL & " tipocat LIKE '%" & arrRicerca(i) & "%' or "
next
SQL = Mid(SQL, 1, Len(SQL)-3) 
'ora memorizo in questa querystring ( e come se no?)
arrRicerca = Request("strSearch")
'che poi sul link vado a richiamare
Response.Write "<A href='search.asp?page=" & pag
response.write "&" & server.urlencode(arrRicerca)
grazie per l'aiuto
ciao
lobax


 response.write "&" & server.urlencode(arrRicerca)
Questa seconda riga la cambierei con:
response.write "&strSearch=" & server.urlencode(arrRicerca)
In questi casi quando non si riesce a vedere cosa non funziona in una
query dal codice e' meglio mettere un:
response.write "<br>" & sql
response.end
prima di eseguire la query. In questo modo si vede la query che si
prova ad eseguire e a volte e' piu' facile capire l'inghippo.
Ciao
Alessandro Minguzzi
a..m

response.write "&strSearch=" & server.urlencode(arrRicerca)
 e infatti... io da 1 a 10 sono un asino 0 
GRAZIE  ti voglio bene
