Я создаю веб-приложение и решил использовать имена таблиц и полей, аналогичные Wordpress, в моем приложении. Под этим я подразумеваю, что у меня есть таблица пользователей и таблица метаданных, похожая на то, как работает Wordpress.
Простите, что я сделал этот вопрос настолько большим, я решил как можно более наглядно описать этот вопрос.
Таблица usermeta имеет следующие значения таблицы:
umeta_id
user_id
meta_key
meta_val
В качестве примера у меня есть следующие данные в моей таблице usermeta;
user_id = 1
meta_key = first_name
meta_value = 'dwayne
user_id = 1
meta_key = фамилия
meta_value = charrington
В моей таблице пользователей у меня есть следующие данные примера;
ID = 1
user_login = admin
user_pass = ui3h423h4o82374
user_email = test@test.com
В основном я хочу использовать следующее соединение, которое вроде бы работает, вроде:
$db = $this->db;
$db->select('wolf_users.ID, wolf_usermeta.user_id AS ID', FALSE);
$db->select('wolf_users.user_login AS user_login', FALSE);
$db->select('wolf_users.user_email AS user_email', FALSE);
$db->select('wolf_users.user_status AS status', FALSE);
$db->select('wolf_usermeta.meta_key AS meta_key', FALSE);
$db->select('wolf_usermeta.meta_value AS meta_value', FALSE);
$db->from('wolf_users');
$db->join('wolf_usermeta', 'wolf_users.ID = wolf_usermeta.user_id', 'left');
$db->where('wolf_usermeta.user_id = wolf_users.ID');
$q = $db->get();
return $q->result_array();
Во-первых: кажется, что result_array возвращает дубликаты данных из моей базы данных (что немного странно), я неправильно отформатировал свое объединение или я что-то упустил, чтобы предотвратить это? возвращение результатов только с использованием $ q-> result (), по-видимому, останавливает возврат дублирующихся данных.
Я использую Dwoo для своих шаблонов, и когда я выводю переменную, которая содержит данные, используя print_r, он не показывает дублирующегося содержимого запроса при использовании запроса, но отображает дублированное содержимое при использовании result_array (почти как это зацикливается в таблице usermeta несколько раз).
Одна из страниц, на которых я использую этот запрос к базе данных, - это страница, на которой перечислены все клиенты в базе данных, а затем получены соответствующие данные из таблицы usermeta. Поэтому мой вопрос заключается в том, как мне получить доступ к данным из обеих таблиц и затем отобразить их в моем приложении, используя foreach в моем шаблоне представления?