Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    query sql con if e asp jscript

    ho dei problemi con un modulo che ho creato per la ricerca avanzata nel database in cui sono caricati gli annunci del mio sito.

    la query SQL la compongo con degli if (ad esempio):

    var typo = Request.Form("tipologia");
    if (typo!="" || typo!="undefined") {strSQL += " and title= '" + typo + "'";}

    se e solo se il campo "tipologia" del form ( è un select con varie option) non è vuoto (di default è diabilitato) mi deve aggiungere quel pezzo di query.
    in realtà anche se il campo tipologia è disabilitato e mi stampa comunque and title= 'undefined' se faccio un Response.Write(strSQL)...


    forse c'è qualche problema nell' if (typo!=... , non sono molto ferrato in asp jscript, è un po diverso da javascript e asp vbscript

    il link per vedere come funziona il form e la ua abilitazione- disabilitazione è quì:
    http://www.apollinarecatering.it/index.asp

    se clicco su ricerca avanzata si abilitano i campi con le varie select (di default su disblaed)

  2. #2
    questo lo script completo della pagina ricerca.asp ( manca l'html che mi stampa i risultati...):

    <%@ LANGUAGE = JScript %>
    <%
    var testo = String(Request.Form("keywords"));
    var typo = Request.Form("tipologia");
    var ogg = Request.Form("oggetto");
    var price = Request.Form("prezzo");

    if (testo=="" || testo=="undefined")
    Response.Redirect("index.asp");

    var apice = testo.replace(/'/g,"''");
    var keywords = apice.split(" ");


    var stringaDiConnessione = "driver={Microsoft Access Driver (*.mdb)};dbq=";
    stringaDiConnessione += Server.MapPath("database/incoming.mdb");
    var conn = new ActiveXObject("ADODB.Connection");
    conn.Open(stringaDiConnessione);


    strSQL = "SELECT * FROM Images WHERE campo8 = 'pubblica'";

    strSQL += " AND (";
    for (i=0;i<keywords.length;i++) {
    if (i>0) strSQL += " and";
    strSQL += " campo2 LIKE '%" + keywords[i] + "%'";
    }

    strSQL += " OR";
    for (i=0;i<keywords.length;i++) {
    if (i>0) strSQL += " and";
    strSQL += " title LIKE '%" + keywords[i] + "%'";
    }

    strSQL += " OR";
    for (i=0;i<keywords.length;i++) {
    if (i>0) strSQL += " and";
    strSQL += " description LIKE '%" + keywords[i] + "%'";
    }
    strSQL += ")";





    if (typo!="" || typo!="undefined") {strSQL += " and title= '" + typo + "'";}

    strSQL += " ORDER BY DateCreated desc;";



    var RS = conn.Execute(strSQL);


    %>

  3. #3

    Re: query sql con if e asp jscript

    Originariamente inviato da buribus
    var typo = Request.Form("tipologia");
    if (typo!="" || typo!="undefined") {strSQL += " and title= '" + typo + "'";}
    typo se lo confronti con "undefined" darà sempre falso, a meno che non contenga la STRINGA undefined

    L'istruzione corretta a mio avviso è:
    codice:
    if (typo!="" || typo!=undefined) {strSQL += " and title= '" + typo + "'";}
    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

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 © 2026 vBulletin Solutions, Inc. All rights reserved.