Вывод массива на печать.

Обсуждение серверного программирования.

Модераторы: Duncon, Yurich

Ответить
Mastkir
Сообщения: 4
Зарегистрирован: 25 янв 2005, 03:42

Просидел целый день:
Где-то в цикле:

$XXX="Arr".$i;
........
........
printf("<td><input type=text name=$XXX value=$tmp></td>");

Потом (в браузере) нажимаю изменить (submit), и хочу теперь вывести
содержание всех полей. Если выводить по-одному, например:
printf("$Arr2"); - то получается, а как вывести весь массив Arr?
Прошу альтернативные варианты решений не предлагать. Я студент, и у меня именно такая задача.
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

1) цикл
2) print_r
Даже самый дурацкий замысел можно воплотить мастерски
Mastkir
Сообщения: 4
Зарегистрирован: 25 янв 2005, 03:42

Считаю должным пояснить:

print_r здесь ничего не выведет.

"Arr".$i - это не совсем массив. Это скоррее названия переменных(Arr0, Arr1, Arr2, ... ), имена которых сохраняет значение очередного поля в таблице:

$XXX="Arr".$i;
printf("<td><input type=text name=$XXX value=$tmp></td>");

Нажимая submit, должно происходить(чего у меня нет пока) замена
таблицы базы данных для переменных (Arr0, Arr1, Arr2, ... ) на их измененные значения. Но для этого мне нужно научится читать значения переменных
Arr0, Arr1, Arr2, и т.д.
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Код: Выделить всё

<input type=text name[]=$XXX value=$tmp>
Даже самый дурацкий замысел можно воплотить мастерски
UUU
Сообщения: 310
Зарегистрирован: 17 фев 2004, 09:27
Откуда: Иваново
Контактная информация:

[quote="Mastkir"]Просидел целый день:
Где-то в цикле:

$XXX="Arr".$i]

Ничего не понимаю.

Поэтому пришлось отквотить все.
насколько я понимаю у тебя в итоге получается:

<td><input type=text name=Arr1 value=1></td>
<td><input type=text name=Arr2 value=1></td>
<td><input type=text name=Arr3 value=1></td>
<td><input type=text name=Arr4 value=1></td>
<td><input type=text name=Arr5 value=1></td>

При нажатии на кнопку сабмит у тебя передаются ненулевые параметры.
На стороне сервера они отлавливаются как:

foreach $each(param())
{
print "Name=$each\tValue=".param($each)."\n";

}
Ответить