我正在使用CodeIgniter 2.1.0和MySQL。我想将水平数据行显示为垂直数据。当我从数据库中获取单行并回显它时,它看起来像
----------------------------------------
id | name | address | email |
----------------------------------------
1 | Foo | Bar | foo@bar.com |
----------------------------------------
我使用CodeIgniters表库来生成上表。而不是这个,我希望它显示如下:
------
id : 1
name: foo
address : bar
email: foo@bar.com
-------------------
如何使用CodeIgniter 2.1.0执行此操作?
答案 0 :(得分:2)
通过在视图页面中使用单个foreach
循环,此问题非常简单:
/* for controller */
$data['user_data'] = $this->modle_name->function_name;
modle_name= your modle name where the specific function exists.
function_name= function into the modle by which you get all the table value from mysql db.
然后在模型中写出当前函数并转到视图页面:
/* for view */
<?php foreach ($user_data as $data) {?>
<tr>
<?php echo 'ID:' . ' ' ?>
<?php echo ($data['id']); ?>
<?php echo 'Name:' . ' ' ?>
<?php echo ($data['name']); ?>
<?php echo 'Address:' . ' ' ?>
<?php echo ($data['address']); ?>
<?php echo 'E-mail:' . ' ' ?>
<?php echo ($data['email']); ?>
</tr>
<?php } ?>
答案 1 :(得分:2)
我已经找到了解决这个问题的方法,但我认为这不是最好的方法。 而不是使用表库,我改变了我的模型,控制器和视图,如下所示: 模型:
function detail()
{
$this->db->where('id',$this -> session -> userdata('id'));
$query=$this->db->get('user');
$row=$query->row_array();
return $row;
}
控制器:
$this->load->model('my_model');
$this->my_model->detail();
$data=array(
'id'=>$query['id'],
'name'=>$query['name'],
'address'=>$query['address'],
'email'=>$query['email']
);
$this->load->view('my_view',$data);
视图:
<div>
id : <?php echo $id;?><br/>
name: <?php echo $name;?><br/>
address: <?php echo $address;?><br/>
email: <?php echo $email;?>
</div>
这完美无缺。但我希望以更简单的方式解决这个问题。
答案 2 :(得分:2)
如果你有任何问题要实现我之前的答案......以下是详细信息...... 让我知道它是否有用? 谢谢。
/ *表示控制器* /
$ data ['user_data'] = $ this-&gt; modle_name-&gt; function_name; modle_name =特定函数所在的模型名称。 function_name =函数到模块中,通过它从mysql db获取所有表值。
然后在modle中编写函数并转到视图页面:它可能就像那样
/ * model * /
function function_name(){
$sql = "select * from tablename where condition";
$query = $this->db->query($sql);
return $query->result_array();
}
/ *用于查看* /
<?php foreach ($user_data as $data) {?>
<tr>
<?php echo 'ID:' . ' ' ?>
<?php echo ($data['id']); ?>
<?php echo 'Name:' . ' ' ?>
<?php echo ($data['name']); ?>
<?php echo 'Address:' . ' ' ?>
<?php echo ($data['address']); ?>
<?php echo 'E-mail:' . ' ' ?>
<?php echo ($data['email']); ?>
</tr>
<?php } ?>