Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Запросы Mysql
Форумы портала PHP.SU » » Вопросы новичков » Запросы Mysql

Страниц (1): [1]
 

1. eramar - 11 Августа, 2011 - 13:13:01 - перейти к сообщению
Помогите, пожалуйста.

Делаю запрос
$receive_id=$_SESSION['user_id'];
$query = mysql_query(" select notice_f_send from notice_friend where notice_f_recieve='$receive_id'");
$res = mysql_fetch_array($query);

Теперь в $res у меня есть все id отправителей уведомлений
Есть вторая таблица : profile , мне из нее нужно взять фамилию и имя пользователей с id , которые находятся в $res

$query2 = mysql_query(" select user_name, user_surname from profile where user_id='$res[notice_f_send]'");
$res2 = mysql_fetch_array($query2);
возьмется только одна запись? как мне забрать все имена и фамилии у всех id ? помогите, пожалуйста, совсем запутался!
2. Мелкий - 11 Августа, 2011 - 13:30:59 - перейти к сообщению
eramar пишет:
Теперь в $res у меня есть все id отправителей уведомлений

Только если вернулась одна строка.

eramar пишет:
Есть вторая таблица : profile , мне из нее нужно взять фамилию и имя пользователей с id , которые находятся в $res

CODE (SQL):
скопировать код в буфер обмена
  1. SELECT user_name, user_surname FROM notice_friend JOIN profile ON(user_id=notice_f_recieve) WHERE notice_f_recieve='$receive_id

Если верно понимаю структуру ваших таблиц.

Все записи:
PHP:
скопировать код в буфер обмена
  1. $q = mysql_query(/**/);
  2. while($row = mysql_fetch_assoc($q)) {
  3. //в $row доступны поля текущей записи
  4. }
3. eramar - 11 Августа, 2011 - 13:38:43 - перейти к сообщению
Немного не так

в таблице notice_friend 3 поля:
notice_f_id
notice_f_send - id пользователя который послал запрос на добавление в друзья
notice_f_recieve - id пользователя которому послали запрос на добавление в друзья


$receive_id=$_SESSION['user_id'];
$query = mysql_query(" select notice_f_send from notice_friend where notice_f_recieve='$receive_id'");
$res = mysql_fetch_array($query);

тут я получаю список всех id которые хотят добавить $receive_id=$_SESSION['user_id'] в друзья.
Теперь мне нужно получить имена и фамилии тех, кто хочет добавить $receive_id$_SESSION['user_id'] в друзья. Имя (user_name) , Фамилия (user_surname), user_id хранятся в таблице profile . Помогите, пожалуйста, правильно вытянуть эту информацию Улыбка
(Добавление)
все получилось, спасибо :

$query2 = mysql_query(" select user_name, user_surname, user_id from profile join notice_friend on(user_id=notice_f_send) WHERE notice_f_recieve='$receive_id'");

while( $res2 = mysql_fetch_assoc($query2) ){
?>

<div><a href="page.php?id=<? echo $res2['user_id']; ?>"><?php echo $res2['user_name']; echo " "; echo $res2['user_surname']; ?></a> хочет добавить вас в друзья</div>
<?php }?>

 

Powered by ExBB FM 1.0 RC1