0

Я в середине программирования компонента joomla, этот компонент будет иметь многоступенчатую форму для регистрации, первая из которых содержит 2 переключателя. Какой самый простой способ передать переменную из радиообъекта на шаг 2? когда пользователь отправляет первую форму, контроллер вызывается для отображения второго шага, есть ли более простой подход к этому? Заранее спасибо.Переменная joomla pass между представлениями

Код:

step1 вида (вид кода):

<form name="step1" action="<?php echo JRoute::_('index.php option=com_mycomponent&task=mycomponent.register'); ?>" method="POST"> 
<input type="radio" name="placement" value="0" checked /> Option 1<br /> 
<input type="radio" name="placement" value="1" /> Option 2<br /> 
<div class="next" onClick="document.forms['step1'].submit();"></div> 
</form> 

код контроллера для обработки mycomponent.register

class mycomponentControllermycomponent extends JController 

{ 

    public function register() 

    { 
    $this->setRedirect(JRoute::_('index.php?option=com_mycomponent&view=default&layout=step2', false)); 
    } 

} 

Я хотел бы передать значение из радио к шагу2;)

Надеюсь, что я не пропустил тему, касающуюся этого уже, не мог плавать d по крайней мере!

ответ

2

В регистрового метода вы можете получить доступ значение радио, а затем передать его в ссылку на ваш взгляд:

public function register() 
    { 
     $placementOption = JRequest::getInt('placement', 0, 'post'); 

    $this->setRedirect(JRoute::_('index.php?option=com_mycomponent&view=default&layout=step2&placement=' . $placementOption, false)); 
    } 

на ваш взгляд, на этапе 2 (view.html.php), вы можете затем доступ вариант точно так же (на этот раз значение в GET не POST):

$placementOption = JRequest::getInt('placement', 0, 'get'); 

$this->assignRef('placement', $placementOption); 

Наконец, если вы хотите получить доступ к нему в шаблоне просмотров (например default.php)

<?php echo $this->placement; ?> 
+0

Первый способ, похоже, не работает, он всегда возвращается 0:/JRequest :: getInt, похоже, не приносит мне значение Использование Joomla 2.5.4 кстати. –

+0

В этом случае просто используйте '(int) $ _ POST ['placement']' и '(int) $ _ GET ['placement']'. – MrCode

+0

По-прежнему не работает неудачно, также попробовал $ placement = JRequest :: getVar ('placement'); без успеха:/ –

0

Я только что решил проблему, подобную этой проблеме в Joomla. То, что я сделал, просто и прекрасно работает.

1) Я создал статью в форме редактора html статьи.

2) в этом html-коде статьи, для формы, которую я дал form method = "POST" action = "child.php".

3) Теперь child.php - это страница внутри моей установочной папки joomla, которая имеет html-страницу точно так же, как и макет шаблона, ссылки и статья и т. Д. Итак, я сделал child.php страницу, которая выглядит как любая другая страницу на моем веб-сайте, но также и внутри формы.

4) Внутри этого child.php есть форма. Затем поле, которое я хочу заполнить из статьи формой внутри, я дал значение value = "? Php echo $ _POST ['VARIABLE'];?", Где VARIABLE - это имя поля моей статьи html. ,

Так вот, теперь моя статья html-формы перенаправляет меня на страницу child.php, а child.php заполняется переменной моей предыдущей статьи html.

 Смежные вопросы

  • Нет связанных вопросов^_^