Задавайте вопросы, мы ответим
Вы не зашли.
Привет всем.
Проблема, наверное, простая, но что-то бьюсь уже пол-утра.
Есть таблица Users (id,login,email,...), есть Users_IP (user_id, ip).
В таблице Users_IP хранятся пары user_id (id из таблицы Users) и ip (значение ip-адреса, с которого был осуществлен доступ).
Поиск по юзерам без учета ip:
select * from Users where login like '123%' and email like '456%'
Теперь побую просто поиск по ip, вот что получилось, но не работает :-(
Отредактированно PostFx (07.09.2009 12:10:55)
Неактивен
А в чем выражается не пработает?
Каков результат запроса
Неактивен
"Не работает" выражается в "Column 'ip' in where clause is ambiguous"
Такой вариант, конечно, работает:
Неактивен
пишите WHERE User_IP.ip='[мой_айпи]';
Неактивен
vasya, большое спасибо, всего то надо было указать имя таблицы.
Оказывается, конструкция "Users_IP.ip AS ip" работает только в сфетченных данных ($row['ip']), для WHERE это не годится.
Неактивен
Конструкция "Users_IP.ip AS ip" смысла не имеет, так как указывает, что колонка ip из таблицы Users_IP используется в запросе под именем ip. Однако имя колонки и так было ip.
А вот если у вас в таблице Users тоже есть поле ip, то непонятно какое из полей вы имеете в виду. Для этого нужно или писать полное имя (включая указание таблицы) Users_IP.ip, или использовать уникальный синоним - Users_IP.ip AS ipx .. WHERE ipx=
Неактивен