MRW.it Forum
  • Home
  • Forum
  • Fare Web
  • Classic ASP

Problema con script search.asp Lukeonweb

  • Creatore Discussione Creatore Discussione TaniaPellizzari
  • Data di inizio Data di inizio 26 Lug 2007
T

TaniaPellizzari

Nuovo Utente
26 Lug 2007
4
0
0
  • 26 Lug 2007
  • #1
Ciao Ho scaricato lo script per il motore di ricerca perchè è esattamente quello di cui avrei bisogno.
Putroppo lo script non funziona.
Continua a darmi un errore, questo:
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/nuovosito/cerca.asp, line 39
Clicca per allargare...

La linea 39 è la seguente
Codice:
            var Mostra = Cn.Execute(sql);

Premetto che non ho modificato una virgola di codice, fatta eccezione per la path del database (che è giusta) e la tabella di ricerca (giusta pure quella) e i recordset di riferimento. Di seguito tutto il codice
Codice:
<%@LANGUAGE = JScript%>
<html>
    <head>
        <title>Cerca nel sito</title>
    </head>
<body>

<h3>Cerca nel sito</h3>

<form method="POST" action="cerca.asp?cerca=OK">
    <input type="text" name="stringa">
    <input type="submit" value="Cerca">
</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>Inserire almeno una parola per effettuare una rcerca</p>");
        }
        else
        {
            var Cn = new ActiveXObject("ADODB.Connection");
                Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/database.mdb"));
            var sql = "SELECT * FROM Notizie WHERE";
            for (var i=0; i<stringa.length; i++)
            {
                if (i > 0)
                {
                    sql += " AND";
                }
                sql += " descrizione LIKE '%" + stringa[i] + "%'";
            }
            var Mostra = Cn.Execute(sql);
            if (Mostra.EOF)
            {
                Response.Write("<p>Nessun risultato</p>");
            }
            else
            {
                while (!Mostra.EOF)
                {
                    with (Response)
                    {
                        Write("<p>");
                        Write("<a href='" + Mostra("Titolo") + "'>" +Mostra("Titolo") + "</a><br>");
                        Write(Mostra("descrizione"));
                        Write("</p>");
                        Mostra.MoveNext();
                    }
                }
            }
            Cn.Close();
        }
    }
%>

</body>
</html>

Grazie per l'aiuto :moira:
 
PoLe

PoLe

MRW Moderator
6 Giu 2005
2.198
3
0
41
.: Venezia :.
www.bzconsulting.it
  • 26 Lug 2007
  • #2
Ciao :)

Fatti stampare a video la query, secondo me l'errore dipende dal fatto che almeno in un "stringa" nel WHERE vengono immagazzinati parametri NULL ;)

Codice:
descrizione LIKE '%" +[COLOR="Red"] stringa[i][/COLOR] + "%'
 
T

TaniaPellizzari

Nuovo Utente
26 Lug 2007
4
0
0
  • 26 Lug 2007
  • #3
PoLe ha scritto:
Ciao

Fatti stampare a video la query, secondo me l'errore dipende dal fatto che almeno in un "stringa" nel WHERE vengono immagazzinati parametri NULL

Codice:
descrizione LIKE '%" +[COLOR="Red"] stringa[i][/COLOR] + "%'
Clicca per allargare...


:crying:
e come faccio???
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
47
Napoli
www.lucaruggiero.it
  • 26 Lug 2007
  • #4
Cosi:

// var Mostra = Cn.Execute(sql);
Response.Write(sql);

Comunque:

1. lo script funziona perchè quando lo realizzai lo testai

2. verifica che non ci siano nomi dei campi differenti nello script da quelli che hai sul database.

Ciao!
 
T

TaniaPellizzari

Nuovo Utente
26 Lug 2007
4
0
0
  • 26 Lug 2007
  • #5
lukeonweb ha scritto:
Cosi:

// var Mostra = Cn.Execute(sql);
Response.Write(sql);

Comunque:

1. lo script funziona perchè quando lo realizzai lo testai

2. verifica che non ci siano nomi dei campi differenti nello script da quelli che hai sul database.

Ciao!
Clicca per allargare...


che demente che sono...
hai ragione, richiamavo una colonna descrizione che non esiste.


Risolto
Thanks
 
T

TaniaPellizzari

Nuovo Utente
26 Lug 2007
4
0
0
  • 26 Lug 2007
  • #6
e se volessi che questo motore cercasse in diverse tabelle dello stesso database?
esempio: la tabella novita, quella documenti, quella articoli, quella download ecc.???

e... altra cosa.
Visto che alcune tabelle hanno una struttura differente, posso inserire anzichè il nome del campo (es. titolo) un riferimento generale? es
Codice:
<%=rs(1)%>

se mi aiuti ti :elvis: una bella canzone
 

PoLe

MRW Moderator
6 Giu 2005
2.198
3
0
41
.: Venezia :.
www.bzconsulting.it
  • 26 Lug 2007
  • #7
..uff... questi anziani.... ti tolgono sempre il divertimento... :evil:

..eh eh
 
L

LunaBlu

Nuovo Utente
13 Giu 2007
7
0
0
  • 1 Lug 2010
  • #8
2 input da ricercare

Ciao,
vorrei aggiungere 2 parole separate da ricercare, esempio:

<form method="POST" action="cerca.asp?cerca=OK">
<input type="text" name="Cognome">
<input type="text" name="Nome">
<input type="submit" value="Cerca">
</form>

Per ricercare nella database ci sono 2 campi: una di "cognome" e una di "nome" e non so come si fa a mettere:

var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/anagrafici.mdb"));
var sql = "SELECT * FROM Lista WHERE";
for (var i=0; i<stringa.length; i++)
{
if (i > 0)
{
sql += " AND";
}
sql += " cognome LIKE '%" + stringa + "%'";
sql += " nome LIKE '%" + stringa + "%'";


}

mi da errore:
Microsoft OLE DB Provider.......... Errore di sintassi (operatore mancante) nell'espressione della query 'cognome LIKE '%ROSSI%' nome LIKE '%ROSSI%".

Aiutatemi... ma sono molto complicato!!! Grazie
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 1 Lug 2010
  • #9
Ti sei dimenticato l'operatore AND. Prova a cambiare questa riga:
Codice:
sql += " cognome LIKE '%" + stringa[i] + "%'";
Così:
Codice:
sql += " cognome LIKE '%" + stringa[i] + "%' AND";

Adesso però mi sorge un dubbio. In questa maniera se in nome inserisco pinco e in cognome inserisco pallino, lui cercherà tutti i record che hanno il nome che contiene pinco e il cognome che contiene pallino.
Se invece vuoi fare in modo che anche solo una delle corrispondenze soddisfi i criteri di ricerca, basta cambiare AND con OR.
 
L

LunaBlu

Nuovo Utente
13 Giu 2007
7
0
0
  • 1 Lug 2010
  • #10
Grazie mille,ho saputo dopo di inviare questo post, tutto risolto ma purtroppo mi sono ancora complicato perchè quando inserisco cognome = "rossi" e nome = "paolo" e la ricerca viene visualizzata solo cognome e non c'è nome.

Ho trovato la soluzione e ho modificato alcune righe :

<%
var cerca = new String(Request.QueryString("cerca"));
var testo = new String(Request.Form("stringa"));
var testo2 = new String(Request.Form("stringa2"));
var apice = testo.replace(/'/g,"''");
var apice2 = testo2.replace(/'/g,"''");
var stringa = apice.split(" ");
var stringa2 = apice2.split(" ");
if (cerca == "OK")
{
if (testo == "" || testo == "undefined")
{
Response.Write("<p>Inserire almeno una parola per effettuare una ricerca</p>");
}
else
{
var Cn = new ActiveXObject("ADODB.Connection");
Cn.Open("driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("/mdb-database/anagrafici.mdb"));
var sql = "SELECT * FROM Lista WHERE";

sql += " cognome '" + stringa + "'";
sql += " AND nome '" + stringa2 + "'";

}
var Mostra = Cn.Execute(sql);
if (Mostra.EOF)
{
Response.Write("<p>Nessun risultato</p>");
}
else
{
while (!Mostra.EOF)
{
with (Response)
{
Write("<p>");
Write("Mostra("cognome") + "</a><br>");
Write(Mostra("nome"));
Write("</p>");
Mostra.MoveNext();
}
}
}
Cn.Close();
}
}
%>


Sono riuscito e vai!!! )

Ciao
 
Devi accedere o registrarti per poter rispondere.

Discussioni simili

Problema javascript con aruba
  • grgfede
  • 5 Mar 2020
  • Javascript
Risposte
1
Visite
2K
Javascript 5 Mar 2020
Max 1
K
Help: problema con uno script di booking in php!
  • kathe
  • 28 Ott 2019
  • PHP
Risposte
0
Visite
693
PHP 28 Ott 2019
kathe
K
S
[Javascript] Problema con condizione "if"
  • samurai.sette
  • 29 Mag 2019
  • Javascript
Risposte
2
Visite
2K
Javascript 9 Ago 2019
|$Alessandro$|
G
[Javascript] Problema parametro passato con ajax
  • GGG
  • 24 Mar 2018
  • Javascript
Risposte
4
Visite
2K
Javascript 26 Mar 2018
marino51
G
[Javascript] Problema modal con scrollbar
  • Giulo77
  • 15 Mar 2018
  • Javascript
Risposte
0
Visite
1K
Javascript 15 Mar 2018
Giulo77
G
A
[Javascript] problema con draggable
  • acweb-2004
  • 20 Feb 2018
  • Javascript
Risposte
0
Visite
1K
Javascript 20 Feb 2018
acweb-2004
A
L
[PHP] problema con upload e javascript (upload multiplo)
  • luigi777
  • 22 Nov 2017
  • Javascript
Risposte
2
Visite
1K
Javascript 22 Nov 2017
luigi777
L
[Javascript] un problema con ckeditor
  • borgo italia
  • 6 Ott 2017
  • Javascript
Risposte
3
Visite
2K
Javascript 22 Mag 2018
servcalc
S
A
Problema con getCurrentPosition e passaggio variabili da javascript a PHP
  • Akille67
  • 3 Mag 2017
  • Javascript
Risposte
3
Visite
2K
Javascript 3 Mag 2017
marino51
L
Problema con javascript e server
  • larosa.cristian
  • 6 Apr 2017
  • Javascript
Risposte
3
Visite
1K
Javascript 7 Apr 2017
larosa.cristian
L
F
[Javascript] Problema funzione jquery con elementi css esterni
  • Francesco Ferrai
  • 29 Mar 2017
  • Javascript
Risposte
1
Visite
2K
Javascript 29 Mar 2017
criric
E
[Javascript] problema con margine quando viene mostrato div
  • eleumas
  • 21 Ott 2016
  • Javascript
Risposte
0
Visite
1K
Javascript 21 Ott 2016
eleumas
E
S
Problema con script php-javascript
  • SH4DE
  • 19 Ago 2016
  • PHP
Risposte
2
Visite
1K
PHP 20 Ago 2016
SH4DE
S
S
problema con gli array in javascript
  • stefano Linguanti
  • 18 Mag 2016
  • Javascript
Risposte
12
Visite
2K
Javascript 24 Mag 2016
stefano Linguanti
S
C
Problema con OnClick Javascript
  • CjCreations360
  • 7 Feb 2016
  • Javascript
Risposte
13
Visite
3K
Javascript 18 Feb 2016
CjCreations360
C
H
problema con select dinamiche e javascript
  • HyperX
  • 4 Set 2015
  • Javascript
Risposte
0
Visite
2K
Javascript 4 Set 2015
HyperX
H
P
immagine responsive problema con script jquery
  • pmodugno
  • 18 Ago 2015
  • jQuery
Risposte
0
Visite
2K
jQuery 18 Ago 2015
pmodugno
P
A
Problema con Script js
  • Abel MacLeod
  • 6 Feb 2015
  • Javascript
Risposte
1
Visite
987
Javascript 19 Feb 2015
criric
M
Problema con aggiornamento variabili da web server con javascript
  • mauit83
  • 14 Gen 2015
  • Javascript
Risposte
1
Visite
2K
Javascript 14 Gen 2015
Devil-94
X
Problema con php e javascript
  • XinYiMan
  • 12 Dic 2014
  • jQuery
Risposte
0
Visite
1K
jQuery 12 Dic 2014
XinYiMan
X
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • Classic ASP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?