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 :: Object of class PDOStatement

 PHP.SU

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


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

> Описание: выборка данных с подстановкой данных из другой таблицы.
Vovan6996
Отправлено: 23 Марта, 2015 - 13:06:39
Post Id


Новичок


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


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




Здравствуйте. Помогите разобраться. Код по идее должен работать так. По ID из таблицы users берется значение столбца Licevoj. По которому из таблицы plata выводятся списки строк схожие со строкой.
Появляется ошибка Catchable fatal error: Object of class PDOStatement could not be converted to string in /var/www/vhosts/norbi-tv.ru/norb i-tv.ru/lk/libs/Data.lib.php on line 133
вот та строка (( $query = $this->db->query("SELECT * FROM `Plata`......)

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.   $data = new data();
  3.  
  4. ?>
  5. <br>
  6. <table width="80%" class="pure-table">
  7.     <thead>
  8.    <tr><th>№</th><th>ЛС</th><th>Баланс</th><th>Cписание</th><th>Начисление</th><th>дата</th></tr>
  9.  
  10.  
  11.     </thead>
  12.     <tbody>
  13.  
  14.     <?PHP echo $data->showUsers($id);  ?>
  15.     </tbody>
  16. </table>
  17.  
  18.  
  19.  

PHP:
скопировать код в буфер обмена
  1. public function showUsers($id){
  2.  
  3. $id = intval($id);
  4.            $Licevoj = $this->db->query("SELECT Licevoj FROM `users` WHERE `id`=$id");
  5.  
  6.  
  7.             $query = $this->db->query("SELECT * FROM `Plata` WHERE `Licevoj` =$Licevoj");
  8.             $return = "";
  9.             while($result = $query->fetch()){
  10.               $return .= "<tr><td>{$result->Nom}</td><td>{$result->Licevoj}</td>
  11.                         <td>{$result->Balance}</td><td>{$result->Spisanie}</td><td>{$result->Nachislenie}</td>
  12.                         <td>".date( $result->DataP)."</td></tr>";
  13.             }
  14.              
  15.             return $return;
  16.          }
  17.  
 
 Top
Faraon-san
Отправлено: 25 Марта, 2015 - 13:05:54
Post Id



Посетитель


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


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




Попробуй это вместо двух запросов:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT * FROM `Plata` AS `p`, (SELECT `u`.`Licevoj` FROM `users` AS `u` WHERE `u`.`id`=$id) AS `tbl` WHERE `p`.`Licevoj` = `tbl`.`Licevoj`

(Отредактировано автором: 25 Марта, 2015 - 13:06:36)

 
 Top
DeepVarvar Супермодератор
Отправлено: 25 Марта, 2015 - 13:27:57
Post Id



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


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


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





Faraon-san пишет:
``````````````````````````
Сделайте это развидеть!!!!1111адинадин
 
 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