Visualizzazione dei risultati da 1 a 10 su 10

Discussione: motore asp con db

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    36

    motore asp con db

    salve, devo realizzare un motore di ricerca in un db con 10 campi tutti di testo senza ne titolo ne descrizione ne percorso, ma voglio che se inserisco un termine di questi 10 campi mi appaiano tutti i campi dell'id. Mi spiego meglio, ho un db con 10 campi: auto, targa, km iniziali, km finali etc etc. Se inserico ad esempio 54645(che è un valore dei km iniziali mi deve comparire:

    mercedes
    ds 345 th
    54645
    54788
    etc etc

    I campi della tabella dati

    Vi riporto il codice che ho usato fin ora e che non riesco a capire dove è l'errore(fin ora immettendo un valore mi da il seach again....in pratica non mi trova niente):

    <html>
    <head>

    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body >

    <%

    Dim prechiave

    Dim tipo

    prechiave=request.querystring("form_chiave")

    tipo=request.querystring("tipo")
    if tipo="tutte" then

    change="%'and auto like'%"

    chiave=Replace(prechiave," ", change)
    else

    chiave=prechiave

    end if


    Dim iPageSize 'Numero di record da visualizzare

    Dim iPageCount 'Numero di pagine totali che otteniamo dalla query

    Dim iPageCurrent 'Pagina corrente

    Dim strOrderBy 'Parametro in base a cui definire l'ordinamento

    Dim strSQL 'Comando da eseguire

    Dim RS 'Il solito amico Recordset

    Dim iRecordsShown 'Variabile usata per definire i record mostrati

    Dim miastringa 'Variabile utilizzata per la visualizzazione dei risultati

    Dim miastringa2
    Dim miastringa3
    Dim miastringa4
    Dim miastringa5
    Dim miastringa6
    Dim miastringa7
    Dim miastringa8
    Dim miastringa9
    Dim miastringa1

    Dim nuovastringa 'Variabile utilizzata per la visualizzazione dei risultati

    Dim nuovastringa2
    Dim nuovastringa3
    Dim nuovastringa4
    Dim nuovastringa5
    Dim nuovastringa6
    Dim nuovastringa7
    Dim nuovastringa8
    Dim nuovastringa9
    Dim nuovastringa1

    ' Imposto il numero di record visualizzati

    iPageSize = 10

    If Request.QueryString("page") = "" Then

    iPageCurrent = 1

    Else

    iPageCurrent = CInt(Request.QueryString("page"))

    End If

    If Request.QueryString("order") = "" Then

    strOrderBy = "id"

    Else

    strOrderBy = Request.QueryString("order")

    End If

    Dim Conn

    Set Conn = Server.CreateObject("ADODB.Connection")

    conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("mdb-database/db1.mdb")

    Set rs = Server.CreateObject("ADODB.Recordset")

    sql = "SELECT * FROM dati where auto like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where targa like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where data like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where triver like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where descriziones like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where orac like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where orar like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where kmi like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where kmf like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"
    sql = "SELECT * FROM dati where statoa like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"



    RS.Open sql, conn, adOpenKeyset

    RS.PageSize = iPageSize

    RS.CacheSize = iPageSize

    iPageCount = RS.PageCount
    Dim totale
    totale = rs.recordcount
    If iPageCurrent > iPageCount Then iPageCurrent = iPageCount

    If iPageCurrent < 1 Then iPageCurrent = 1
    If iPageCount = 0 Then

    response.redirect("search_again.htm")

    Else

    RS.AbsolutePage = iPageCurrent
    %>
    <p align=“center”><font face="verdana" color="cc0000"> La ricerca ha prodotto <% = totale %> risultati</font></p>
    <%

    iRecordsShown = 0

    Do While iRecordsShown < iPageSize And Not RS.EOF

    %>


    <%



    miastringa = RS("auto")



    nuovastringa = Mid( miastringa, 1, 200)



    response.write(nuovastringa)
    %>



    <%

    miastringa2 = RS("targa")



    nuovastringa2 = Mid( miastringa2, 1, 200)


    response.write(nuovastringa2)
    %>

    <%

    miastringa3 = RS("data")



    nuovastringa3 = Mid( miastringa3, 1, 200)


    response.write(nuovastringa3)
    %>

    <%

    miastringa4 = RS("triver")



    nuovastringa4 = Mid( miastringa4, 1, 200)


    response.write(nuovastringa4)
    %>

    <%

    miastringa5 = RS("descriziones")



    nuovastringa5 = Mid( miastringa5, 1, 200)


    response.write(nuovastringa5)
    %>

    <%

    miastringa6 = RS("orac")



    nuovastringa6 = Mid( miastringa6, 1, 200)


    response.write(nuovastringa6)
    %>

    <%

    miastringa7 = RS("orar")



    nuovastringa7 = Mid( miastringa7, 1, 200)


    response.write(nuovastringa7)
    %>

    <%

    miastringa8 = RS("kmi")



    nuovastringa8 = Mid( miastringa8, 1, 200)


    response.write(nuovastringa8)
    %>

    <%

    miastringa9 = RS("kmf")



    nuovastringa9 = Mid( miastringa9, 1, 200)


    response.write(nuovastringa9)
    %>

    <%

    miastringa1 = RS("statoa")



    nuovastringa1 = Mid( miastringa1, 1, 200)


    response.write(nuovastringa1)
    %>


    <%

    iRecordsShown = iRecordsShown + 1

    RS.MoveNext

    Loop

    End If
    RS.Close

    Set RS = Nothing

    Conn.Close

    Set Conn= Nothing

    %>
    <font face="Verdana, Arial, Helvetica, sans-serif" size="2">Pagina <%= iPageCurrent%> di <%= iPageCount%></font>
    <%

    If iPageCurrent <> 1 Then

    %>

    indietro

    <% end if %>

    <%If iPageCurrent < iPageCount Then

    %>

    avanti &gt;

    <% end if %>
    </p></body>
    </html>

    Grazie mille

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    response.write sql:response.end 
    RS.Open sql, conn, adOpenKeyset
    Posta la query che ti stampa.

    roby

  3. #3
    Scusa ma posso Farti una domanda ?
    A cosa servono tutte quelle SQL in sequenza nel tuo codice
    visto che inizializzano solo la variabile sql.

    Ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    36

    abbiate pazienza

    scusa roby72, sono un novello in asp
    ho sostituito la riga che mi hai dato in grassetto con quella sotto(mi sa che ho sbagliato!!!) e mi da questa dicitura:

    SELECT * FROM dati where statoa like '%ciao%' ORDER BY id DESC;

    dove "ciao" è la parola che ho messo da cercare

    che devo fare?....aiuto!!!!!!

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Con le query che hai scritto tu, visto che si chiamano tutte allo stesso modo, legge solo l'ultima, tanto è vero che la parola "ciao" la va a cercare SOLO nel campo "statoa" che corrisponde appunto all'ultima query.
    Se infatti inserissi nel form di ricerca una parola contentuta nel campo "statoa" lo script dovrebbe funzionarti.
    Per fare quello che vuoi tu devi mettere i singoli campi con la OR all'interno di un'unica SQL.
    Te la comincio:

    codice:
    sql = "SELECT * FROM dati where auto like '%"&chiave&"%' OR targa like '%"&chiave&"%' OR data like '%"&chiave&"%' OR ....... ORDER BY " & strOrderBy & " DESC;"
    Roby

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    36

    niente da fare!!!

    ho inserito la riga che mi dicevi yu:

    ------------------------------------------------------------------
    sql = "SELECT * FROM dati where auto like '%"&chiave&"%' OR targa like '%"&chiave&"%' OR data like '%"&chiave&"%' OR triver like '%"&chiave&"%' OR descriziones like '%"&chiave&"%' OR orac like '%"&chiave&"%' OR orar like '%"&chiave&"%' OR kmi like '%"&chiave&"%' OR kmf like '%"&chiave&"%' OR statoa like '%"&chiave&"%' ORDER BY " & strOrderBy & " DESC;"

    response.write sql:response.end
    RS.Open sql, conn, adOpenKeyset
    -----------------------------------------------------------------


    non mi viene uffffffff

    scusami ma non so che pesci prendere

  7. #7
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ok, ma questa

    response.write sql:response.end

    quando la levi?



    Roby

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    36
    ho levato
    ---------------------------------
    response.write sql:response.end
    ----------------------------------

    ma mi viene sempre fuori:

    SELECT * FROM dati where auto like '%gialla%' OR targa like '%gialla%' OR data like '%gialla%' OR triver like '%gialla%' OR descriziones like '%gialla%' OR orac like '%gialla%' OR orar like '%gialla%' OR kmi like '%gialla%' OR kmf like '%gialla%' OR statoa like '%gialla%' ORDER BY id DESC;

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    36

    tutto okkkkkkkkk

    grazie milleeeeeeeeeeeeeee!!!!!!!!!!!!!!!!!!!!

  10. #10
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Lo sai a che serviva quella riga vero?

    Roby

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.