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 Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Faab
Отправлено: 20 Июля, 2012 - 07:08:36
Post Id


Гость


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


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




Следующими действиями я создаю простой массив.

PHP:
скопировать код в буфер обмена
  1. $result = array();
  2. $lessen = mysql_query("SELECT title FROM lessen", $db);
  3. while ($myles = myrowl_fetch_array($lessen))
  4. {
  5. $result[]=$myrow['title'];
  6. };


Создался список

PHP:
скопировать код в буфер обмена
  1.  
  2. $result[0]["title1"]
  3. $result[1]["title2"]
  4. $result[3]["title3"]
  5.  


Прекрасен php когда всё работает. Иду дальше: как подправить функцию, что бы прийти к такому массиву:


PHP:
скопировать код в буфер обмена
  1.  
  2. $result[0][id1]["title1"]["author1"]
  3. $result[1][id2]["title2"]["author2"]
  4. $result[2][id3]["title3"]["author3"]
  5.  


Спасибо
 
 Top
avtor.fox
Отправлено: 20 Июля, 2012 - 08:01:20
Post Id



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


Покинул форум
Сообщений всего: 2083
Дата рег-ции: Март 2012  
Откуда: Воронеж


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




Внимание! У меня огромная просьба не давать ответ сразу. Давайте подтолкнём топикстартера к самостоятельному мышлению Улыбка
 
 Top
Panoptik
Отправлено: 20 Июля, 2012 - 08:07:35
Post Id



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


Покинул форум
Сообщений всего: 2493
Дата рег-ции: Нояб. 2011  
Откуда: Одесса, Украина


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




мне кажется что данный массив не то что нужно
нужно пересмотреть его структуру

avtor.fox пишет:
Внимание! У меня огромная просьба не давать ответ сразу. Давайте подтолкнём топикстартера к самостоятельному мышлению Улыбка
я вроде не нарушаю пока просьбу


-----
Just do it
 
 Top
Faab
Отправлено: 20 Июля, 2012 - 08:10:19
Post Id


Гость


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


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




PHP:
скопировать код в буфер обмена
  1.  
  2. $result = array();
  3.     $lessen = mysql_query("SELECT bla, bla, bla FROM lessen", $db);
  4.    $result=$lessen
  5.  



Так?
(Добавление)
Нет ь функцию while надо оставить что бы перебрал все ряды.
PHP:
скопировать код в буфер обмена
  1.  
  2. $result = array();
  3.     $lessen = mysql_query("SELECT title FROM lessen", $db);
  4.     while ($myles = myrowl_fetch_array($lessen))
  5.     {
  6.     $result[]=$myles;
  7.     };


А получиться точно этот массив?

(Отредактировано автором: 20 Июля, 2012 - 08:15:50)

 
 Top
avtor.fox
Отправлено: 20 Июля, 2012 - 08:14:20
Post Id



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


Покинул форум
Сообщений всего: 2083
Дата рег-ции: Март 2012  
Откуда: Воронеж


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




Faab пишет:
Так?

И что Вы сделали?
Опишите для начала функционал кода.
Для чего нужен массив такого вида - $result[0][id1]["title1"]["author1"] ?

P.S. Если Вы не хотите немного подумать, то скажите сразу. Ответ Вам будет дан непременно Улыбка
 
 Top
Faab
Отправлено: 20 Июля, 2012 - 08:19:45
Post Id


Гость


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


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




Да, вообще учусь работать с массивами. Поэтому цели как таковой нет, но пример дам: хочу из jqury pапрашивать данные, и с помощью jquery их выводить. С листами всё получается. Теперь усложняю задачу.
 
 Top
tuareg
Отправлено: 20 Июля, 2012 - 08:21:03
Post Id


Участник


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


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




Faab пишет:
А получиться точно этот массив?

Не обижайтесь, только. Мне всегда нравится. Я хочу вот это, сделал то-то и то-то у меня получится что я хочу?? Не понял Вот а самому попробовать, и посмотреть что получилось уже лень??
 
 Top
Faab
Отправлено: 20 Июля, 2012 - 08:26:57
Post Id


Гость


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


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




Просто я не умею выводит мномерные массивы на экран, что бы их проверить. Попробывать var_dumb? cчас, просто я знаю, выведит всё непонятно как, типа array{[0][bla][bla]} И гадай, та форма вышла, или не та... Я то вас понимаю, просто вы же видети форму массива.
 
 Top
armancho7777777 Супермодератор
Отправлено: 20 Июля, 2012 - 08:29:56
Post Id



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


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


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




Ну выводите print_rом....
 
 Top
tuareg
Отправлено: 20 Июля, 2012 - 08:33:24
Post Id


Участник


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


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




armancho7777777 пишет:
Ну выводите print_rом....

точнее (нагляднее)
PHP:
скопировать код в буфер обмена
  1.  
  2. echo '<pre>';
  3. print_r($array);
  4. echo '</pre>';
  5.  
 
 Top
Faab
Отправлено: 20 Июля, 2012 - 08:34:44
Post Id


Гость


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


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




var_dump нежно прошептала:

array(3) { [0]=> array(4) { [0]=> string(1) "1" ["id"]=> string(1) "1" [1]=> string(22) "Les 1" ["title"]=> string(22) "Les 1" } [1]=> array(4) { [0]=> string(1) "2" ["id"]=> string(1) "2" [1]=> string(23) "Stap 2" ["title"]=> string(23) "Stap 2" } [2]=> array(4) { [0]=> string(1) "3" ["id"]=> string(1) "3" [1]=> string(32) "Stap3" ["title"]=> string(32) "Stap3" } }


Повтор вижу, а саму форму нет. Пошёл изучать новопредложенную функцию. Ушёл в себя на полчаса..
(Добавление)
[quote=tuareg][/quote]

Первопредложенный вариант оставил на дессерт. Ваш коткий и с конкретным примером спасибо.

Ну вот массивчик то оказался "с душком". Правда какой привет, такой ответ... Чего просили, то получили... А просил я помощи кажется. Да, точно, было дело.
(Добавление)
Хорошо, хоть родскажите: тута можно обойтись без новой функции?
 
 Top
tuareg
Отправлено: 20 Июля, 2012 - 08:52:26
Post Id


Участник


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


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




Вы напишите по простому, что есть что хотите. Можно с примерами. И вам подскажут
 
 Top
avtor.fox
Отправлено: 20 Июля, 2012 - 08:52:53
Post Id



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


Покинул форум
Сообщений всего: 2083
Дата рег-ции: Март 2012  
Откуда: Воронеж


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




Да.
Объясните смысл создания ключевого индекса и порядковый ID записи. Их же можно объединить.
 
 Top
Faab
Отправлено: 20 Июля, 2012 - 08:54:48
Post Id


Гость


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


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




И как Вы объясните повртор? Может это номально?

Array
(
[0] => Array
(
[0] => 1
[id] => 1
[1] => Les 1: Eerste Stappen
[title] => Les 1: Eerste Stappen
)

[1] => Array
(
[0] => 2
[id] => 2
[1] => Stap 2
[title] => Stap 2
)

[2] => Array
(
[0] => 3
[id] => 3
[1] => Stap3
[title] => Stap3
)

)

И почему я не вижу первый ряд - id => 1? Истерика стоит за дверью, и ждёт удобного случая.
 
 Top
tuareg
Отправлено: 20 Июля, 2012 - 09:00:54
Post Id


Участник


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


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




Faab пишет:
Истерика стоит за дверью, и ждёт удобного случая.

Он настал. Просто прежде чем использовать ф-ю, надо бы почитать, что она делает.
mysql_fetch_array вернет два массива.
Первый числовой индекс,второй текстовый вот и получается, что истерика где-то рядом.
А если без шуток, можно использовать mysql_fetch_assoc/mysql_fetch_ro w Или поставить необходимый ключ в mysql_fetch_array


P.S Я бы рекомендовал, перейти на использование mysqli_*

(Отредактировано автором: 20 Июля, 2012 - 09:03:38)

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


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB