Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Discussione: Problema usando like

  1. #1

    Problema usando like

    Salve a tutti:

    codice:
    qrstr = "index.asp?nome=giorni%20strani"
    
    sql = "Select * from tbTitoli where link LIKE '%"&qrstr&"%'"
    anche nella variabile qrstr ho il segno % , che va a sballarmi tutta la query, come devo fare per evitare questo inconveniente???

    grazie, ciao.

  2. #2

    Re: Problema usando like

    Originariamente inviato da DarioMarco
    Salve a tutti:

    codice:
    qrstr = "index.asp?nome=giorni%20strani"
    
    sql = "Select * from tbTitoli where link LIKE '%"&qrstr&"%'"
    anche nella variabile qrstr ho il segno % , che va a sballarmi tutta la query, come devo fare per evitare questo inconveniente???

    grazie, ciao.
    non basta fare

    qrstr = "index.asp?nome=giorni strani"

    ????

    spiegatevi bene

  3. #3
    no, perchè in realtà la variabile qrstr sarebbe una Request.QueryString, e quindi va a prelevarmi anche i caratteri strani (unicode mi pare?!?).

    perdona la mia ambiguità, ma era per semplificare al massimo l'esempio.

  4. #4
    usa server.urlencade
    così ti risolvi i problemi.

    ps per il settaggio non sono molto esperta però se la cerchi non hai problemi ad utilizzarla

  5. #5
    thnx, ho provato, ma putroppo, nel mio db, il record è registrato con la percentuale (giorni%20strani), facendo l'urlencode, verrà trasformato in giorni+strani, e non me lo trova nel db.
    Avevo sentito parlare dell'asterisco, ma non so usarlo...


  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133

    Re: Re: Problema usando like

    Prova cosi:
    Codice PHP:
    qrstr "index.asp?nome=giorni strani"

    sql "Select * from tbTitoli where link LIKE '%"&server.HTMLEncode(qrstr)&"%'" 
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    ok, thnx, perdona la mia eloquenza, solo che adesso sorge l'ultimo problema: nella querystring posso avere caratteri come la ò o la ì nonchè l'apice.

    Per tutte le altre querystring, funziona.

    che fare???

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    con le accentate quale il problema la codifica?
    Prova ad inserire ad inizio pagina
    Codice PHP:
    <%Response.CharSet "ISO-8859-1"%> 
    per l'apice ' fai replace:
    Codice PHP:
    <%codifica Replace(qrstr"'""''")%> 
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    ho provato, perdonami, ma nonfunziona, con o senza Charset, fa lo stesso, per il problema dell'apice, ok, risolto.
    provo a postarti qualche test, sperando che tu mi possa megli aiutare:

    cambiando anche la querystring
    nel database ho presente nel campo titolo, il record "Valle Lum%ECa"
    codice:
    Response.CharSet = "ISO-8859-1"
    
    qrstr = "?nome=Valle Lum%ECa" //Valle Lumìa
    
    Response.write (qrstr) // dà come risultato: Valle+Lum%ECa // ok, si può fare se non fosse per il carattere %
    
    qrstr = Server.Urlencode(qrstr)
    
    Response.write (qrstr) // da come risultato: Valle+Lum%26%23236%3Ba
    
    qrstr = Server.Htmlencode(qrstr)
    
    Response... // da come risultato: Valle Lumìa -- ma non è presente nel db
    Spero di essermi spiegato bene, purtroppo non so fare di meglio, ne dal punto di vista programmativo, ne da quello esplicito ;P


  10. #10
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Anche per questi motivi si cerca di non inserire accentate % <> nel database, pertanto se una tabella chiusa (tipo comuni, frazioni, etc...) modifica a mano la tabella sostituendo le accentate con il relativo carattere ISO-8859-1 http://www.w3schools.com/tags/ref_entities.asp e togliendo spazi e tutti quei caratteri "strani" se è una tabella con inserimento/gestione lato utente (tipo iscrizioni, schede, etc..) lato client (col javascript limita al solo inserimento di lettere e numeri) per le accentate prima del INSERT INTO in tabella fai il replace delle accentate con ISO-8859-1
    Prova anche a mettere un link alla pagina pubblica.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.