Max(id) su JScript

  • Creatore Discussione Creatore Discussione mike78
  • Data di inizio Data di inizio

mike78

Nuovo Utente
29 Ott 2006
5
0
0
Dato questo script:

<%@LANGUAGE = JScript%>
<html>
<head>
<title>Motore di ricerca Cadutipolizia.it</title>
</head>
<body background="../images/sfondocentrogiallo2.jpg">

<h3><center><img border="0" src="../images/bannercaduti2.jpg"><p class="MsoNormal">
<u><i><font face="Verdana" color="#CC0000" size="4">
<style="text-decoration: none">
<b>I</b></font></i></u>
</center>

<form method="POST" action="ricerca2.asp?cerca=OK">
<p align="center">
<input type="text" name="stringa" size="20">
<input type="submit" value="Cerca"> </p>
</form>
<%
var cerca = new String(Request.QueryString("cerca"));
var testo = new String(Request.Form("stringa"));
var apice = testo.replace(/'/g,"''");
var stringa = apice.split(" ");
if (cerca == "OK")
{
if (testo == "" || testo == "undefined")
{
Response.Write("<p><center><FONT FACE=verdana>Inserire almeno una parola per effettuare una ricerca</center></p>");
}
else
{
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/archivio.mdb"));
var sql = "SELECT * FROM pagineweb WHERE";
for (var i=0; i<stringa.length; i++)
{
if (i > 0)
{
sql += " AND";
}
sql += " keywords LIKE '%" + stringa + "%'";
}
var Mostra = Cn.Execute(sql);
if (Mostra.EOF)
{
Response.Write("<p><center><FONT FACE=verdana>Ricerca effettuata con esito negativo</center></p>");
}
else
{
while (!Mostra.EOF)
{
with (Response)
{
Write("<p>" +"<center>");
Write("<a href='" + Mostra("url") + "'>" + "<br>" + "<br>");
Write(Mostra("descrizione")+ "<br>" +"<center>" + "<br>");
Write("<img src='" +Mostra("foto") + "'>" + "<br>" +"<center>" + "<br>" );
Write(Mostra ("keywords") + "<br>" +"<center>");
Write("</p>" + "</a>");
Mostra.MoveNext();
}
}
}
Cn.Close();
}
}
%>
<p align="center">&nbsp;</p>
<p align="center"><a href="../index.asp">
<img border="0" src="../images/Bottoni/Homepage_link.jpg"></a></p>

</body>
</html>

Ho bisogno di selezionare il Max(id) presente in un DB access per stamparlo a fine script in modo tale che mi dichiari su quanti record totali ha effttuato la ricerca solo che non riesco a venirne fuori, potete darmi un suggerimento???

Grazie
:crying:
 
Tho, questo script non mi è nuovo :D

Non devi fare il MAX ma il COUNT, tipo...

var sql2 = "SELECT COUNT(*) AS temp FROM pagineweb WHERE";
for (var i=0; i<stringa.length; i++)
{
if (i > 0)
{
sql += " AND";
}
sql += " keywords LIKE '%" + stringa + "%'";
}
var quanti = Cn.Execute(sql2);
Response.Write(quanti("temp"));

Fammi sapere!
 
Così Modificato

<%
var cerca = new String(Request.QueryString("cerca"));
var testo = new String(Request.Form("stringa"));
var apice = testo.replace(/'/g,"''");
var stringa = apice.split(" ");
if (cerca == "OK")
{
if (testo == "" || testo == "undefined")
{
Response.Write("<p><center><FONT FACE=verdana>Inserire almeno una parola per effettuare una ricerca</center></p>");
}
else
{
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/archivio.mdb"));
var sql = "SELECT * FROM pagineweb WHERE";
for (var i=0; i<stringa.length; i++)
{
if (i > 0)
{
sql += " AND";
}
sql += " keywords LIKE '%" + stringa + "%'";
}
var Mostra = Cn.Execute(sql);
if (Mostra.EOF)
{
Response.Write("<p><center><FONT FACE=verdana>Ricerca effettuata con esito negativo</center></p>");
}
else
{
while (!Mostra.EOF)
{
with (Response)
{
Write("<p>" +"<center>");
Write("<a href='" + Mostra("url") + "'>" + "<br>" + "<br>");
Write(Mostra("descrizione")+ "<br>" +"<center>" + "<br>");
Write("<img src='" +Mostra("foto") + "'>" + "<br>" +"<center>" + "<br>" );
Write(Mostra ("keywords") + "<br>" +"<center>");
Write("</p>" + "</a>");
Mostra.MoveNext();
}
}
}
var sql2 = "SELECT COUNT(*) AS temp FROM pagineweb WHERE";
for (var i=0; i<stringa.length; i++)
{
if (i > 0)
{
sql += " AND";
}
sql += " keywords LIKE '%" + stringa + "%'";
}
var quanti = Cn.Execute(sql2);
if (quanti.EOF)
{
Write(quanti("temp"));
}
Cn.Close();
}
}

%>

Mi restituisce un sintax error a livello di WHERE ma lo identifica sulla questo comando

var quanti = Cn.Execute(sql2);

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error in WHERE clause.

/cerca/ricerca2.asp, line 74


:crying:

...noto con piacere che hai un Monster :fonzie:
 
Non riesco a capire

<%
var cerca = new String(Request.QueryString("cerca"));
var testo = new String(Request.Form("stringa"));
var apice = testo.replace(/'/g,"''");
var stringa = apice.split(" ");
if (cerca == "OK")
{
if (testo == "" || testo == "undefined")
{
Response.Write("<p><center><FONT FACE=verdana>Inserire almeno una parola per effettuare una ricerca</center></p>");
}
else
{
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/archivio.mdb"));
var sql = "SELECT * FROM pagineweb WHERE";
for (var i=0; i<stringa.length; i++)
{
if (i > 0)
{
sql += " AND";
}
sql += " keywords LIKE '%" + stringa + "%'";
}
var Mostra = Cn.Execute(sql);
if (Mostra.EOF)
{
Response.Write("<p><center><FONT FACE=verdana>Ricerca effettuata con esito negativo</center></p>");
}
else
{
while (!Mostra.EOF)
{
with (Response)
{
Write("<p>" +"<center>");
Write("<a href='" + Mostra("url") + "'>" + "<br>" + "<br>");
Write(Mostra("descrizione")+ "<br>" +"<center>" + "<br>");
Write("<img src='" +Mostra("foto") + "'>" + "<br>" +"<center>" + "<br>" );
Write(Mostra ("keywords") + "<br>" +"<center>");
Write("</p>" + "</a>");
Mostra.MoveNext();
}
}

}
var sql2 = "SELECT Max(id) AS md FROM pagineweb";
var Mostra = Cn.Execute(sql2);
Write(Mostra("md"));

Cn.Close();
}
}
%>

Ho modificato l'ultima parte solo che praticamente mi dice che non ha l'oggetto di riferimento come se non riuscisse a leggere la MAXID considerandola vuota!!

DOve sbaglio cacchiarola!?!
 
Alla Fine Ho Risolto

Con due cicli e connessioni al DB distinte nello stesso script

<%
var cerca = new String(Request.QueryString("cerca"));
var testo = new String(Request.Form("stringa"));
var apice = testo.replace(/'/g,"''");
var stringa = apice.split(" ");
{
var stringaDiConnessione = "driver={Microsoft Access Driver (*.mdb)};dbq=";
stringaDiConnessione += Server.MapPath("/mdb-database/archivio.mdb");
var conn = new ActiveXObject("ADODB.Connection");
conn.Open(stringaDiConnessione);
var rs = "Select MAX(id) as massimo from pagineweb";
var rs = conn.Execute(rs);
var md = (+ rs("massimo"));

{
if (cerca == "OK")
{
if (testo == "" || testo == "undefined")
{
Response.Write("<p><center><FONT FACE=verdana>Inserire almeno una parola per effettuare una ricerca</center></p>");
}
else
{
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/archivio.mdb"));
var sql = "SELECT * FROM pagineweb WHERE";
for (var i=0; i<stringa.length; i++)
{
if (i > 0)
{
sql += " AND";
}
sql += " keywords LIKE '%" + stringa + "%'";
}
var Mostra = Cn.Execute(sql);
if (Mostra.EOF)
{
Response.Write("<p><center><FONT FACE=verdana>Ricerca effettuata con esito negativo</center></p>");
}
else
{
while (!Mostra.EOF)
{
with (Response)
{
Write("<p>" +"<center>");
Write("<a href='" + Mostra("url") + "'>" + "<br>" + "<br>");
Write(Mostra("descrizione")+ "<br>" +"<center>" + "<br>");
Write("<img src='" +Mostra("foto") + "'>" + "<br>" +"<center>" + "<br>" );
Write(Mostra ("keywords") + "<br>" +"<center>" + "<br>" + "<br>");
Write("</p>" + "</a>");
Mostra.MoveNext();
}
}
}
Response.write("Ricerca Effettuata su "+ rs("massimo")+ "<br>");
Response.write("Inseriti nel nostro Archivio");
Cn.Close();
}
}
}

conn.Close();
}


%>


:beer: :beer: :beer: :beer:
 

Discussioni simili