Сложное соединение codeigniter, только если строки не существуютPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Сложное соединение codeigniter, только если строки не существуют

Сообщение Anonymous »

Я делаю приложение для знакомств, очень похожее на Tindler. Пользователям могут нравиться или не нравиться другие пользователи, и если двум пользователям нравится друг другу, они получают возможность общаться друг с другом в чате. В настоящее время создаю запрос для случайного извлечения случайного профиля и одной из их фотографий:

Код: Выделить всё

$data = $this->db
->select('users.id,display_name,city,state,gender,users_pictures.picture')
->join('users_pictures','users_pictures.user_id = users.id')
->order_by('id','RANDOM')
->limit(1)
->where(array('users.approved'=>1,'users_pictures.approved'=>1))
->where(array('users.id !='=>$user_id))->get('users')->result_array();
И вот тут я запутался. У меня есть таблица лайков_не нравится, которая состоит из user_id, Foreign_user_id и event_type (нравится, не нравится).

Если вам уже не понравился или понравился пользователь, я не хочу, чтобы он появлялся в моих результатах. Единственный способ справиться с этим, который я могу придумать, - это выполнить второй запрос, который проверит это, а затем выполнить еще один «случайный» запрос, если они вам уже понравились/не понравились, чтобы вы видели только тех пользователей, которых еще не оценили. Есть ли лучший способ?

Любая помощь очень ценится :)

Подробнее здесь: https://stackoverflow.com/questions/166 ... dont-exist
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»