Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592

    ricerca maiuscole e minuscole

    Ho cercato abbastanza ma non riesco a venirne a capo..
    ho una query di ricerca fulltext.
    ma se cerco una parola in minuscolo non mi restituisce le parole con le maiuscole, nel senso che è case sensitive...
    ho pensato fosse una questione di set di caratteri e di collate ma:
    nella pagina principale di phpmyadmin trovo scritto:
    Set di caratteri MySQL: UTF-8 Unicode (utf8)
    collazione della connessione di MySQL: utf8_general_ci (e questo si può cambiare, classica tendina..)
    le mie colonne, e anche qui ho provato anche cambiando, sono latin1_swedish_ci ma ho anche messo utf8_general_ci ed è lo stesso...

    che devo fare per rendere la ricerca case insensitive??


    ringrazio chiunque mi possa dare una mano..

  2. #2
    Dal manuale di MySQL (http://dev.mysql.com/doc/refman/5.0/...-language.html):

    By default, the search is performed in case-insensitive fashion. However, you can perform a case-sensitive full-text search by using a binary collation for the indexed columns. For example, a column that uses the latin1 character set of can be assigned a collation of latin1_bin to make it case sensitive for full-text searches.
    Hai provato ad effettuare le query tramite console e su un set di dati di prova per verificarne il comportamento?

  3. #3
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    mmhh..
    è da ieri sera che sto cercando e devo dire che ci sono talmente poche cose in rete che ho pensato fosse, e probabilmente lo è, una cosa banale...

    ho provato ed anche phpmyadmin non mi restituisce quello che dovrebbe..
    ho cercato e pensavo fosse una questione di collate, anzi lo è di sicuro, ma pur avendo tutto case insensitive non ne vuole sapere.. non vorrei che in mysql ci fosse una impostazione più in alto di me che gli dice che DEVE ESSERE Case Sensitive..
    non c'entra niente che la ricerca è in boolean mode?
    veramente non so che pesci prendere..

  4. #4
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    pliiiiiiiizzz..

  5. #5
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    mi uppo da solo perchè ho trovato la soluzione..
    tra i campi della query
    Codice PHP:
    SELECT FROM tabella WHERE campo '1' and MATCH(campo1,campo2,campo3AGAINST ('*$cerca*' IN BOOLEAN MODEORDER BY campo ASC 
    campo3 era un campo INT... quindi EVIDENTEMENTE era quello che non andava, perchè rendendolo varchar e alterandolo per il fulltext ora funziona...
    in più quello che non mi funzionava era la ricerca di una parola tipo: Scuola.
    Cioè se scrivo nel campo di ricerca Scuola, mi trova SOLO I CAMPI IN CUI c'è SCRITTO Scuola.
    Se cerco SCUOLA o scuola i risultati sono corretti... io pensavo che CASE-INSENSITIVE fosse veramente CASE-INSENSITIVE, e cioè che Scuola e scuola fosse la stessa cosa....

    La domanda potrebbe essere: se un utente scrive Scuola, come faccio? mi conviene usare una cosa tipo $cerca=strtolower($cerca)?

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