Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.07.2011, 11:41   #1
romanet
Пользователь
 
Регистрация: 11.01.2011
Сообщений: 13
По умолчанию Вывод массива в вид работает неправильно

Привет всем нужна ваша помощь уже весь день пишу одну функцию и не могу понять почему она работает некорректно. Суть такова вытягиваю из одной таблицы массив индефикаторив по которым должен пройти выборка из другой таблицы и пишу следующие действия

PHP код:
 public function get_friends_id($friends)
         {
     
$retval = array();
     foreach (
$friends as $frends) {
         
$friends_id $frends['friends_id'];
         
$this->db->where('anccet_id'$friends_id);
         
$query $this->db->get('anccet');
         
$retval[''] = $query->result_array(); 
       
     return 
$retval[''];
   
     }
   
         } 


при розпечатци видно весь маств все гуд однако при выводе данного массива забрасывает ошибками. Я уже пробовал как с указанием индекса массива так и без него. С указанием индекса все работает однако выводит массив лишь по 1 строке. Без указания бросает ошибки мол нет такого массива и данных в нем. Я понимаю что гдето ошыбса но непойму где
romanet вне форума Ответить с цитированием
Старый 06.07.2011, 12:20   #2
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Эмм.. Ничего не понятно.
Но попробуйте так :
Код:
 public function get_friends_id($friends)
         {
     $retval = array();
   
     foreach ($friends as $frends) {
         $friends_id = $frends['friends_id'];
         $this->db->where('anccet_id', $friends_id);
         $query = $this->db->get('anccet');
         array_push($retval,$query->result_array()); 
     }
     return $retval;
   
     }
ssdm вне форума Ответить с цитированием
Старый 06.07.2011, 12:28   #3
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Переменные у вас ужасно как называются.
$friends и $frends - грех не ошибиться при наборе переменной, да и логически не правильно названы.
P.S. Вместо array_push($array,$var) лучше использовать $array[] = $var; . Только что в документации прочитал.
ssdm вне форума Ответить с цитированием
Старый 06.07.2011, 12:34   #4
romanet
Пользователь
 
Регистрация: 11.01.2011
Сообщений: 13
По умолчанию

Цитата:
Сообщение от ssdm Посмотреть сообщение
Переменные у вас ужасно как называются.
$friends и $frends - грех не ошибиться при наборе переменной, да и логически не правильно названы.
P.S. Вместо array_push($array,$var) лучше использовать $array[] = $var; . Только что в документации прочитал.

Относительно переменных есть грешок фантазия не буйная называю как в голову взбредет однако вот печатает весь массы все пашет но когда даю на вывод дает ошибки

Array
(
[0] => Array
(
[0] => Array
(
[anccet_id] => 28
[last_name] =>
[pol] =>
[date_nar] => 0000-00-00
[Kraina] =>
[Oblast] =>
[gorod] =>
[adressa] =>
[tel] => 0
[ulublenni_zanjattja] =>
[ulublenni_games_film_musik] =>
[o_sebe] =>
[img_url] =>
[count_views] => 1
[Znac_zodiac] =>
[semejnoe_polozenie] =>
[status] => Новенький
[section_id] =>
[username] => mua87
)

)

[1] => Array
(
[0] => Array
(
[anccet_id] => 27
[last_name] => Хер
[pol] => мужской
[date_nar] => 1970-01-01
[Kraina] =>
[Oblast] =>
[gorod] =>
[adressa] =>
[tel] => 0
[ulublenni_zanjattja] =>
[ulublenni_games_film_musik] =>
[o_sebe] =>
[img_url] => /uploads/802_0_831f51.jpg
[count_views] => 7
[Znac_zodiac] => Овен
[semejnoe_polozenie] => трот
[status] => Новенький
[section_id] => stosunki
[username] => juryknet
)

)

[2] => Array
(
[0] => Array
(
[anccet_id] => 27
[last_name] => Хер
[pol] => мужской
[date_nar] => 1970-01-01
[Kraina] =>
[Oblast] =>
[gorod] =>
[adressa] =>
[tel] => 0
[ulublenni_zanjattja] =>
[ulublenni_games_film_musik] =>
[o_sebe] =>
[img_url] => /uploads/802_0_831f51.jpg
[count_views] => 7
[Znac_zodiac] => Овен
[semejnoe_polozenie] => трот
[status] => Новенький
[section_id] => stosunki
[username] => juryknet
)

)

[3] => Array
(
[0] => Array
(
[anccet_id] => 27
[last_name] => Хер
[pol] => мужской
[date_nar] => 1970-01-01
[Kraina] =>
[Oblast] =>
[gorod] =>
[adressa] =>
[tel] => 0
[ulublenni_zanjattja] =>
[ulublenni_games_film_musik] =>
[o_sebe] =>
[img_url] => /uploads/802_0_831f51.jpg
[count_views] => 7
[Znac_zodiac] => Овен
[semejnoe_polozenie] => трот
[status] => Новенький
[section_id] => stosunki
[username] => juryknet
)

)


)

вивод делаю так
foreach ($friends_array as $ancet_contetn)
{
echo $ancet_contetn ['last_name'];
}

а и принымаю так $friends_array[] = $this->shortstory_model->get_friends_id($friends);
romanet вне форума Ответить с цитированием
Старый 06.07.2011, 13:22   #5
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
$friends_array[] = $this->shortstory_model->get_friends_id($friends);
ну тогда уж
Код:
$friends_array = $this->shortstory_model->get_friends_id($friends);
Ведь у нас и так массив возвращается.

Что у вас эта функция должна делать ? Возвращаться id друзей ? Тогда нет смысла возвращать массив строк, надо возвращать массив id/
ssdm вне форума Ответить с цитированием
Старый 06.07.2011, 13:39   #6
romanet
Пользователь
 
Регистрация: 11.01.2011
Сообщений: 13
По умолчанию

Цитата:
Сообщение от ssdm Посмотреть сообщение
ну тогда уж
Код:
$friends_array = $this->shortstory_model->get_friends_id($friends);
Ведь у нас и так массив возвращается.

Что у вас эта функция должна делать ? Возвращаться id друзей ? Тогда нет смысла возвращать массив строк, надо возвращать массив id/
Нет просто $friends_array я отправляю на вивод!
romanet вне форума Ответить с цитированием
Старый 06.07.2011, 13:55   #7
romanet
Пользователь
 
Регистрация: 11.01.2011
Сообщений: 13
По умолчанию

Сам сайт разрабаты ваю за принцыпом mcv
romanet вне форума Ответить с цитированием
Старый 06.07.2011, 14:30   #8
mrgrudge
Форумчанин
 
Аватар для mrgrudge
 
Регистрация: 20.02.2010
Сообщений: 229
По умолчанию

а почему бы сразу одним запросом не подтянуть все данные??
аля
SELECT t1.uiser_id,t2.user_name, t2.user_phone FROM table1 t1 JOIN table2 t2 ON t1.user_id = t2.user_key WHERE t1.filed > $value
забере айлишники, имена, телефоны из таблицы 1 и 2 где user_id в таблице 1 совпал с user_key в таблице 2 при учете что в таблице 1 значения в поле field больше того что лежит в $value.

соотвественно что забирать из таблиц и какие при этом условия подпилите под себя.
думай как баг, действуй как баг, и ты найдешь баг )
mrgrudge вне форума Ответить с цитированием
Старый 06.07.2011, 14:55   #9
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
Сообщение от romanet Посмотреть сообщение
Нет просто $friends_array я отправляю на вивод!
Имелось ввиду функция что в первом посте.
ssdm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Неправильно работает запрос Lokos БД в Delphi 7 15.12.2010 06:49
TextRect работает неправильно bbk_serg БД в Delphi 16 10.08.2010 21:11
неправильно работает сортировка Brabus Помощь студентам 1 30.05.2010 14:25
Неправильно работает WinExec? TwiX Общие вопросы Delphi 2 26.11.2009 21:07
Неправильно работает поиск Власов А.С. БД в Delphi 5 12.10.2009 05:59