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
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
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
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.
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";
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.