Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   Общие вопросы (http://forum.typo3.ru/forumdisplay.php?f=12)
-   -   Создание первого своего расширения (http://forum.typo3.ru/showthread.php?t=2829)

ann 11.03.2007 14:55

Создание первого своего расширения
 
Доброе время суток. Сейчас я пытаюсь создать простейшее расширение, которое просто отоброжает калькулятор (извините, за примитивность), но почему то не получается с входными параметрами. Подскажите, как мне взять значение из текстовых полей и каким образом мне выводить потом результат? вот пример кода рнр:

Код:

class tx_nkcalc_pi1 extends tslib_pibase {
        var $prefixId      = 'tx_nkcalc_pi1';                // Same as class name
        var $scriptRelPath = 'pi1/class.tx_nkcalc_pi1.php';        // Path to this script relative to the extension dir.
        var $extKey        = 'nk_calc';        // The extension key.

        /**
        * The main method of the PlugIn
        *
        * @param        string                $content: The PlugIn content
        * @param        array                $conf: The PlugIn configuration
        * @return        The content that is displayed on the website
        */
        function main($content,$conf)        {
                $this->conf=$conf;
                $this->pi_setPiVarDefaults();
                $this->pi_loadLL();
                $this->pi_USER_INT_obj=1;        // Configuring so caching is not expected. This value means that no cHash params are ever set. We do this, because it's a USER_INT object!

                if(isset($this->piVars['submit_button']))  {
                        t3lib_div::debug($this->piVars);
                        $result=$this->piVars['x']+        $this->piVars['y'];
                }
                else {

                $content='
                        <h3>This is a form:</h3>
                        <form action="'.$this->pi_getPageLink($GLOBALS[" TSFE?]->id).'"' method="POST">
                                <input type="hidden" name="no_cache" value="1">
                                Первое число <input type="text"    name="'.$this->prefixId.'[x]" value=""> <br />
                                Второе число <input type="text" name="'.$this->prefixId.'[y]" value=""><br />
                                <input type="submit" name="'.$this->prefixId.'[submit_button]" value="Расчитать">
                        </form>
                        <br />
                        <p>Результат <br/> </p>';
        }

                return $this->pi_wrapInBaseClass($content);
        }

}



if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/nk_calc/pi1/class.tx_nkcalc_pi1.php'])        {
        include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/nk_calc/pi1/class.tx_nkcalc_pi1.php']);
}

Но потом на странице, где в содержании размещено это расширение, потом ничего вообще не отображаеться. Помогите пожалуйста, вроде элементарное, но ничего не получается ((

Расширение создавала с помощью кикстартера, редактирую файл pi1/class.tx_nkcalc_pi1.php, пока не хочу использовать шаблоны.

void 11.03.2007 15:22

У вас не включен вывод ошибок. Включите.
И смотрите в строку $this->pi_getPageLink($GLOBALS[" TSFE?]->id) - просто неверный синтаксис.

ann 11.03.2007 15:40

я исправила на
Код:

<form action="'.$this->pi_getPageLink($GLOBALS['TSFE']->id)'" method="POST">
но, результат один и тот же. Извините за глупый вопрос ,а где включать вывод ошибки? я просто на для typo первый раз пишу

void 11.03.2007 19:34

В localconf.php:

$TYPO3_CONF_VARS['FE']['debug'] = '1';
$TYPO3_CONF_VARS['SYS']['devIPmask'] = '*';
$TYPO3_CONF_VARS['SYS']['sqlDebug'] = '1';

ann 12.03.2007 07:21

вывод ошибок включила, но никаких эмоций с его стороны ((. Просто отображает пустой бланк и все. Даже родительского шаблона не отображает, а как убираю со страницы свой модуль - сразу показывает все нормально (естественно без моего расширения).
В чем проблема? Мне очень надо

ann 12.03.2007 10:30

может быть кто-нибудь подскажет расширение, которое не использует базу и обрабатывает введенную пользователем информацию и потом выводит результат ...


Часовой пояс GMT +4, время: 11:16.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot