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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: хмм, а как тогда вывести?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
event
Отправлено: 23 Марта, 2012 - 22:40:24
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Привет. Улыбка
Есть вот такой запрос:
CODE (text):
скопировать код в буфер обмена
  1. $result = sql_query("SELECT * FROM blog AS b LEFT JOIN users ON users.id = b.owner WHERE b.id = $id") or sqlerr(__FILE__, __LINE__);
  2. $row = mysql_fetch_assoc($result) or bark("Нет записи с таким ID");


Как видите здесь делается LEFT JOIN, он и вызывает проблему. Когда я вывожу например $row['privacy'], он выводит информацию не с той таблицы что нужно, и как быть?
 
 Top
Bio man
Отправлено: 23 Марта, 2012 - 22:58:22
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




PHP:
скопировать код в буфер обмена
  1. $result = sql_query("SELECT `u`.`privacy` AS upriv, `b`.`privacy` AS bpriv, `что то еще`
  2. FROM `blog` b LEFT JOIN `users` u ON `u`.`id` = `b`.`owner` WHERE `b`.`id` = $id") or sqlerr(__FILE__, __LINE__);
  3. $row = mysql_fetch_assoc($result) or bark("Нет записи с таким ID");
 
 Top
biperch
Отправлено: 23 Марта, 2012 - 22:58:29
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 588
Дата рег-ции: Окт. 2009  
Откуда: Днепропетровск


Помог: 8 раз(а)




кароче делайц так как выше написали, черт нуспел

(Отредактировано автором: 23 Марта, 2012 - 22:59:35)

 
 Top
EuGen Администратор
Отправлено: 23 Марта, 2012 - 22:58:37
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




PHP:
скопировать код в буфер обмена
  1. $result = sql_query("SELECT *, blog.privacy AS blog_privacy, users.privacy AS user_privacy FROM blog AS b LEFT JOIN users ON users.id = b.owner WHERE b.id = $id") or sqlerr(__FILE__, __LINE__);
  2. $row = mysql_fetch_assoc($result) or bark("Нет записи с таким ID");
  3. //var_dump($row);


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
event
Отправлено: 23 Марта, 2012 - 23:15:35
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




А почему запрос берет все записы из таблицы users, мне нужно лишь owner для лефт джоина.
(Добавление)
EuGen Ответ от сервера MySQL: Unknown column 'blog.privacy' in 'field list'

А ячейка то существует.
 
 Top
EuGen Администратор
Отправлено: 23 Марта, 2012 - 23:26:35
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




event
Я не заметил того, что у Вас альяс определен на эту таблицу. А чтобы только нужные поля брались, достаточно
PHP:
скопировать код в буфер обмена
  1. $result = sql_query("SELECT b.*, b.privacy AS blog_privacy, users.owner FROM blog AS b LEFT JOIN users ON users.id = b.owner WHERE b.id = $id") or sqlerr(__FILE__, __LINE__);
  2. $row = mysql_fetch_assoc($result) or bark("Нет записи с таким ID");


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
biperch
Отправлено: 23 Марта, 2012 - 23:34:07
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 588
Дата рег-ции: Окт. 2009  
Откуда: Днепропетровск


Помог: 8 раз(а)




бывает и так
CODE (SQL):
скопировать код в буфер обмена
  1.  
  2. SELECT
  3.                    n.nid, n.type, n.title,
  4.                    np.field_program_start_date_value AS start_date, np.field_program_end_date_value AS end_date,
  5.                    np.field_nutrition_program_type_value AS program_type, np.field_nutritionist_uid, np.field_program_daily_cost_value AS daily_cost,
  6.                    np.field_program_diet_type_value AS diet_type, np.field_program_daily_calories_value AS daily_calories  
  7.                      FROM node n
  8.                        INNER JOIN content_type_nutrition_program_request npr ON npr.nid = n.nid
  9.                        INNER JOIN program_subscriptions ps ON ps.request_id = n.nid
  10.                        INNER JOIN content_type_nutrition_program np ON np.nid = ps.program_id
  11.                        INNER JOIN node program_node ON np.nid = program_node.nid
  12.                        WHERE n.uid = %d  
  13.                        AND (npr.field_fulfilled_value = 1 AND np.field_program_active_value = 1
  14.                        AND (CURDATE() >= ps.start_date AND CURDATE() <= ps.end_date))
  15.  
 
 Top
event
Отправлено: 23 Марта, 2012 - 23:35:28
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




вроде все норм, если что я тут напишу)

biperch
да ну нафик такой запрос))

(Отредактировано автором: 23 Марта, 2012 - 23:36:04)

 
 Top
biperch
Отправлено: 23 Марта, 2012 - 23:39:45
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 588
Дата рег-ции: Окт. 2009  
Откуда: Днепропетровск


Помог: 8 раз(а)




это что б страшнее было ))
 
 Top
Мелкий Супермодератор
Отправлено: 24 Марта, 2012 - 08:46:06
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)





event пишет:
да ну нафик такой запрос))

Да ну, запрос-то простой.

К слову, curdate() не кешируется, лучше через PHP вставлять текущую дату.


-----
PostgreSQL DBA
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB