Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Errore di sintassi

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    57

    Errore di sintassi

    Sto creandola pagina risultati di un motore di ricerca.

    testo=request.form("searchfor")
    keywords=split(testo," ")
    sql="select * from schede where "
    where = ""
    for i = 0 to ubound(keywords)
    where=where & "and " & " denominazione like '%" & keywords(i) & "%' "
    response.Write(where)
    next
    where = Right(where,3)
    sql = sql & where
    rs.open sql --> line 177

    Ma mi dà l'errore

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

    [Microsoft][ODBC Microsoft Access Driver] Syntax error in query expression '%''.

    /pages/search.asp, line 177

    Dov'è l'errore.
    Grazie
    Webfaber

  2. #2
    Utente di HTML.it L'avatar di pip19
    Registrato dal
    Dec 2001
    Messaggi
    512
    non sono sicuro ma credo che non puoi dichiarare una variabile di nome "where"

    inoltre se devi legare sql + where

    nella variabile sql togli il where, visto che lo metti alla fine

  3. #3
    prova con

    codice:
    testo=request.form("searchfor") 
    keywords=split(testo," ") 
    sql="select * from schede where 1=1" 
    where = "" 
    for i = 0 to ubound(keywords) 
       where=where & " and " & " denominazione like '%" & keywords(i) & "%' " 
       response.Write(where) 
    next 
    'togliere... where = Right(where,3) 
    sql = sql & where

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2002
    Messaggi
    57
    Non va ancora. Non è un porblema di definizione della variabile.
    Altri suggerimenti
    Webfaber

  5. #5
    I contenuti dell'array contengono "'" o "%"? Possono essere vuoti? Magari segui il consiglio di optime, però modificato:

    codice:
    for i = 0 to ubound(keywords) 
       where=where & " and " & " denominazione like '%" & keywords(i) & "%' " 
    next 
    sql = sql & where 
    response.Write(where) 
    response.End
    cosi' "where" viene buttato in output prima di generare l'errore. Posta il contenuto qui e poi si vedrà...

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.