Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    167

    Errore nell'estrazione dati

    Dunque, la mia connessione al database è questa:

    <%
    Set Conn=Server.CreateObject("ADODB.Connection")
    Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("/mdb-database/db.mdb")
    Set Rs=Server.CreateObject("ADODB.RecordSet")

    if (Request("Nome") AND Request("Genere") AND Request("Componenti") AND Request("Citta") AND Request("Provincia") AND Request("Regione")) = "" then
    Sql = "Select TOP 20 ID,Nome,Genere,Citta,Provincia From Gruppi Order by ID Desc"
    else
    Sql = "Select ID,Nome,Genere,Citta,Provincia From Gruppi Order by Nome Asc Where "&Request("campo") = Request("ricerca")
    end if

    Rs.Open Sql, Conn, 2,2


    While Not Rs.EOF

    ...
    %>


    Dove ID,Nome,Genere,Citta,Provincia sono tutti campi della tabella Gruppi, mentre "campo" e "ricerca" sono dati provenienti da un'altra pagina.
    Come avrete capito si tratta di un piccolo motore di ricerca.
    Se arrivano dei dati (Nome, Citta, Genere, Provincia ecc.) come Request deve eseguire una Sql, altrimenti l'altra.

    L'errore restituito è:
    ADODB.Recordset error '800a0bb9'

    Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

    /public/temp/rock_2/bands.asp, line 86


    Non riesco proprio a capire..

    thx a tutti

  2. #2
    Prova così:

    codice:
    <% 
    Set Conn=Server.CreateObject("ADODB.Connection") 
    Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("/mdb-database/db.mdb") 
    Set Rs=Server.CreateObject("ADODB.RecordSet") 
    
    if (Request("Nome") = "" AND Request("Genere") = "" AND Request("Componenti") = "" AND Request("Citta") = "" AND Request("Provincia") = "" AND Request("Regione")) = "" then 
    Sql = "Select TOP 20 ID,Nome,Genere,Citta,Provincia From Gruppi Order by ID Desc" 
    else 
    Sql = "Select ID,Nome,Genere,Citta,Provincia From Gruppi Where "& Request("campo") & " = " & Request("ricerca") & " Order by Nome Asc
    end if 
    
    Rs.Open Sql, Conn, 2,2 
    
    
    While Not Rs.EOF 
    
    ... 
    %>
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    167
    ok ora funziona se non ci sono Request, ma se inserisco delle parole per la ricerca no..

    devo riflettere... :master:

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    167
    Sql = "Select ID,Nome,Genere,Citta,Provincia From Gruppi Where "& Request("campo") & " = " & Request("ricerca") & " Order by Nome Asc"

    questa è la stringa che viene eseguita se alla pagina arrivano i Request "campo e ricerca".

    l'errore restituito è:

    Microsoft OLE DB Provider for ODBC Drivers error '80040e10'
    [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

  5. #5
    Prova così.
    codice:
    <% 
    Set Conn=Server.CreateObject("ADODB.Connection") 
    Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("/mdb-database/db.mdb") 
    Set Rs=Server.CreateObject("ADODB.RecordSet") 
    
    if (Request("Nome") = "" AND Request("Genere") = "" AND Request("Componenti") = "" AND Request("Citta") = "" AND Request("Provincia") = "" AND Request("Regione")) = "" then 
    Sql = "Select TOP 20 ID,Nome,Genere,Citta,Provincia From Gruppi Order by ID Desc" 
    else 
    Sql = "Select ID,Nome,Genere,Citta,Provincia From Gruppi Where "& Request("campo") & " = " & Request("ricerca") & " Order by Nome Asc"
    end if 
    Rs.Open Sql, Conn, 2,2 
    
    
    While Not Rs.EOF 
    
    ... 
    %>
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    167
    sembra che abbia risolto così:

    Sql = "Select ID,Nome,Genere,Citta,Provincia From Gruppi Where "&Request("campo")&" LIKE '%"&Request("ricerca")&"%'"

    che alla fine se non sbaglio fa la stessa cosa che mi hai suggerito tu,
    solo che per il mio scopo mi serve il Like.

    Spero di non doverti più disturbare

    Grassie mille Max!

  7. #7
    Di nulla, ciao!
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

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.