Visualizzazione dei risultati da 1 a 2 su 2

Discussione: query di ricerca

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074

    query di ricerca

    Ho un form di ricerca, nel quale l'utente può scegliere sino a quattro diversi tipi di input:
    titolo
    testo
    tag
    area geografica
    Per le ultime due opzioni, l'utente può solo scegliere da una select, mentre per le prime due può digitare una o più parole.
    Nel PHP, dopo essermi accertato che l'utente abbia inserito almeno un criterio di ricerca, faccio la query, così:
    Codice PHP:
    $result mysql_query("SELECT * FROM `news` WHERE `title` LIKE '%$tit%' || `tag` LIKE '%$tag%' || `text` LIKE '%$text%' || `location` LIKE '%$location%' ORDER BY `news_id` DESC"); 
    Però, se - ad es. - mi limito ad inserire soltanto una parola come ricerca, utilizzando il campo titolo, comunque mi restituisce tutti i record del db.
    Ma se le altre variabili sono senza alcun valore definito, perchè mi restituisce tutto?
    E come se nulla fosse equivalente a qualsiasi cosa...
    Dove sbaglio?
    metatad
    graphic & web design

  2. #2
    ovvio perchè tu dici "where like '%%' essendo il campo vuoto e quindi ricerca tutto... devi fare un controllo sui campi compilati e non inserire nella query quelli non compilati...

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.