繁体   English   中英

Codeigniter 3 '函数 0 的参数太少,预期为 1'

[英]Codeigniter 3 'Too few arguments to function 0 exactly 1 expected'

我是编程新手,我的脚本有问题。 我希望你能帮助我。

这是我的问题:

遇到未捕获的异常

类型:ArgumentCountError

消息:函数 M_warisantb::Caridata() 的参数太少,0 在第 58 行传入 C:\\xampp\\htdocs\\budaya\\dapobud\\application\\controllers\\Home.php 并且正好是 1

文件名:C:\\xampp\\htdocs\\budaya\\dapobud\\application\\models\\M_warisantb.php

行号:12

回溯:

文件:C:\\xampp\\htdocs\\budaya\\dapobud\\application\\controllers\\Home.php 行:58 功能:Caridata

文件:C:\\xampp\\htdocs\\budaya\\dapobud\\index.php 行:315 功能:require_once

我正在尝试使用选择查询进行搜索(在 Codeigniter 3 中)我开始构建一个表单来开始搜索,如下所示:

 <form method="POST" action="<?php echo base_url('Home/Cari');?>" class="d-none d-sm-inline-block form-inline mr-auto ml-md-3 my-2 my-md-0 mw-100 navbar-search"> <div class="input-group"> <input name="cari" type="text" class="form-control bg-light border-0 small" placeholder="Search for..." aria-label="cari" aria-describedby="basic-addon2"> <div class="input-group-append"> <button class="btn btn-primary" type="submit"> <i class="fas fa-search fa-sm"></i> </button> </div> </div> </form>

我创建模型来运行这个函数,如下所示:

public function Caridata($cari)
{
    $this->db->like('domain_opk', $cari);
    return $this->db->get_where('tradisi')->result_array();
}

在我看来$cari来自<input name="cari" type="text">

这是我的控制器

public function Cari()
{
    $data['title'] ='Galeri Foto';  
    $data['tradisi'] = $this->M_warisantb->Caridata();
    $this->load->view('templates/header',$data);
    $this->load->view('templates/sidebar');
    $this->load->view('templates/topbargaleri');
    $this->load->view('templates/galeri',$data);
    $this->load->view('templates/footer');
}

在此先感谢您的帮助...

在模型中,您创建了一个参数化的函数Caridata ,正如您提到的,该参数来自您的表单,因此,首先从表单中获取输入值,然后在控制器中调用它时将其传递给函数。 简单如下——

$name = $this->input->post('cari');

然后,而不是 -

$data['tradisi'] = $this->M_warisantb->Caridata();

做这个 -

$data['tradisi'] = $this->M_warisantb->Caridata($name);

暂无
暂无

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

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