"如果数据库"中存在消息/文本,则显示用户从最新到最旧创建的消息

时间:2015-02-21 19:49:44

标签: php codeigniter

我正在研究这个消息系统。用户具有呈现给他的表格,其中用户将键入注释,在这种情况下称为"消息"。当用户访问他的个人资料页面时,会显示他之前在表单中输入并按下保存的消息。

截图: http://i.stack.imgur.com/VEsDg.png

我的数据库有一个名为" messages"我有piduidmessagetimepicture列,其中uid是我的uid "用户"表

因此pid是自动递增的,uid是发布消息的用户的用户ID。 (用户以表格形式将URL发布到他的图片中,该表格稍后会保存到数据库中的picture列。

我的PHP代码,我从数据库中获取数据:

<?php

$uid = $this->session->userdata('uid');

$this->db->limit(10); //Use this to limit the entires while you show the entires on the front page.
$query = $this->db->query("SELECT pid, message, time, picture FROM messages WHERE uid = '$uid';");

foreach ($query->result_array() as $row)

{
   $message = $row['message'];
   $time = $row['time'];
   $picture = $row['picture'];

}

    ?>

我在我的views文件夹中的profile_body.php页面中的html代码,其中包含上述代码。

    <div class="list-group list-group-breakout">
              <a class="list-group-item" href="https://assembly.com/assemblycoins">
                <div class="chip">
  <div class="chip-icon">
    <img alt="Coins" width="48" height="48" class="app-icon" src="<?php echo $picture ?>"/>
  </div>

  <div class="row">
    <div class="col-sm-12">

      <p class="omega"><?php echo $message;?></p>
    </div>
    <div class="col-sm-12 right-align">

      <p class="gray-2 small omega">
        Feb. 21, 2015 <!-- Not from database -->
      </p>
    </div>
  </div>
</div>

如何为用户在数据库中输入并显示的消息只获得10个结果?我试图再次粘贴相同的HTML代码,但它显示相同的消息和图片。

感谢。

1 个答案:

答案 0 :(得分:0)

以下是一些改进:

$uid = $this->session->userdata('uid');

$result = $this->db->select('pid, message, time, picture')
         ->where(array('uid' => $uid))
         ->limit(10)
         ->get('messages')
         ->result_array();

$this->load->view('profile_body', $result);

在您的视图profile_body.php文件中:

<?php foreach($result as $row): ?>
<div class="list-group list-group-breakout">
              <a class="list-group-item" href="https://assembly.com/assemblycoins">
                <div class="chip">
  <div class="chip-icon">
    <img alt="Coins" width="48" height="48" class="app-icon" src="<?php echo $row['picture'] ?>"/>
  </div>

  <div class="row">
    <div class="col-sm-12">

      <p class="omega"><?php echo $row['message'];?></p>
    </div>
    <div class="col-sm-12 right-align">

      <p class="gray-2 small omega">
        Feb. 21, 2015 <!-- Not from database -->
      </p>
    </div>
  </div>
</div>
<?php endforeach; ?>