Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Как заполнить двумерный массив?

Сообщения:  [1-10]   [11-19] 

 
 автор: OLi   (10.07.2011 в 20:03)   письмо автору
 
   для: OLi   (10.07.2011 в 15:43)
 

Тема закрыта - решение нашел

  Ответить  
 
 автор: OLi   (10.07.2011 в 15:43)   письмо автору
 
   для: sl1p   (10.07.2011 в 15:27)
 

Сделал так:
foreach($arr as $id => $parentid)  
  { 
 
      if ($_POST['cat'] == $id) {
                $cat .= '<option selected="selected" value="'.$id.'">->'.htmlspecialchars($parentid[name]).'</option>';
            } elseif($parentid[parentid]==0) {
                $cat .= '<option value="'.$id.'">'.htmlspecialchars($parentid[name]).'</option>';
            }
        
  
    
  } 

Надо как-то проверить на $parentid[name]!==0 и выводить всех "детей" по ходу списка

  Ответить  
 
 автор: sl1p   (10.07.2011 в 15:27)   письмо автору
 
   для: OLi   (10.07.2011 в 14:04)
 

и здесь ещё)

while (($mn = $db->get_row($result)) > 0) {
        
$arr[$row[id]]['parentid'] = $row['parentid']; 
$arr[$row[id]]['name'] = $row['name']; 



$row заменить на $mn

зы. и странное условие какоето в while вы получаете массив с данными и сравниваете его с числом..

  Ответить  
 
 автор: cheops   (10.07.2011 в 14:07)   письмо автору
 
   для: OLi   (10.07.2011 в 14:04)
 

Ну... я про него и говорю - он написан неправильно, в цикле используется переменная с одним именем, а в выводе - с другим.

  Ответить  
 
 автор: OLi   (10.07.2011 в 14:04)   письмо автору
 
   для: cheops   (10.07.2011 в 13:28)
 

Я ведь выше код написал...

  Ответить  
 
 автор: cheops   (10.07.2011 в 13:28)   письмо автору
 
   для: OLi   (09.07.2011 в 23:28)
 

Так у вас в foreach $parentid, а не $par - где-то нужно изменить значение.

  Ответить  
 
 автор: OLi   (09.07.2011 в 23:36)   письмо автору
 
   для: OLi   (09.07.2011 в 23:28)
 

Опишу задачу - надо вывести все элементы массива (name) и при этом делать проверку на parentid>0 если да то выводить сразу name элементов где parentid=id
1 Т-е
2 Bus -->parentid 3
3 Auto
4 Keep

-----
Cписок должен преобразоваться в:
1 Т-е
2 Auto
    - Bus 
3 Keep

  Ответить  
 
 автор: OLi   (09.07.2011 в 23:28)   письмо автору
 
   для: cheops   (09.07.2011 в 19:45)
 

Что-то ничего не вывел:
while (($mn = $db->get_row($result)) > 0) {
        
$arr[$row[id]]['parentid'] = $row['parentid']; 
$arr[$row[id]]['name'] = $row['name'];
        
            
            
        }
        
        foreach($arr as $id => $parentid)  
  { 
  echo "ключ - $id, значение - $par[par], другое значение - $par[name]<br>";
  
  /*    if ($_POST['cat'] == $mn['id']) {
                $cat .= '<option selected="selected" value="'.$mn["id"].'">->'.htmlspecialchars($mn["name"]).'</option>';
            } elseif($mn['parentid']==0) {
                $cat .= '<option value="'.$mn["id"].'">'.htmlspecialchars($mn["name"]).'</option>';
            }
        */
  
    
  } 

  Ответить  
 
 автор: cheops   (09.07.2011 в 19:45)   письмо автору
 
   для: OLi   (09.07.2011 в 19:39)
 

Не обязательно, у вас же не очень много элементов, можно прямо так к ним обратиться по ключам
<?php 
  
foreach($arr as $id => $par
  { 
    echo 
"ключ - $id, значение - $par[par], другое значение - $par[name]<br>"
  } 
?>

  Ответить  
 
 автор: Valick   (09.07.2011 в 19:42)   письмо автору
 
   для: OLi   (09.07.2011 в 19:39)
 

может обрисуете задачу более детально? покажите запрос и расскажите как и что нужно вывести, а то может и не нужны тут лишние телодвижения с массивом.

  Ответить  

Сообщения:  [1-10]   [11-19] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования