Как присвоить значение текстовому полю определенному в xml файле

Тема в разделе "Создание расширений для Joomla", создана пользователем svolga, 16.07.2011.

  1. Offline

    svolga Недавно здесь

    Регистрация:
    13.10.2010
    Сообщения:
    19
    Симпатии:
    0
    Пол:
    Мужской
    Имеется xml файл с полями формы.
    Например, поле - фамилия сотрудника:

    <field id="last_name" name="last_name" type="text" class="inputbox"
    size="40" label="LAST_NAME"
    description="LAST_NAME" required="true" />

    в коде шаблона ставлю:
    <li>
    <?php echo $this->form->getLabel('last_name'); ?>
    <?php echo $this->form->getInput('last_name'); ?>
    </li>
    Появляется label и inputbox
    Далее пытаюсь в это поле записать значание типа:
    <?php echo $this->form->setValue('last_name',null, 'Тест' ); ?>

    Вместо того, чтобы появиться тексту в inputbox за ним появляется текст:1
    Хотя при попытке программно прочесть значение из этого поля
    <?php echo "Равно=".$this->form->getValue('last_name'); ?>
    Значение возвращается верное: Тест
    В чем ошибка?
     
  2.  
  3. Offline

    ghest Недавно здесь

    Регистрация:
    09.03.2006
    Сообщения:
    247
    Симпатии:
    23
    Пол:
    Мужской
    а если вот так попробовать ?

    <?php echo $this->form->setValue('last_name', null, 'Тест'); ?>
     
  4. Offline

    svolga Недавно здесь

    Регистрация:
    13.10.2010
    Сообщения:
    19
    Симпатии:
    0
    Пол:
    Мужской
    У меня точно такой код выше. Не работает.
     
  5. Offline

    ghest Недавно здесь

    Регистрация:
    09.03.2006
    Сообщения:
    247
    Симпатии:
    23
    Пол:
    Мужской
    не точно такой ;) присмотрись внимательней
     
  6. Offline

    svolga Недавно здесь

    Регистрация:
    13.10.2010
    Сообщения:
    19
    Симпатии:
    0
    Пол:
    Мужской
    Несколько раз пересмотрел ... у меня написано:

    ****
    Далее пытаюсь в это поле записать значание типа:
    <?php echo $this->form->setValue('last_name',null, 'Тест' ); ?>
    ****

    у вас написано
    ****
    <?php echo $this->form->setValue('last_name', null, 'Тест'); ?>
    ****

    не вижу различий ...
     
  7. Offline

    ghest Недавно здесь

    Регистрация:
    09.03.2006
    Сообщения:
    247
    Симпатии:
    23
    Пол:
    Мужской
    различия :

    1. пропуск, после запятой перед null
    2. убран пробел перед закрывающей скобкой

    не гарантирую что сработает, но порой одна неправильная запятая ломает всю работу
     
  8. Offline

    svolga Недавно здесь

    Регистрация:
    13.10.2010
    Сообщения:
    19
    Симпатии:
    0
    Пол:
    Мужской
    Попробовал ... результат не изменился
     
  9. Offline

    svolga Недавно здесь

    Регистрация:
    13.10.2010
    Сообщения:
    19
    Симпатии:
    0
    Пол:
    Мужской
    Кстати залез в компонент баннера com_banners и в одной из форм в файле шаблона попытался задать значение в поле inputbox, результат тот же самый. После самого контрола пишет текст "1".
    Какие еще могут быть мысли???
     
  10. Offline

    svolga Недавно здесь

    Регистрация:
    13.10.2010
    Сообщения:
    19
    Симпатии:
    0
    Пол:
    Мужской
    Проблема разрешилась, может кому пригодится. Необходимо поменять порядок строк. Вместо

    <?php echo $this->form->getLabel('last_name'); ?>
    <?php echo $this->form->getInput('last_name'); ?>
    <?php $this->form->setValue('last_name',null, 'Тест' ); ?>

    должно быть

    <?php echo $this->form->getLabel('last_name'); ?>
    <?php $this->form->setValue('last_name',null, 'Тест' ); ?>
    <?php echo $this->form->getInput('last_name'); ?>
     

Поделиться этой страницей

Загрузка...