簡體   English   中英

如何僅顯示某些項目

[英]How to show only certain items

下面的代碼從我的數據庫中名為“url_domain”的數據庫表中獲取所有域,並將它們輸出到一個下拉列表中,用戶可以使用該下拉列表到 select 使用哪個域。

運行此代碼時我想要的是,它不應顯示列表中的所有可用域,而應僅顯示數據庫中premium_only設置為 1 和 6 的域,列表中不應顯示其他任何內容。

如果我嘗試以下
如果我嘗試使用以下代碼,那么當我運行它時,只有將 premium_only 設置為 1 的域才會顯示,而不是 1 和 6,為什么?

if(($shortUrlDomain['premium_only'] != '1') && ($shortUrlDomain['premium_only'] != '6'))
{
continue;
}

其他東西

數據庫布局:

Table: url_domain

id | domain           | premium_only | status  | date_created
---+------------------+--------------+---------+-------------------
1  | exaple.com       | 1            | enabled | 2020-03-02 08:13:00
2  | exaple2.com      | 0            | enabled | 2021-03-02 08:13:00
3  | exaple2.org      | 0            | enabled | 2021-03-02 08:13:00
4  | text.exaple2.se  | 6            | enabled | 2021-03-02 08:13:00

PHP 代碼:

<div>
    <label for="shortUrlDomain"><?php echo t("short_url_domain", "Short Url Domain"); ?>:</label>
    <select id="shortUrlDomain" name="shortUrlDomain" style="width: 100%;">
        <?php
        foreach ($shortUrlDomains AS $k => $shortUrlDomain)
        {
            echo '<option value="' . (int) $k . '"';
            // selected option
            if ($k == (int) $_REQUEST['shortUrlDomain']) {
                echo ' SELECTED';
            }
            echo '>';
            echo $shortUrlDomain['domain'];
            if($disabled == true) {
                echo ' ('.safeOutputToScreen(t('unavailable', 'unavailable')).')';
            }
            '</option>';
        }
        echo '</optgroup>';
    ?>
    </select>
</div>

// get base urls
$shortUrlDomains = getShortUrlDomains();

static function getShortUrlDomain($domainId)
{
    // get base urls
    $shortUrlDomains = getShortUrlDomains();
    
    if(!isset($shortUrlDomains[$domainId]))
    {
        return _CONFIG_SITE_PROTOCOL.'://'._CONFIG_SITE_FULL_URL;
    }
    
    return _CONFIG_SITE_PROTOCOL.'://'.$shortUrlDomains[$domainId]['domain'];
}

更好的方法是 select SQL 中唯一想要的字段,但如果你不能或者你想保留所有結果以供下次在腳本中使用,你可以在循環中檢查結果是否與以下值匹配:

   if ( in_array( $shortUrlDomain['premium_only'], [1,6] ) ) {
     //result is in array [1,6] so you can write your select options here
   ....
   }

暫無
暫無

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

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