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 :: Версия для печати :: Как вывести массив в php
Форумы портала PHP.SU » » Работа с сетью » Как вывести массив в php

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

1. ketovpavel - 15 Ноября, 2014 - 12:26:50 - перейти к сообщению
Использовал скрипт который предоставлен на этой странице: http://forum.php.su/topic.php?fo...ostid=1416046593
Я новичок в php подскажите пожалуйста, как вывести массив в php?
Сразу прошу прощения за копию сообщения просто не хотел создавать тему для этого но всё же что не так в данном коде:
Есть две таблицы в базе данных, 1-я (users) 2-я (subs_comment) мне нужно из обеих таблиц вытащить значение и сравнить их, все работает если использовать echo но как только я хочу использовать массив вне цикла то он его не видит
PHP:
скопировать код в буфер обмена
  1.  
  2. // Получаем E-mail-ы пользователей кто подписан на обновления  
  3.     $sql_subs_comment_id = mysql_query("SELECT * FROM subs_comment"); // Вытаскиваем страницу продукта и автора
  4.     while($ref = mysql_fetch_array($sql_subs_comment_id)){
  5.       $cont_id = trim($ref['cont_id']);
  6.       $auth_id = trim($ref['auth_id']);
  7.      
  8.     // Получаем массив из авторов
  9.       $sql_comm_email = mysql_query("SELECT email FROM users WHERE id = $auth_id AND $cont_id = $product");
  10.       $mass_comm_email = array();
  11.       while ($arr_comm_email = mysql_fetch_assoc($sql_comm_email)){
  12.      
  13.       // Выводим для теста массив на экран # Всё прекрасно выводиться
  14.         echo $mass_comm_email[] = $arr_comm_email['email']."
  15. ";
  16.  
  17.       }
  18.     }
  19.  
  20.   // Подключаем класс для отправки почты
  21.     require_once ('Send_mail.php');
  22.    
  23.   // Отправляем письма подписчикам
  24.     Send_mail::from('robot@site.ru', 'Site.ru')
  25.    
  26.     // Вот сюда надо получить значение массива в таком вот виде
  27.       ->to($toUsers = array(
  28.         array('user@mail.ru', 'Василий'),
  29.             array('user2@mail.ru', 'Андрей')
  30.       ))
  31.     ////////////////////////////////////////////
  32.    
  33.     // ПРОБОВАЛ ТАК: # Но ни чего не подставляется
  34.     //  ->to($mass_comm_email[] = $arr_comm_email['email'])
  35.    
  36.       ->subject('Новый комментарий на сайте Site.ru')
  37.       ->message('Это письмо отправлено автоматически так как Вы подписаны на обновления комментариев
  38. Отписаться: url')
  39.       ->charset('utf-8')
  40.       ->time_limit(30)
  41.       ->content_type(Send_mail::CONTENT_TYPE_HTML)
  42.       ->content_encoding(Send_mail::CONTENT_ENCODING_QUOTED_PRINTTABLE)
  43.       ->send();
  44.  
  45.   // END Отправки письма подписчикам
  46.  
2. Viper - 15 Ноября, 2014 - 12:54:21 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1.  
  2. // Сразу как массив. У вас по запросу видно только email, а не связка email=>username
  3. while ($arr_comm_email = mysql_fetch_array($sql_comm_email)){
  4.         $mass_comm_email[] = $arr_comm_email['email'];
  5. }
  6.  
  7. // В таком вот виде
  8. ->to($mass_comm_email)
3. ketovpavel - 15 Ноября, 2014 - 13:36:49 - перейти к сообщению
Viper да изначально нужно было с именем получать, но сейчас уже хотя бы емайлы получить

Все равно не видит массив
Даже так если делать то приходит (To: Array)
PHP:
скопировать код в буфер обмена
  1.  
  2. ->to(''.$mass_comm_email.'')
  3.  

 

Powered by ExBB FM 1.0 RC1