Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,179

    query mysql con parole con spazi

    Ciao a tutti,
    ho un problema durante una query con db mysql.
    codice:
    sql = "SELECT * FROM Prodotto where Descrizione = '%" & request.form("seleziona") & "%'"
    Dove il campo form "selezione" è un testo così: AREA(uno spazio)-(due spazi)PROVA
    va in errore
    Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

    Mentre se passo il testo così, togliendo uno spazio: AREA(uno spazio)-(uno spazio)PROVA
    la query viene elaborata.
    Come posso ovviare al problema?
    Perchè può capitare che anche altre voci possono contenere più spazi
    Grazie
    G.

  2. #2
    Moderatore di XHTML e HTML L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    18,783
    dipende da che cosa ritieni importante per la ricerca e dal livello di affinamento. quello che hai descritto non è un problema (a parte non aver previsto l'errore a livello di scripting). è un semplice fatto: quello che cerchi non esiste.

    se il problema è solo impedire che si invii un valore con due spazi allora puoi giocare coi replace per pulire il valore

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,179
    Io vorrei poter cercare anche parole con spazi come quella dell'errore.
    Nel db non è che non esiste quello che cerco, quello che cerco è proprio: AREA(uno spazio)-(due spazi)PROVA
    che nel db è scritta così con gli spazi indicati, quindi esiste perchè non la trova?

  4. #4
    Moderatore di XHTML e HTML L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    18,783
    sicuro che esista? a guardare il risultato non si direbbe.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,179
    è questo il problema che è presente così come indicato: AREA - PROVA
    uno spazio tra AREA e trattino e doppio spazio tra trattino e PROVA
    come dicevo su se invece del doppio spazio tra trattino e PROVA metto anche uno spazio, cioè uno prima e uno dopo modificandolo nel db tutto funziona correttamente
    modificando anche la query senza %
    Ultima modifica di djjunior; 09-01-2019 a 23:33

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,179
    forse ho trovato il problema
    è possibile che la select (nella pagina precedente) dove si seleziona la voce AREA - PROVA
    (uno spazio tra AREA e trattino e doppio spazio tra trattino e PROVA)
    tolga il secondo spazio e quindi la query non trova la parola cercata proprio per quello spazio mancante?
    Perchè ho controllato la parola che passa dal request form ed è senza il secondo spazio....
    quindi è la select che estrapolando i dati da db legge questa parola togliendo uno spazio.
    come mai?
    Ultima modifica di djjunior; 09-01-2019 a 23:40

  7. #7
    Moderatore di XHTML e HTML L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    18,783
    se all'inizio dici che trovi il risultato con solo uno spazio il resto del discorso non mi pare stia in piedi.

    se cercavi un modo per incasinarti l'hai trovato. non puoi ripulire il tutto da questi "spazi"?

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