Codeigniter上具有特定ID /行的SQL查询

时间:2016-07-06 14:16:59

标签: php mysql codeigniter

我需要使用SELECT * FROM查询打印具有特定ID的数据,我的查询有问题 例如,我有一个名为 tb_pasien 的表,它有8列:
  kode_pasien(作为ID),nama_pasien,email_pasien,alamat_pasien,tanggal_lahir,umur,jenis_kelamin和no_telp。

因此,当我想打印某人数据时,只显示她/他的数据而不是我桌子上的所有数据。

这是我的代码:
模型

public function view_kartu()
{
    $query = $this->db->query("SELECT * FROM tb_pasien where kode_pasien='$kode_pasien' LIMIT 1");
    return $query;
}

控制器

public function cetakkartu() {  
    // Load all views as normal
    $data['pasien'] = $this->a_model->view_kartu();
    $this->load->view('cetak-kartu', $data);
    // Get output html
    $html = $this->output->get_output();

    // Load library
    $this->load->library('dompdf_gen');

    // Convert to PDF
    $this->dompdf->load_html($html);
    $this->dompdf->render();
    $this->dompdf->stream("cetak-kartu" . ".pdf", array ('Attachment' => 0));

}

查看

 <table border="1" width="100%">
      <tr>

        <th>Kode Pasien</th>
        <th>Nama Pasien</th>    
        <th>Email Pasien</th>
        <th>Alamat Pasien</th>
        <th>Tanggal Lahir</th>
        <th>Umur</th>
        <th>JK</th>
        <th>No. Telp</th>
      </tr>

      <?php
      if( ! empty($pasien)){

          foreach($pasien as $data){
            echo "<tr>";

            echo "<td>".$data->kode_pasien."</td>";
            echo "<td>".$data->nama_pasien."</td>";
            echo "<td>".$data->email_pasien."</td>";
            echo "<td>".$data->alamat_pasien."</td>";
            echo "<td>".$data->tanggal_lahir."</td>";
            echo "<td>".$data->umur."</td>";
            echo "<td>".$data->kode_jk."</td>";
            echo "<td>".$data->no_telp."</td>";
            echo "</tr>";

          }
      }
      ?>
      </table>

但是当我尝试打印它时,它会显示空的结果。有人能帮我吗?三江源。

3 个答案:

答案 0 :(得分:0)

尝试更改模型功能,如下所示 -

  public function view_kartu($kode_paisen)
   {
       $query = $this->db->query("SELECT * FROM tb_pasien where    kode_pasien='$kode_pasien' LIMIT 1");
    return $query;
  }

然后从您的控制器中将其称为 -

public function cetakkartu() {  

     //set a value for $kode_paisen
     $kode_paisen = "XXX";  //set here whatever you like.

    // Load all views as normal . See here we passing the variabke in the function.
    $data['pasien'] = $this->a_model->view_kartu($kode_paisen);
    // Rest of your function ...
}

作为一个例子,我有一张表&#34;货币&#34;在我的网站中,这就是我如何获取Code Igniter模型中映射到特定公司的所有货币。

function getCurrencyList($companyId)
    {

        $sql = "select currency_id from company_currency where company_id = $companyId";
        $retVal = $this->db->query($sql);
        if($this->db->affected_rows() == 0)
        {

            return null;

        }
        if($retVal && $this->db->affected_rows() > -1)
        {
            if($retVal->result_array())
            {
                foreach($retVal->result_array() as $row)
                {
                    $arrCurrencyId[] = $row['currency_id'];
                }
            }
            return $arrCurrencyId;
        }
        else
        {
            log_message('error', mysql_error()." ******* at function getActionList Role Model *********");
            return null;
        }               
    }

我希望这会对你有所帮助

答案 1 :(得分:0)

需要返回结果数组或行但不需要查询(根据您从数组或数组对象中获取数据的要求)

喜欢这个

return $ query-&gt; result_array();                 或

返回$ query-&gt; row();

答案 2 :(得分:0)

尝试此查询:

$this->db->select('kode_pasien as ID, nama_pasien, email_pasien, alamat_pasien, tanggal_lahir, umur, jenis_kelamin, no_telp');
$this->db->from('tb_pasien');
$data= $this->db->get()->result_array();
echo "<pre>"; print_r($data);die;