如何在PHP中获取选择框的标签 - Typo3

时间:2012-02-10 16:46:03

标签: php label option typo3

在我的一个插件的Typo3后端有一个选择框。选项值为0,1,2,3 ...选项名称或标签本身包含Text:foo,bar,等等......

现在保存在数据库中的是值。但我需要显示标签或名称。 扩展,插件是使用Kickstarter设置的,或者如果需要,我也可以在文件中自行更改。

我知道可以将值从0-x更改为其标签。但是我不喜欢它,如果没有办法获得标签,我就会这么做。

有人知道如何根据选项的价值获得它们甚至可能吗?

继承人我的php - $ v ['category']是来自选择框的0,1,2,3 ...:

    $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
        '*', 
        'sometable',
        '',
        '',
        'title ASC',
        ''
    );
    while($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
        $projects[] = $row;
    }

    $content = '<div class="projectlist">';
    foreach ($projects as $k => $v) {
        $content.= '<div class="project-single">';
        $content.= $v['title'].' | '.$v['category'];
        $content.= '</div>';
    }
    $content.= '</div>';

2 个答案:

答案 0 :(得分:2)

由于$v['category']包含ID,您可以在locallang.xml中查找值:

foreach ($projects as $k => $v) {
        $content.= '<div class="project-single">';
        $content.= $v['title'].' | '.$this->pi_getLL('category_'.$v['category']);
        $content.= '</div>';
    }

假设您的locallang.xml有条目:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<T3locallang>
    <data type="array">
        <languageKey index="default" type="array">
            <label index="category_1">Category label 1</label>
            <label index="category_2">Category label 2</label>
        </languageKey>
    </data>
</T3locallang>

答案 1 :(得分:0)

很抱歉,但在使用php处理提交的表单时,无法知道显示在选择框中的选项的文本。仅发送值。在创建表单之前将其存储在服务器端,或者使用javascript将其与表单一起发送。我需要一个示例页面或代码来帮助完成该部分...