Совет не совсем по теме, но близко к тому. Если хотите реализовать качественный живой поиск, то не рекомендую полагаться на mysql и конструкции вроде
SELECT * from passport WHERE surname LIKE '%$referal%'
Рекомендую познакомиться и начинать как можно скорее использовать более подходящие инструменты вроде Sphinx или Apache Solr. Я лично нахожу Apache Solr более удобным. Ну и совет сразу же использовать его в cloud или кластерном режиме, а не режиме standalone. А поиск по мускулю с помощью LIKE - это от лукавого, пора уже серьезные вещи использовать. Ну и еще совет, вообще не рекомендую mysql использовать. К сожалению книжные полки в магазинах завалены книгами а-ля PHP + MySQl, Оптимизация MySQL и т.д. Говорю к сожалению, потому что на крупных проектах убедился, что хуже MySQL трудно представить другую базу данных. В конце концов, если использование реляционной базы принципиально, то пока база исходников не разрослась и количество селектов и прочих конструкций со всякими мускульными примочками не разрослось, лучше как можно скорее перейдите на PostgreSQL. Ну и не забывайте про кэширование. Нет смысла каждый раз делать LIKE 'блаблабла', если с момента последнего редактирования данных уже куча пользователей делали подобный запрос к базе. Для этого можете использовать например Redis, выбрав в качестве ключа наименование таблицы и закодированное поисковое слово. Удачи!