mm Yo te recomendaría usar busquedas de texto completo (FULL TEXT search) .. como puedes ver en este tutorial:
http://www.mysql-hispano.org/page.php?id=15
Ese sistema de busquedas indexadas de campos de texto ya incorpora el hecho de entregar los resultados por ese criterio .. El tema de los "hits" los tendrías que trabajar aparte . .Pero todo esto principalmente en "SQL" no en PHP ... (por si tienes más dudas ... avisa y movemos el mensaje al foro de "Base de datos").
Un saludo,