Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将静态值分配到查询结果中-codeigniter_Php_Codeigniter - Fatal编程技术网

Php 如何将静态值分配到查询结果中-codeigniter

Php 如何将静态值分配到查询结果中-codeigniter,php,codeigniter,Php,Codeigniter,因此,我有一个网站,它有一个选择框,其中包含: 1 2 3 4 但我想将它们更改为静态值,如: Travel Housing Gourmet Medical 数据库中没有指定的字段名,如Travel等。它纯粹是数字。所以我必须分配代表每个数字的静态值 数据库中唯一的字段名是id、行业id、公司名称。我在上面指定的(数字1-4)是industry\u id 在我的控制器中: $params["filter"] = $this->Users->get_category(); $sq

因此,我有一个网站,它有一个选择框,其中包含:

1
2
3
4
但我想将它们更改为静态值,如:

Travel
Housing
Gourmet
Medical
数据库中没有指定的字段名,如Travel等。它纯粹是数字。所以我必须分配代表每个数字的静态值

数据库中唯一的字段名是
id、行业id、公司名称
。我在上面指定的(数字1-4)是
industry\u id

在我的控制器中:

$params["filter"] = $this->Users->get_category();
$sql = "SELECT industry_id FROM company GROUP BY industry_id ORDER BY industry_id ASC";
$query = $this->db->query($sql);
return $query->result();
<select class="form-control" name="field">
<?php foreach($filter as $cat)
{ 
    echo '<option value="'.$cat->industry_id.'">'.$cat->industry_id.'</option>';
}
?>
</select>
型号:

$params["filter"] = $this->Users->get_category();
$sql = "SELECT industry_id FROM company GROUP BY industry_id ORDER BY industry_id ASC";
$query = $this->db->query($sql);
return $query->result();
<select class="form-control" name="field">
<?php foreach($filter as $cat)
{ 
    echo '<option value="'.$cat->industry_id.'">'.$cat->industry_id.'</option>';
}
?>
</select>
查看:

$params["filter"] = $this->Users->get_category();
$sql = "SELECT industry_id FROM company GROUP BY industry_id ORDER BY industry_id ASC";
$query = $this->db->query($sql);
return $query->result();
<select class="form-control" name="field">
<?php foreach($filter as $cat)
{ 
    echo '<option value="'.$cat->industry_id.'">'.$cat->industry_id.'</option>';
}
?>
</select>

我怎么做?


<?php
$a = array();
$b = ['Travel', 'Housing', 'Gourmet','Medical'];
$i = 0;
foreach ($filter as $cat) {
    $a[$cat->industry_id] = $b[$i];
    $i++;
}

?>
<select class="form-control" name="field">
    <?php foreach ($a as $k => $val) {
        echo '<option value="' . $k . '">' . $val . '</option>';
    }
    ?>
</select>

那怎么办

$sql = "SELECT industry_id, CASE WHEN industry_id = 1 THEN 'Travel' WHEN industry_id = 2 THEN 'Housing' WHEN industry_id = 3 THEN 'Gourmet' WHEN industry_id = 4 THEN 'Medical' END AS industry_description  FROM company GROUP BY industry_id ORDER BY industry_id ASC";
请注意,如果industry_id是INT,则此代码应该可以工作-如果它是VARCHAR,则必须使用,例如当industry_id='1'时

在您看来,您只需访问
行业描述

<select class="form-control" name="field">
<?php foreach($filter as $cat)
{ 
    echo '<option value="'.$cat->industry_id.'">'.$cat->industry_description.'</option>';
}
?>
</select>

那怎么办

$sql = "SELECT industry_id, CASE WHEN industry_id = 1 THEN 'Travel' WHEN industry_id = 2 THEN 'Housing' WHEN industry_id = 3 THEN 'Gourmet' WHEN industry_id = 4 THEN 'Medical' END AS industry_description  FROM company GROUP BY industry_id ORDER BY industry_id ASC";
请注意,如果industry_id是INT,则此代码应该可以工作-如果它是VARCHAR,则必须使用,例如当industry_id='1'时

在您看来,您只需访问
行业描述

<select class="form-control" name="field">
<?php foreach($filter as $cat)
{ 
    echo '<option value="'.$cat->industry_id.'">'.$cat->industry_description.'</option>';
}
?>
</select>


Sooo旅行等名称的字段名是什么。。。将其添加到“选择”中,并在使用名称的id和显示创建选项列表时使用它。@TimBrownlaw抱歉,我忘了指定数据库中没有名称的字段名,如Travel等。。这仅仅是一个数字,所以你有一个没有意义的行业ID的表?你不知道身份证是干什么用的???我不相信。。。必须有一些与这些ID“相关”的描述。@TimBrownlaw数据库中唯一的字段名是ID、行业ID、公司名称。我在上面指定的那个(数字1-4)是行业id。所以你更新了你的问题,说没有任何这样的名字。。。你怎么知道它们是什么?这样做的唯一方法是创建一个具有ID和名称的表并使用它:)还有其他表吗?那么名称的字段名是什么,比如Travel等等。。。将其添加到“选择”中,并在使用名称的id和显示创建选项列表时使用它。@TimBrownlaw抱歉,我忘了指定数据库中没有名称的字段名,如Travel等。。这仅仅是一个数字,所以你有一个没有意义的行业ID的表?你不知道身份证是干什么用的???我不相信。。。必须有一些与这些ID“相关”的描述。@TimBrownlaw数据库中唯一的字段名是ID、行业ID、公司名称。我在上面指定的那个(数字1-4)是行业id。所以你更新了你的问题,说没有任何这样的名字。。。你怎么知道它们是什么?这样做的唯一方法是创建一个具有ID和名称的表并使用它:)还有其他表吗?非常优雅,可以很好地将所有内容放在一起:)非常优雅,可以很好地将所有内容放在一起:)