10 messaggi dal 10 novembre 2002
Ho un problema: se voglio fare una ricerca con una stringa di testo esatta, quali sono i cambiamenti che devo fare nel codice che sto usando (quello sottostante).
In effetti ora la ricerca viene effettuata e produce il risultato comprendendo anche tutti i records che contengono parzialmente il testo inserito: se il campo chiave contiene il cognome "alfano", solo inserendo la stringa alfano deve mostrare il record e non come avviene ora che inserendo le due lettere "al" mi compare lo stesso.
GRAZIE


Response.Buffer = true;
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("cerca.mdb"));
var testo = new String(Server.HTMLEncode(Request.Form("cerca")));
var r_testo = testo.replace(/'/g,"''");
var cerca = r_testo.split(" "); // Tutte le parole chiave devono essere separate da uno spazio vuoto
var sql = "SELECT * FROM risultati WHERE ";
for (var i=0; i<cerca.length; i++)
{
if (i > 5) ;
sql += " chiave LIKE '%" + cerca[i] + "%'";
}
sql += " ORDER BY 2";
var Mostra = Cn.Execute(sql);
%>
<html>
<head>
<title>Congedi Dirigenti Scolastici</title>
<basefont size="2" face="Verdana">
</head>
<body link="Blue" alink="Red" vlink="Blue">

<h3>
<b>Congedi A.S. 2007/08</b>
<form method="post" action="cerca.asp">
<input type="text" name="cerca" size="50" value="<%cerca != "undefined" ? Response.Write(testo) : Response.Write("")%>">
<input type="submit" value="Cerca">
</form>
</h3>

<%if (testo != "undefined") {%>
<p><b>Elenco assenze per il Dirigente Scolastico <font color="Red"><%=testo%></font></b></p>
tipo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dal&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; al&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gg<p>
----------------------------
<%
if (testo == "" || testo == "undefined" || testo.charAt(0) == " ")
{
Response.Write("<p>Inserire un termine per effettuare una ricerca</p>");
}
else if (Mostra.EOF)
{
Response.Write("<p>Nessun risultato</p>");
}
else
{
while (!Mostra.EOF)
{
with (Response)
{
Write("<p>");
Write("<a href='" + Mostra("4") + "' target='_blank'>" + "</a>");
Write(Mostra("2") + " ");
Write(Mostra("4") + " ");
Write(Mostra("5" ) + " ")
Write(Mostra("6" ) + " ")
Write("</p>");
}
Mostra.MoveNext();
}
}
%>
<%}%>

</p>

</body>
</html>
<%Cn.Close()%>
nella riga:
sql += " chiave LIKE '%" + cerca[i] + "%'";
prova a togliere i simboli % e al posto di like metti =

Alberto Biancardo
10 messaggi dal 10 novembre 2002
P E R F E T T O ! !
GRAZIE per il suggerimento!
Questo si che è un SUPER forum!!!
Al prossimo problema e...Buona Pasqua!
enrico
10 messaggi dal 10 novembre 2002
P E R F E T T O ! !
GRAZIE per il suggerimento!
Questo si che è un SUPER forum!!!
Al prossimo problema e...Buona Pasqua!
enrico
10 messaggi dal 10 novembre 2002
P E R F E T T O ! !
GRAZIE per il suggerimento!
Questo si che è un SUPER forum!!!
Al prossimo problema e...Buona Pasqua!
enrico

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.