php - 在 codeigniter 中更新数据时如何显示通过 id 获取的选定选项

标签 php mysql codeigniter

我想在选择选项标签中显示一个选定的值,具有特定的 id, 我有一个帖子表

+---------+-------------+---------------+-------------+
| post_id | post_title  | post_content  | category_id |
+---------+-------------+---------------+-------------+
| 1       | Title One   | Content One   | 1           |
+---------+-------------+---------------+-------------+
| 2       | TitleTwo    | Content Two   | 1           |
+---------+-------------+---------------+-------------+
| 3       | Title Three | Content Three | 2           |
+---------+-------------+---------------+-------------+

然后我有一个类别表

+-------------+----------------+
| category_id | category       |
+-------------+----------------+
| 1           | Category One   |
+-------------+----------------+
| 2           | Category Two   |
+-------------+----------------+
| 3           | Category Three |
+-------------+----------------+

我用选择选项标签显示类别

Controller 添加

function add(){
    if ($this->input->post('submit'){
        $data = array(
            'post_title' => $this->input->post('post_title'),
            'post_content' => $this->input->post('post_content'),
            'category_id' => $this->input->post('category_id'));
        $this->db->insert('post_table',$data);
    }
    $data[cats] = $this->db->get(category_table)->result();
    $this->load->view('view_add_post');
}

查看添加,

<form method="post" action="<?php echo base_url();?>index.php/post/add">
    <input type="text" name="post_title">
    <textarea name="post_content"></textare>
    <select name="category_id">
        <?php foreach ($cats as $category) { ?>
        <option value="<?php echo $category->category_id ?>"><?php echo $category->category?>
        <?php } ?>
    </select>
    <input type="submit" name="submit" value="Save">
</form>

Controller 编辑

function edit($id){
    $data['post'] = $this->db->get_where('post_table' array('post_id',$id))->row();
    $data['cats'] = $this->db->get('category_table)->result();
    $this->load->view('view_edit_post',$data)
}

编辑 View

这是我想在下拉选择选项上显示类别的问题,其中选择的是我输入的第一个,例如我已经输入了类别 ID 为 1 的帖子,然后当我在选择选项中编辑类别 1 时自动选中,怎么办?

<select name="category_id">
    <?php foreach ($cats as $category) { ?>
    <option value="<?php echo $category->category_id ?>"><?php echo $category->category?>
    <?php } ?>
</select>

// the selected option is automatically

对不起,我的英语不好。

最佳答案

更改此代码

<select name="category_id">
<?php foreach ($cats as $category) { ?>
<option <?php if($category->category_id == "your desired id"){ echo 'selected="selected"'; } ?> value="<?php echo $category->category_id ?>"><?php echo $category->category?> </option>
<?php } ?>
</select>

其实我给你添加了一个提示,因为你的问题不是很清楚。

您必须输入您想要的 ID 以匹配所选类别

关于php - 在 codeigniter 中更新数据时如何显示通过 id 获取的选定选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35828438/

相关文章:

mysql - 在 MySQL 中获取行直到满足特定条件

php - 如何动态访问可变多维数组中的值

php - 使用 WAMP 调用未定义的函数 sqlsrv_connect()

php - PDO 两个查询,一个用于找到的行,另一个用于结果?

python - 将 python 列表存储到 mysql 中并访问它

javascript - 如何将javascript变量传递给site_url的参数值?

php - 如何在开发人员之间使用具有不同数据库配置的 Git?

javascript - Codeigniter 表单验证检查输入值是否已更改

linux - PHP CLI 超时问题

php - Android -> PHP session 管理