Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Apostrofo e LIKE

  1. #1

    Apostrofo e LIKE

    ciao a tutti
    ragazzi io ho questo problema
    ho un form di ricerca ASP con un campo chiamato NOMINATIVO
    quando scrivo il cognome che ne so PIPPO... nella pagina successiva (faccio la request.form) mi trova tutti i nomi che iniziano o che includono PIPPO con questa SELECT :

    strSQL="SELECT * FROM GEST_PRATICHE WHERE Nominativo like '%" & Request.form("Nominativo") & "%' order by Nominativo"

    e fin qui va bene

    quando faccio la ricerca con l'apostrofo esempio:
    D'ACAPITO mi va in errore

    quindi che ho fatto ho messo la solita proprietà REPLACE
    vr_Nominativo=Request.form("Nominativo")
    vr_Nominativo=replace(vr_Nominativo," ' "," ' ' ")

    cosi invece di request.form nella select scrivo vr_nominativo....
    ma non mi trova lo stesso il nome D'ACAPITO

    premesso che nel mio DB D'ACAPITO è scritto cosi D''ACAPITO perchè il caricamento dei dati l'ho fatto sosituendo l'aspostrofo singolo con quello doppio..

    è sbagliata la select con il LIKE????
    mi aiutate????
    grazie mille

  2. #2
    vr_Nominativo=Request.form("Nominativo")
    vr_Nominativo=replace(vr_Nominativo,"'", "''")

    Intanto annulla gli spazi nel replace.

  3. #3
    gli spazi li ho messi qui...solo per far capire come avevo impostato singola apice e doppia apice.......nella pagina asp li ho messi vicini....
    non è quello il problema!!!

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: Apostrofo e LIKE

    Originariamente inviato da pippaccia1971
    premesso che nel mio DB D'ACAPITO è scritto cosi D''ACAPITO perchè il caricamento dei dati l'ho fatto sosituendo l'aspostrofo singolo con quello doppio..
    VVoVe:

    vr_Nominativo=replace(vr_Nominativo," ' ", " ' ' ' ' ")

    Gli spazi li ho messi pure io per vedere il codice, quello che mi sfugge e' perche' tu abbia raddoppiato gli apici nel db

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    perchè quando faccio la insert e devo inserire un nominativo con l'apostrofo mi dà errore... quindi invece che inserire il nome es. D'ACAPITO MARCO , glielo faccio inserire cosi D''ACAPITO MARCO...
    ok????
    non devo fare cosi???

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: Apostrofo e LIKE

    Originariamente inviato da pippaccia1971
    premesso che nel mio DB D'ACAPITO è scritto cosi D''ACAPITO perchè il caricamento dei dati l'ho fatto sosituendo l'aspostrofo singolo con quello doppio..
    Allora non ho capito il messaggio.... cosa e' realmente presente nel db? non come l'hai inserito tu ma come e' attualmente...

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    Originariamente inviato da pippaccia1971
    perchè quando faccio la insert e devo inserire un nominativo con l'apostrofo mi dà errore... quindi invece che inserire il nome es. D'ACAPITO MARCO , glielo faccio inserire cosi D''ACAPITO MARCO...
    ok????
    non devo fare cosi???
    In fase di inserimento lo fai il replace?

  8. #8
    allora x gli inserimenti che avvengono da un form asp...per i nominativi
    faccio il REPLACE
    da singolo apice (es. D'ACAPITO) faccio il doppio APICE (es.D''ACAPITO)
    quindi tutti i nominativi con l'apice che l'utente inserisce nel db ACCESS glieli converto in doppio APICE cosi la non ho problemi nelle select o insert...
    ora il problema si pone nella ricerca...
    quando faccio la ricerca e l'utente scrive es D'ACAPITO io non faccio altro che fare un replace con doppio apice per passare il dato nella SELECT con il LIKE cosi come ho posto all'inizio della discussione...
    capito?

    allora al caricamento faccio cosi : (dopo che l'utente ha inserito il nominativo)
    vr_Nominativo=replace(vr_Nominativo," ' "," ' ' ")
    strSQL="Insert eccc....."


    in lettura faccio cosi, dopo che l'utente ha inserito il nominativo

    vr_Nominativo=Request.Form("Nominativo")
    vr_nominativo=replace(vr_nominativo," ' "," ' ' ")

    strSQL="SELECT * FROM GEST_PRATICHE WHERE Nominativo like '%" & vr_Nominativo & "%' order by Nominativo"

    sbaglio in qualcosa????

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.