【问题标题】:Report where id报告哪里 id
【发布时间】:2025-06-07 07:30:01
【问题描述】:

我在打印基于 ID 的数据时遇到问题, 错误:

函数 M_order::cetak_db_order() 的参数太少,在第 162 行的 C:\xampp\htdocs.......\Order.php 中传递了 0,而预期正好是 1

提交身份证

<td class="text-center"><a href="<?php echo base_url(); ?>backend/order/cetak_order/<?php echo $m->id_service; ?>" class="btn bg-navy btn-flat margin">Detail order</a></td>

型号代码

 public function cetak_db_order($id){
    $hasil=$this->db->query("
        SELECT id_service,kd_cs,nama_cs,reciver_name,tanggal,status,nama_kecamatan AS tujuan, nama_kabupaten AS asal 
        FROM service s
        INNER JOIN customers c ON s.id_cs=c.id_cs 
        INNER JOIN kabupaten k ON s.id_origin=k.id_kab 
        INNER JOIN kecamatan p ON p.id_kec=s.id_destination WHERE id_service='$id'");
    return $hasil->result();
}

控制器代码

public function cetak_order(){
    $pdf = new FPDF('l','mm','A5');
    $pdf->AddPage();
    $pdf->SetFont('Arial','B',16);

    $pdf->SetFont('Arial','B',10);
    $pdf->Cell(20,6,'Nama',1,0);
    $pdf->Cell(85,6,'penerima',1,0);
    $pdf->Cell(27,6,'asal',1,0);
    $pdf->Cell(25,6,'tujuan',1,1);
    $cetakorder = $this->M_order->cetak_db_order();
    foreach ($cetakorder as $row){
        $pdf->Cell(20,6,$row->nama_cs,1,0);
        $pdf->Cell(85,6,$row->reciver_name,1,0);
        $pdf->Cell(27,6,$row->asal,1,0);
        $pdf->Cell(25,6,$row->tujuan,1,1); 
    }
    $pdf->Output();
}

【问题讨论】:

  • 试试table.id_service
  • 不工作 :( @devsi odedra

标签: php codeigniter fpdf


【解决方案1】:

您从 HTML 中的锚标记传递 $m-&gt;id_service。但是您并没有在 PHP 中的任何地方使用它。

您需要更新您的cetak_order 函数,如下所示:

public function cetak_order( $id ){
.
.
.
.
.
$cetakorder = $this->M_order->cetak_db_order( $id );

此外,您还需要确保将 $id 从您调用的任何位置传递给 cetak_order 方法,除非它是由您的路由器自动传递的。

【讨论】: