Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794

    Sempre problemi con ricerca full text

    Ragazzi aiutatemi mi sto scervellando.. Ma perchè mi dà errori nella query?? Sembra tutto ok... Ve la posto:

    $query = "SELECT * FROM tabella WHERE MATCH(campo1,campo2) AGAINST('$ricerca' IN BOOLEAN MODE)";

    campo1 e campo2 sono indicizzati FULLTEXT

  2. #2
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    prova a stampare la query, vedi cosa ti stampa:


    $query = "SELECT * FROM tabella WHERE MATCH(campo1,campo2) AGAINST('$ricerca' IN BOOLEAN MODE)";

    echo $query;

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    Ho stampato la query e il risultato è:
    SELECT * FROM tabella WHERE MATCH(campo1,campo2) AGAINST('ciao' IN BOOLEAN MODE)
    ciao è un valore recuperato nella variabile $ricerca


    Mi dà questo errore:
    Query non valida: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

  4. #4
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    prova a mettere gli spazi:


    $query = "SELECT * FROM tabella WHERE MATCH (campo1,campo2) AGAINST ('ciao' IN BOOLEAN MODE) ";

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    Niente, mi dà sempre lo stesso errore... Sto diventando pazzo.

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    HO RISOLTO!!
    Però se scrivo così:
    $query = "SELECT * FROM tabella WHERE MATCH (campo1,campo2) AGAINST ('*$ricerca*' IN BOOLEAN MODE)";

    mettendo nel criterio di ricera *$ricerca* e cerco parole che iniziano per.. me le trova ma se metto parole che finiscono o al centro abbiano i caratteri che inserisco e: voglio cercare CASA ma inserisco solo AS o SA, non me le trova e mi dà errore. Non si mette l'asteristo all'inizio e alla fine contemporaneaemente?

  7. #7

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    794
    Ho provato con i criteri di ricerca.
    Ma ho 2 problemi:
    1)se a variabile è vuota, vorrei fare in modo che mi dià tutti i risultati della tabella cosa che non avviene.
    2) usando il criterio '*$ricerca*' non mi trova i record che contengono parole che iniziano per qualsiasi lettera, contengono le parole di $ricerca e finiscono con qualsiasi lettera... Ho provato ad utilizzare anche una cosa del genere: '+$ricerca*' ma niente da fare... Come posso fare? Quale simbolo devo usare?

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.