Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 29

Discussione: piccola pillola

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    347

    piccola pillola

    codice:
    sql = "select * from utenti "
    if len(order)>0 then sql=sql&" order by "&order_by&" asc"	'ordinamento
    'creo il recordset e lo apro
    Set rs= Server.CreateObject("ADODB.Recordset")
    rs.Open sql,cn,3,3
    'filtro per il motore di ricerca
    citta=request("citta")
    if len(citta)>0 then filtro = filtro&"or citta='"&citta&"' "
    prov=request("prov")
    if len(prov)>0 then filtro = filtro&"or prov='"&prov&"' "
    tel= request("tel")
    if len(tel)>0 then filtro = filtro&"or tel='"&tel&"' "
    ragSoc=request("ragSoc")
    if len(ragSoc)>0 then filtro = filtro&"or ragSoc='"&ragSoc&"' "
    
    if len(filtro)>0 then
    	filtro = right(filtro,len(filtro)-3)
    	rs.filter = filtro
    end if
    Che ne dite di questo motore di ricerca 'tipo'??

    Prima usavo quest'altro che ho cmq trovato su questo form. Ottimo anche questo, ma le righe di codice aumentavano troppo...
    codice:
    		sql = "select * from news "
    		if len(titolo)>0 or len(testo)>0 or len(data)>0 then 
    			sql=sql&"where ( "
    			if len(titolo)>0 then sql=sql&"titolo like '%"&titolo&"%' " 
    			if len(testo)>0 then
    				if len(titolo)>0 then sql=sql&logica
    				sql=sql&"testo like '%"&testo&"%' "
    			end if
    			if len(data)>0 then
    				if len(titolo)>0 or len(testo)>0 then sql=sql&logica
    				sql=sql&"data=#"&data&"#"
    			end if
    			sql=sql&") "
    		end if

  2. #2
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Che ne dite di questo motore di ricerca 'tipo'??
    Che si può migliorare

  3. #3
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    Originariamente inviato da Baol74
    Che si può migliorare
    ... di molto!
    Tutti vogliono parlare, nessuno sa ascoltare.

  4. #4
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Perchè filtrare con adodb che è doppiamente lento in questo caso quando puoi fare attaccare direttamente la where alla select?

    Avrebbe senso se creassi una cache del recordset

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    347
    il discorso di lentezza non me lo ero proprio fatto(anche perchè non so cosa sia piu lento o veloce!)

    ho usato il filter perchè almeno nelle mie pagine ho ridotto il codice di un bel pò di righe rispetto al metodo che usavo prima...

    poi non so, se avete soluzioni che non siano ne la mia nuova ne la mia vecchia, sarei molto contento di conoscerla.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    347
    ehm...ed in che modo posso migliorarlo il codice?

  7. #7
    quello che usi per il filtro mettilo direttamente nella SELECT...WHERE

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    347
    ma così torno al vecchio sistema...

  9. #9
    eh, i bei vecchi sistemi di una volta

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    347
    proprio noi a parlare "di una volta"... :rollo:

    comunque, guardando avanti...
    alla fine il mio problema è che questo codice lo utilizzo su diversi database e di conseguenza vorrei renderlo quanto piu malleabile possibile col minimo delle modifiche...

    col filter aggiungo una riga per ogni campo e via..
    col where devo fare un casino che cresce via via all'aumentare di campi...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.