Ну вы вообще ребята! Все можно сделать если знаешь как) Сразу видно frontend разработчики советуют...
Смотри, так или иначе ты все равно обращаешься к файлу, этот файл должен каким либо образом знать о данной функции. Иначе как я делаю, создаю файл, например: gensite.php. Файл содержит следующее:
function search_city(){
print_r('1111');
}
if(!empty($_REQUEST)){
if(function_exists($_REQUEST['action'])){
call_user_func($_REQUEST['action']);
}
die();
}
Ну, только осталось в data при вызове ajax (post) добавить еще один параметр: action=search_city.
То есть функция call_user_func спасет тебя.
Если название функции передается в textarea то просто придумай сепаратор для них и вызывай action=$('#area').val()
тут тогда explode('separator',$_REQUEST['action']) и циклом проверяешь сначала на существование такой функции потом уже вызов функции... Все просто)))