Пытаюсь делать через array_push() но не знаю как это правильно сделать именно для многомерного массива.
Сам массив выглядит следующим образом:
$tablica = array(array("id"=>$_POST['id'],"name"=>$_POST['name'],"count"=>$_POST['count'],"cost"=>$_POST['cost']),);
Данные передаются методом "POST" из WEB формы.
На строку:
$tablica = array_push($tablica, array("id"=>$_POST['id'],"name"=>$_POST['name'],"count"=>$_POST['count'],"cost"=>$_POST['cost']));
ругается (Warning: array_push() expects parameter 1 to be array, null given in Z:\home\localhost\www\phptest\submit.php on line 4)
В чем ошибка?
Спустя 11 минут, 7 секунд (26.02.2010 - 14:32) sergeiss написал(а):
И зачем создавал 2 темы в разных разделах?
PS. И еще. Используй тэги оформления кода. Намного лучше воспринимается подствеченный код.
PS. И еще. Используй тэги оформления кода. Намного лучше воспринимается подствеченный код.
Спустя 18 минут, 58 секунд (26.02.2010 - 14:51) stepan написал(а):
Разве не вариант так:
$tablica[] = array("id"=>$_POST['id'],"name"=>$_POST['name'],"count"=>$_POST['count'],"cost"=>$_POST['cost']),);
Спустя 27 минут, 29 секунд (26.02.2010 - 15:19) denis.olenin написал(а):
Цитата (sergeiss @ 26.02.2010 - 11:32) |
И зачем создавал 2 темы в разных разделах? |
Прошу прощения. Подзаложал малость
Спустя 6 минут, 18 секунд (26.02.2010 - 15:25) denis.olenin написал(а):
Цитата (stepan @ 26.02.2010 - 11:51) |
Разве не вариант так:$tablica[] = array("id"=>$_POST['id'],"name"=>$_POST['name'],"count"=>$_POST['count'],"cost"=>$_POST['cost']),); |
Спасибо заработало. Сразу вопрос. Как теперь вывести весь масив?
Делаю так:
for ($i=0; $i<count($tablica); $i++)
echo "{$tablica[$i][id]} | {$tablica[$i][name]} | {$tablica[$i][count]} | {$tablica[$i][cost]}<br>";
Отображает только одну строку. Почему так?
Спустя 4 минуты, 3 секунды (26.02.2010 - 15:29) sergeiss написал(а):
Для вывода данных из массива лучше пользоваться циклом foreach. Внутри цикла можно будет добраться до любого вложенного элемента.
Спустя 1 минута, 17 секунд (26.02.2010 - 15:30) stepan написал(а):
foreach ( $tableca as $name => $value )
echo $value['id'].'|'.$value['name'].'|'.$value['count'].'|'.$value['cost'];
Спустя 5 минут, 6 секунд (26.02.2010 - 15:35) denis.olenin написал(а):
Цитата (stepan @ 26.02.2010 - 12:30) |
foreach ( $tableca as $name => $value ) |
Аналогично. Только одна строка отображается.
Спустя 3 минуты, 40 секунд (26.02.2010 - 15:39) sergeiss написал(а):
А сколько их там должно быть, строк-то?
Что покажет
Что покажет
echo count( $tablica); // ??? какой результат
Спустя 2 минуты, 43 секунды (26.02.2010 - 15:42) stepan написал(а):
denis.olenin Для начала посмотри что у тебя там
вполне вероятно у тебя там одна строка только и есть
echo '<pre>';
var_dump ( $tablica );
echo '</pre>';
вполне вероятно у тебя там одна строка только и есть
Спустя 5 минут, 48 секунд (26.02.2010 - 15:48) denis.olenin написал(а):
Опять я стратил. Там только одна строка. Из-за темных электрических сил, в сессии не сохраняется переменная (т.е. массив $tablica). Спасибо за быстрое решение моей проблемы. Буду создавать тему в разделе о сессиях
Спустя 55 минут, 40 секунд (26.02.2010 - 16:43) denis.olenin написал(а):
Продолжение темы:
http://phpforum.ru/index.php?act=ST&f=103&t=26027
http://phpforum.ru/index.php?act=ST&f=103&t=26027