buongiorno e buona domenica.
sto realizzando un piccolo motore di ricerca interno con la possibilità di ricercare in più campi:
-titolo
-testo
-sezione
-categoria
ho creato un piccolo form:
Codice PHP:
<form name="articoli" action="<?php $_SERVER['PHP_SELF']; ?>" method="post">
<table>
<tr>
<td>[b]Cerca in:[/b]</td>
<td></td>
</tr>
<tr>
<td>Titoli:</td>
<td><input type="checkbox" name="titolo" value="ON" /></td>
</tr>
<tr>
<td>Testo:</td>
<td><input type="checkbox" name="testo" value="ON" /></td>
</tr>
<tr>
<td> Sezioni:</td>
<td><input type="checkbox" name="sezione" value="ON" /></td>
</tr>
<tr>
<td>Categorie:</td>
<td><input type="checkbox" name="categoria" value="ON" /></td>
</tr>
<tr>
<td>
<input type="text" name="cerca" value="" size="50" />
</td>
<td>
<input type="submit" value="Cerca" name="btn_cerca" />
</td>
</tr>
</table>
</form>
poi farei un funzione di ricerca del genere:
Codice PHP:
function cercaArticolo($var) {
global $config;
try {
$result = $config->getPdo()->query("SELECT........
WHERE articoli.pubblicato = 1
AND (articoli.articolo_titolo LIKE '%" . $var . "%' OR articoli.articolo_testo LIKE '%" . $var . "%' OR sezioni.sezione_nome LIKE '%" . $var . "%'
OR categorie.categoria_nome LIKE '%" . $var . "%') ORDER BY articolo_data DESC");
return $result;
} catch (Exception $e) {
die($e->getMessage());
}
}
a parte il fatto che nn so se sto sulla strada giusta, ma in caso come potrei dirgli di attivare solo i LIKE corrispondenti alle checkbox selzionate??