Как вывести данные из связанной таблицы?
В php залез совсем недавно, поэтому навыков пока нет совсем. Объясните как это можно сделать, пожалуйста) Создал страницу авторизации, и страницу юзера где выводиться информация из таблицы 'users', мне нужно чтобы из связанной таблицы 'fond' выводилась дополнительная информация.
Есть таблица users, где у пользователя выводиться почта, имя, и тд.
Есть таблица fond, где у юзера есть нужный столбец 'fond' - вот его и нужно выводить на страничке юзера. 



Ответы (3 шт):
Копай в сторону изменения sql запроса.
Нужно запрос SELECT поменять на что то вроде этого SELECT * FROM users,fond WHERE то что там сейчас написано AND users.id = fond.id_users
Переменную $user в var_dump сделай посмотри как будет выглядеть массив с двумя таблицами и сразу присваивай значения в session. Это в кратце. Лучше потренируйся например в phpmyadmin в выполнении sql запросов, там более наглядно все увидишь.
mysqli_fetch_assoc() не выполняют два раза, он как бы выбирает значение из результирующего набора $check_user, то есть если в ответе БД содержится 1 строка, то после первого mysqli_fetch_assoc() в $check_user будет пусто.
Похоже тебе нужен такой запрос
SELECT * FROM users LEFT JOIN fond ON users.id=fond.id_users
WHERE email='[email protected]' AND password=123
Больше информации, что такое JOIN визуально показано здесь https://stackoverflow.com/questions/17946221/sql-join-and-different-types-of-joins
Пример работы запроса https://phpize.online/
CREATE TABLE IF NOT EXISTS `users` (
`id` int NOT NULL AUTO_INCREMENT,
`email` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB DEFAULT CHARSET = latin1;
INSERT INTO `users` (`id`, `email`, `password`)
VALUES
(1, '[email protected]', '123');
INSERT INTO `users` (`id`, `email`, `password`)
VALUES
(2, '[email protected]', '123');
CREATE TABLE IF NOT EXISTS `fond` (
`id` int NOT NULL AUTO_INCREMENT,
`id_users` int NOT NULL,
`summa` int NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = InnoDB DEFAULT CHARSET = latin1;
INSERT INTO `fond` (`id`, `id_users`, `summa`)
VALUES
(null, '1', '50000');
//php
$query = "SELECT * FROM users WHERE email='[email protected]' AND password=123";
$result = $mysqli->query($query);
$row = $result->fetch_assoc();
print_r($row);
$query = "SELECT * FROM users LEFT JOIN fond ON users.id=fond.id_users
WHERE email='[email protected]' AND password=123";
$result = $mysqli->query($query);
$row = $result->fetch_assoc();
print_r($row);
$query = "SELECT * FROM users LEFT JOIN fond ON users.id=fond.id_users
WHERE email='[email protected]' AND password=123";
$result = $mysqli->query($query);
$row = $result->fetch_assoc();
print_r($row);
//вывод
// Array
// (
// [id] => 1
// [email] => [email protected]
// [password] => 123
// )
// Array
// (
// [id] => 1
// [email] => [email protected]
// [password] => 123
// [id_users] => 1
// [summa] => 50000
// )
// Array
// (
// [id] =>
// [email] => [email protected]
// [password] => 123
// [id_users] =>
// [summa] =>
// )