繁体   English   中英

如何在数据库中获取数据并在视图中显示特定数据(Codeigniter)

[英]How to get data in database and display specific data in View (Codeigniter)

我是 Codeigniter 框架的新手,我创建了一个简单的应用程序,它将从数据库中获取数据,然后在视图中显示条件。 我正在尝试将数据库中的特定数据显示到我的视图中,到目前为止,我没有使用下面的代码。

模型(Datamodel.php)

function getData() {
    $this->db->select("name, value");
    $this->db->from('settings');
    $query = $this->db->get();
    return $query->result_array();
}

控制器(maincontroller.php)

function index()
{
    $data['metadata'] = $this->Datamodel->getData();
    $this->load->view('viewdata', $data);
}

看法

  <h3>Site Information</h3>
  <?php foreach($metadata as $data) {?>
      <h4>Site Title: <?php echo $data['site_title']; ?></h4>
      <h4>Site Description: <?php echo $data['site_description']; ?></h4>
      <h4>Site keyword: <?php echo $data['site_keyword']; ?></h4>
      <h4>Site Year: <?php echo $data['site_year']; ?></h4>
  <?php }?>

我想在浏览器上显示这样的东西:

网站信息

网站标题:我的第一个 codeigniter 应用程序
站点描述:这是示例 ci 应用程序
网站关键词:simple ci app, first app
工地年份:2015

{ 接受任何帮助和建议。 谢谢! 请参阅此图像 [ http://prntscr.com/722hsm ] 了解我的数据库结构!}

只需在控制器中加载您的模型:

function index()
{
    $this->load->model('Datamodel');
    $data['metadata'] = $this->Datamodel->getData();
    $this->load->view('viewdata', $data);
}

试试你的意见

<h3>Site Information</h3>

      <h4>Site Title: <?php echo $metadata['site_title']; ?></h4>
      <h4>Site Description: <?php echo $metadata['site_description']; ?></h4>
      <h4>Site keyword: <?php echo $metadata['site_keyword']; ?></h4>
      <h4>Site Year: <?php echo $metadata['site_year']; ?></h4>

感谢您采取主动。

只是一些修改:

模型

<?php
function getData() {
  $siteData = array();
  $this->db->select("name, value");
  $this->db->from('settings');
  $query = $this->db->get();
  if ($query->num_rows()) {
    foreach ($query->result_array() as $row) {
    // Your data is coming from multiple rows, so need to loop on it.
      $siteData[$row['name']] = $row['value'];
    }
  }
  return $siteData;
}

看法:

<h3>Site Information</h3>
<?php foreach($metadata as $dataName => $dataValue) {?>
    <!-- You are getting the names and values in loop, so, 
use it in loop. Also, use ucwords() and str_replace() to beautify your
 output. for more informtion on this, read php.net documentation.
       -->
  <h4><?php echo ucwords(str_replace('-', ' ', $dataName))?>: <?php echo $dataValue; ?></h4>
<?php }?>

第二种方法(没有 FOREACH):

<h3>Site Information</h3>
<h4>Site Title: <?php echo $metadata['site_title']; ?></h4>
<h4>Site Description: <?php echo $metadata['site_description']; ?></h4>
<h4>Site keyword: <?php echo $metadata['site_keyword']; ?></h4>
<h4>Site Year: <?php echo $metadata['site_year']; ?></h4>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM