Visualizzazione dei risultati da 1 a 5 su 5

Discussione: query (var o var) like

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    257

    query (var o var) like

    Cari amici,
    ho difficoltà a fare una query del genere
    $query = "SELECT * FROM news WHERE (autore='$autore' or destinatario='$destinatario') LIKE '%$search%' ORDER BY id DESC";

    ma secondo voi è scritta bene? A me va in errore

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    257
    in pratica poichè ad un utente faccio vedere solo dove
    autore='$autore' or destinatario='$destinatario'

    vorrei che la ricerca avvenisse solo su quello che è abilitato a vedere

  3. #3
    ti manca il campo su cui fare la ricerca LIKE.

    codice:
    WHERE (autore = '$autore' or destinatario = '$destinatario')
               AND campo_mancante LIKE '%$search%'

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    257
    grazie per la risposta. Funziona
    Ma se ne faccio una così è anche giusta?

    Codice PHP:
    "SELECT * FROM news WHERE (autore = '$autore' or destinatario = '$destinatario') AND autore LIKE '%$search%' or (autore = '$autore' or destinatario = '$destinatario') AND destinatario LIKE '%$search%' ORDER BY id DESC"

  5. #5
    direi che non ha senso.

    se cerchi un autore od un destinatario in modo preciso (autore = '$autore') non ha nessun senso cercare poi autore con i caratteri jolly (autore LIKE '%$search%')

    E sopratutto l'uso eccessivo di OR ... alla fine ti arriva di tutto e di piu'. Prova a fare:

    where concat(autore, destinatario) LIKE '%$search%'

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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