簡體   English   中英

如何通過其值獲取 PHP 中選擇框的 label - Typo3

[英]how to get label of selectbox in PHP by its value - Typo3

在我的一個插件的 Typo3 后端有一個選擇框。 選項值為 0,1,2,3... 選項名稱或 label 本身包含文本:foo,bar,whatever,...

現在保存在數據庫中的是值。 但我需要顯示 label 或名稱。 擴展程序、插件是使用 Kickstarter 設置的,或者如果需要,我也可以自己更改文件中的某些內容。

我知道可以將值從 0-x 更改為其 label。 但我不喜歡它,如果沒有辦法得到 label,我會這樣做。

有人知道如何根據期權的價值甚至可能獲得它們嗎?

這是我的 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>';

由於$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>

抱歉,當使用 php 處理提交的表單時,無法知道 select 框中的選項顯示的文本。 僅發送值。 在創建表單之前將其存儲在服務器端,或者使用 javascript 將其與表單一起發送。 我需要一個示例頁面或代碼來幫助完成該部分......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM