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 :: Передача пользователей ajax

 PHP.SU

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


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

> Без описания
antonhristovsky
Отправлено: 15 Мая, 2012 - 21:50:46
Post Id


Новичок


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


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




Здравствуйте. Подскажите, пожалуйста, как мне правильно сделать отображение списка пользователей. У меня есть вид:
CODE (html):
скопировать код в буфер обмена
  1. <title>Поиск</title>
  2.  
  3. <script>
  4.         var user = '1';
  5.  
  6.         $.ajax({
  7.                 type: "POST",
  8.                 data: {user: user},
  9.                 url: "/ajax/poh",
  10.                 dataType: "json",
  11.                 success: function(data)
  12.                 {
  13.                         $("p").prepend(data);
  14.                 }
  15.         })
  16. </script>
  17.  
  18. <p></p>

И /ajax/poh:
PHP:
скопировать код в буфер обмена
  1. public function action_poh()
  2.         {
  3.                 $poh = Arr::get($_POST, 'poh', '');
  4.                
  5.                 $get = DB::select()
  6.                                         ->from('users')
  7.                                         ->execute()
  8.                                         ->as_array();
  9.                 $ma = array();
  10.                 foreach($get as $teg){
  11.                         $ma .= $teg['firstname'] . "<br>";
  12.                 }
  13.                
  14.                 echo json_encode($ma);
  15.         }

Вроде всё работает. Но почему когда выводит пользователей в самом начале пишет "Array"???
CODE (htmlphp):
скопировать код в буфер обмена
  1. ArrayXXX
  2. XXX
  3. XXX
  4. XXX
  5. XXX
  6. XXX
  7. XXX
 
 Top
Мелкий Супермодератор
Отправлено: 15 Мая, 2012 - 21:58:14
Post Id



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


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


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




antonhristovsky пишет:
$ma = array();

Вот поэтому.


-----
PostgreSQL DBA
 
 Top
antonhristovsky
Отправлено: 15 Мая, 2012 - 22:14:02
Post Id


Новичок


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


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




Мелкий а если это убрать, то вообще ни чего не выводится...
 
 Top
ams
Отправлено: 15 Мая, 2012 - 22:18:35
Post Id



Посетитель


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


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




Значит пустая переменная $get
 
 Top
antonhristovsky
Отправлено: 15 Мая, 2012 - 22:25:38
Post Id


Новичок


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


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




amsнет)
 
 Top
DelphinPRO
Отправлено: 16 Мая, 2012 - 05:30:00
Post Id



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


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


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




$ma[] = $teg['firstname'] . "<br>";


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
antonhristovsky
Отправлено: 16 Мая, 2012 - 09:34:02
Post Id


Новичок


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


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




DelphinPRO тоже не помогает)
 
 Top
tuareg
Отправлено: 16 Мая, 2012 - 10:03:43
Post Id


Участник


Покинул форум
Сообщений всего: 1234
Дата рег-ции: Июнь 2010  


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




PHP:
скопировать код в буфер обмена
  1.  
  2. $ma ='';
  3.  foreach($get as $teg){
  4.         $ma .= $teg['firstname'] . "<br>";
  5.  }
  6. echo json_encode(array('result'=>$ma));
  7.  

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var user = '1';
  3.  
  4.         $.ajax({
  5.                 type: "POST",
  6.                 data: {user: user},
  7.                 url: "/ajax/poh",
  8.                 dataType: "json",
  9.                 success: function(data)
  10.                 {
  11.                         $("p").prepend(data.result);
  12.                 }
  13.         })
  14.  
 
 Top
antonhristovsky
Отправлено: 16 Мая, 2012 - 10:10:30
Post Id


Новичок


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


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




tuareg большое спасибо! Радость
 
 Top
Мелкий Супермодератор
Отправлено: 16 Мая, 2012 - 10:11:51
Post Id



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


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


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




antonhristovsky пишет:
а если это убрать, то вообще ни чего не выводится...

Потому что будет нотайс.
+ по виду структуры - это Kohana, которая к тому же перехватит нотайс и выдаст свою страницу ошибки и трассировки.
И в обоих случаях - на выходе валидного JSON не будет.

В общем - при отладке всяких аяксов всегда смотрите на сырой ответ.


-----
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