Поиск по имени фамилии

J2
На сайте с 13.12.2011
Offline
46
434

Здравствуйте делаю поиск пользователей по имени и фамилии. Столкнулся с проблемой.

Код такой:

 list($name, $last_name) = explode(" ", $_POST['searchname']);


$where = array();
$where['member_state'] = 1;
$where['member_id'] = array('neq',$_SESSION['member_id']);
$where['member_last_name'] = array('like','%'.trim($name).'%') or $where['member_truename'] = array('like','%'.trim($last_name).'%');

$memberlist = $model->table('member')->where($where)->limit($limit)->select();
print_r($memberlist);

Суть проблемы:

Когда я ввожу имя все работает, когда ввожу имя и фамилию все работает, когда ввожу фамилию не работает, когда ввожу фамилию и имя тоже не работает.

Подскажите пожалуйста что я делаю не так и как исправить? Заранее благодарен!

https://mallinru.ru/ (https://mallinru.ru/)
totamon
На сайте с 12.05.2007
Offline
437
#1

ну а почему должно работать? у вас проверяется первый аргумент как имя и второй как фамилия, если их поменять то ничего не найдет... так как фамилия будет искаться в имени, а имя в фамилии... добавьте эти же условия через OR только переменные $name и $last_name поменяйте местами, те 4 условия в запросе

Домены и хостинг https://8fn.ru/regru | Дедик от 3000р https://8fn.ru/73 | VPS в Москве https://8fn.ru/72 | Лучшие ВПС, ТП огонь, все страны! https://8fn.ru/inferno | ХОСТИНГ №1 РОССИИ https://8fn.ru/beget
siv1987
На сайте с 02.04.2009
Offline
427
#2

$name = $_POST['search_name'];

$last_name = $_POST['search_last_name'];

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий