
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.3] |
![]() |
|
![]() |
![]() |
|
Здрасте!
![]() ![]() <?php $arr=array("hello","world"); ?> <input name="var_name[]" value="<?=$arr[0]?>"> <input name="var_name[]" value="<?=$arr[1]?>"> Одномерный. А если -- многомерный? Отправляем "многомерный" массив: ![]() ![]() <?php $ate = array ("good","bye"); $te = array("hello","temp",$ate); $temp = serialize($te); ?> <input name="var_name" value="<?= $temp ?>" /> Принимаем его: ![]() ![]() <?php $tmp = $_REQUEST['var_name']; $var_css=unserialize($tmp); echo "<pre>"; print_r ($var_css); echo "</pre>"; ?> |
Сообщ.
#2
,
|
|
|
uborshik, ну совсем уж, извините, баян.
Толку от такого не много, значение ни изменить ни получить на клиентской стороне. |
![]() |
Сообщ.
#3
,
|
|
Цитата Pr0[)!9Y @ Толку от такого не много, значение ни изменить ни получить на клиентской стороне. Ну там вроде как можно распарсить.. ![]() Но по поводу баяна согласен... |
![]() |
Сообщ.
#4
,
|
|
Цитата Pr0[)!9Y @ ну совсем уж, извините, баян. Мне щас нужно стало, в Гугле не смог найти - "как отправить многомерный массив из формы". Цитата Pr0[)!9Y @ Толку от такого не много, значение ни изменить ни получить на клиентской стороне. Понятно. Просто я с Joomla, щас работаю: есть несколько компонентов, которые требуют для своего отображения, каждый свой стиль, при этом не нарушая общего стиля сайта. Для этого (я сделал так), эти компоненты регистрируют названия своих файлов *.CSS в глобальном массиве, который затем должен (методом Пост) отправляца на главную (шаблон) страницу, которая, затем, подключит нужные CSS -- файлы. Вообще-то, можно "тупо" прописать линки этих файлов (всех CSS - файлов имеющихся для сайта) в шаблоне, и "забыть" (гм, тогда к чему разговоры о "тормознутости" Джумлы, при таком подходе?). А можно подключать эти "линки" - динамически, по-мере необходимости. Т.е., просто, перебрать $GlobalCssPathArray= $_REQUEST['filepathcss'](unserialize($GlobalCssPathArray)), массив значений "линков", от всех подключаемых на данной странице компонентов и подключить необходимое. В этом массиве может быть всего один, нужный нам, "линк", а может быть и (до бесконечности?) несколько. С учетом, что Джумла при "дефолтных" настройках может подключить к абсолютно пустой странице сайта порядка 94 файлов, стоит задуматься об оптимизации? |
Сообщ.
#5
,
|
|
|
Цитата uborshik @ "как отправить многомерный массив из формы". Так же как и одномерный. ![]() ![]() <input name="var_name[0][0][2][2]" value="<?=$arr[0][0][2][2]?>"> ![]() ![]() function secret_func(Array $array, $name, $prefix = ''){ $ret = ''; foreach($array AS $key => $val){ if(is_array($val)) $ret .= secret_func($val,$name,$prefix."[{$key}]"); else $ret .= "<input type='hidden' name='{$name}{$prefix}[".htmlspecialchars($key)."]' value='".htmlspecialchars($val)."'/>\n"; } return $ret; } $var = array(array(234),'rtrt'=>array(array(3),array('e'=>'r')),'sd'=>34); echo secret_func($var,'varname'); ![]() ![]() <input type='hidden' name='varname[0][0]' value='234'/> <input type='hidden' name='varname[rtrt][0][0]' value='3'/> <input type='hidden' name='varname[rtrt][1][e]' value='r'/> <input type='hidden' name='varname[sd]' value='34'/> Добавлено Пустые только не умеет. |
![]() |
Сообщ.
#6
,
|
|
Цитата Pr0[)!9Y @ Так же как и одномерный. <input name="var_name[0][0][2][2]" value="<?=$arr[0][0][2][2]?>"> Во! Видишь? А в FAQе -- нет такого на форуме. Там вообще эта тема не затронута. А напрасно -- пока сам искал, убедился, что многим тоже необходимо передавать многомерные массивы. И баян, не баян, а собственно, ответа типа этого я найти в инете не смог. Пока ты не показал. з.ы. Единственное, я "инпут" для наглядности привел, потому что в Joomla, в компонентах, в их логической части, нельзя (категорически) использовать HTML-теги. Для этого там есть объект (JRequest), который занимается передачей параметров. Поэтому твой метод, допустим, для моих целей не подойдет, но подойдет для других целей, которые, скорее всего, вскорости у меня появятся. И поэтому, не зря я эту "баянистую" тему написал, потому что теперь узнал, как передавать многомерный массив с помощью "инпутов". |
Сообщ.
#7
,
|
|
|
Цитата uborshik @ Потому что смысла нет - любой, кто знает, как отправить переменную, в первую очередь попробует сделать аналогично и с массивом.А в FAQе -- нет такого на форуме. Вообще, конечно, непонятно, нафига таскать кучу данных в форме, если изменять их не предполагается. |
![]() |
Сообщ.
#8
,
|
|
Цитата SiMM @ Вообще, конечно, непонятно, нафига таскать кучу данных в форме, если изменять их не предполагается. Посетитель жмет на ссылку, тем самым, вызывая на страницу, таблицу, которая включает в себя, различный контент, в каждой ее ячейке. Для каждой ячейки, жеско, прописан свой стиль (файл css) отображения. Если администратор сайта захочет "не показывать" одну из ячеек таблицы посетителю, то и стиль данной ячейки подключать незачем. Т.к. все стили регистрируются в массиве, то это очень легко передать шаблону, который будет знать, какие файлы стилей ему подключать, а какие -- нет. (еще раз повторюсь, можно сразу "полинковать" к шаблону все файлы КСС сайта, но это весит очень дорого, для "быстродейсвия"). |
Сообщ.
#9
,
|
|
|
Что это было? Ответ на вопрос "нафига таскать кучу хлама?" Сессии не устраивают из религиозных соображений?
|
![]() |
Сообщ.
#10
,
|
|
Цитата SiMM @ Что это было? Ответ на вопрос "нафига таскать кучу хлама?" Сессии не устраивают из религиозных соображений? Я может не в тему влезаю, но иногда сессии реально не устраивают... и как ни странно религия ни при чем ![]() Бывает ситуация, когда пишешь мастера, на каком-нибудь из шагов которого возможно зависнуть на некоторое время, вплоть до 1/2 дня и более... при окончании сессии выходит неприятно... Хотя это наверное от неумения ими пользоваться... Однако при отсутствии времени и необходимости срочно слепить что-то подобное на ум первыми приходят формы ![]() Ногами не бить ![]() |
Сообщ.
#11
,
|
|
|
Цитата fatalist @ Иногда - ключевое слово. Не тот случай, ИМХО, хотя, возможно, и не прав - слишком много не имеющей отношения к делу воды - подозреваю, что тут и сессии-то не факт, что нужны. иногда сессии реально не устраивают |
![]() |
Сообщ.
#12
,
|
|
Цитата SiMM @ Иногда - ключевое слово. Не тот случай, ИМХО, хотя, возможно, и не прав - слишком много не имеющей отношения к делу воды - подозреваю, что тут и сессии-то не факт, что нужны. Воды в моем посте? Ее количество обусловлено желанием смягчить ощущения от моей безграмотности ![]() |
Сообщ.
#13
,
|
|
|
Цитата fatalist @ В последнем посте топикстартера. Воды в моем посте? |
![]() |
Сообщ.
#14
,
|
|
Цитата SiMM @ В последнем посте топикстартера. А, я с первого раза не очень вчитался... Что-то у меня возникло ощущение, что там что-то не так... Для каждой ячейки свой *.css ![]() |