Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1

    Ricerca parziale nei campi di un db

    Buongiorno a tutti,
    sto realizzando una rubrica con tanto di motore di ricerca, però attualmente trova risultati solo se immetto valori esatti. Non è possibile farli trovare anche solo risultati parziali?
    Questa è la creazione:
    codice:
    <%@LANGUAGE = JScript%>
    <%
    	Response.Buffer = true;
    	var Cn = new ActiveXObject("ADODB.Connection");
    		Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/cerca.mdb"));
    	var testo = new String(Server.HTMLEncode(Request.Form("cerca")));
    	var r_testo = testo.replace(/'/g,"''");
    	var cerca = r_testo.split(" "); //
    	var campi = new Array("Azienda", "Cognome", "Nome", "Qualifica", "Telefono_Ufficio", "Telefono_Casa", "Altro_Telefono", "Telefono_Cellulare", "Fax", "Via", "Citta", "Cap", "Email", "Web", "Note");
    	var sql = "SELECT * FROM risultati WHERE ";
    		for( i=0;i<16;i++)
    		{
    			if (i > 0) sql += "And";
    			sql = "select * from risultati where Azienda = '"+cerca+"' or cognome = '"+cerca+"' or Nome = '"+cerca+"' or  Qualifica ='"+cerca+"' or  Telefono_ufficio ='"+cerca+"' or  Telefono_casa ='"+cerca+"' or  Altro_telefono ='"+cerca+"' or  Telefono_cellulare ='"+cerca+"' or  fax ='"+cerca+"' or  via ='"+via+"' or  citta ='"+cerca+"' or  email ='"+email+"' or  web ='"+web+"' or  note ='"+note+"'";
    ;
    		}
    		sql += " ORDER BY Azienda";
    	var Mostra = Cn.Execute(sql);
    %>
    Nella fase di ricerca non ho inserito tutti i campi disponibili; perchè quando vado ad inserire il campo Note (che è l'ultimo, dopo averli inseriti tutti)la pagina mi da errore 500?

    Spero che possiate aiutarmi!

    Help,

    Giobbegio


    Ps. Gracias

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Note è una parola riservata.
    O cambi il nome al campo oppure lo metti tra parentesi quadre:

    codice:
    [note]='"+note+"'
    Roby

  3. #3
    Grazie, provo e ti faccio sapere


    A prestu,


    Giobbegio

  4. #4
    Ok, funziona, ma per la ricerca "parziale" invece?

    Gracias


    Giobbegio

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    In che senso parziale??

    Roby

  6. #6
    Ad esempio:
    Io ho un contatto con nome giobbegio nel db, però non ricordo il nome preciso. Se provo ad immettere giobbe o gio o qualsiasi criterio che non sia uguale a giobbegio, non mi viene visualizzato alcun valore. Per ricerca anche parziale intendo questo. Ha un nome specifico?

    Grazie,
    giobbe

  7. #7

    Per Roby_72

    Mi sono accorto che non riconosce gli spazi, cioè tutti i campi che hanno gli spazi li ignora, come mai?

    Help!


    Giobbegio

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    28
    la ricerca la realizzi tramite l'utilizzo dell'operatore
    LIKE nella tua query.

    Es.

    SELECT Cognome FROM Tab_Contatti WHERE Cognome LIKE '%"+stringa+"%'"

    prova e fammi sapere
    distpg

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559

    Re: Per Roby_72

    Originariamente inviato da giobbegio
    Mi sono accorto che non riconosce gli spazi, cioè tutti i campi che hanno gli spazi li ignora, come mai?

    Help!


    Giobbegio
    Non ho ben capito...
    Il form com'è fatto?

    Roby

  10. #10
    Gracias, ora funziona la ricerca parziale. Però continua a non vedere gli spazi (se immetto due parole, ad esempio, non me le trova)
    ...non sapresti aiutarmi anche su questo?


    Ciao e grazie!


    Giobbegio

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.