Non c'è niente di difficile nel realizzare un motore di ricerca interno ad un sito.
Basta sapere quali siano le opzioni che dai agli utenti e costruire la query che ne viene fuori.
Per esempio: mettiamo caso che ti interessi l'anagrafica degli iscritti, nel form per la ricerca metterai i campi nome, cognome, città... ecc... e l'utente potrà compilarli tutti o alcuni.
Lo script che fungerà da motore di ricerca dovrà mettere insieme queste informazioni per generare la query.
Codice PHP:
// 1=1 è sempre vera e serve solo a cominciare la clausola where
$query = "SELECT * FROM utenti WHERE 1=1";
if ( isset($_POST['nome']) && trim($_POST['nome']) != "" )
{
// nota lo spazio prima dell'AND, altrimenti si attacca a 1=1 e non funziona
$query .= " AND nome='" . $_POST['nome'] . "'";
}
if ( isset($_POST['cognome']) && trim($_POST['cognome']) != "" )
{
$query .= " AND cognome='" . $_POST['cognome'] . "'";
}
if ( isset($_POST['citta']) && trim($_POST['citta']) != "" )
{
$query .= " AND citta='" . $_POST['citta'] . "'";
}
// e così via per gli altri campi
// infine esegui la query e vedi cosa trova