我正在使用CodeIgniter 3制作新闻编辑功能,这里还有一个图像编辑功能
但有如下错误:,
遇到未捕获的异常类型: ArgumentCountError
消息:函数运算符::edit_berita()的参数太少,在D:\xampp\htdocs\ui desa\system\core\CodeIgniter中传递了0。php在第532行,预期正好为1
文件名:D:\xampp\htdocs\ui-desa\application\controllers\Operator。php
行号: 164
回溯:
文件:D:\xampp\htdocs\ui-desa\index。php行:315函数:需要一次
控制器Operator.php
public function edit_berita($id_berita)
{
$data['title'] = 'Edit Berita';
$data['user'] = $this->db->get_where(
'user',
['id' => $this->session->userdata('id')],
['email' => $this->session->userdata('email')]
)->row_array();
$data['berita'] = $this->model_berita->getAllBeritaById($id_berita);
// $data['berita'] = $this->db->get('berita')->result_array();
// $data['berita'] = $this->model_berita->getNama();
$this->form_validation->set_rules('judul_berita', 'Judul Berita', 'required');
$this->form_validation->set_rules('isi_berita', 'Isi Berita', 'required');
if ($this->form_validation->run() == false) {
$this->load->view('templates/header', $data);
$this->load->view('templates/sidebar', $data);
$this->load->view('templates/topbar', $data);
$this->load->view('operator/editberita', $data);
$this->load->view('templates/footer');
} else {
$judul_berita = $this->input->post('judul_berita');
$slug_berita = url_title($this->input->post('judul_berita'), 'dash', 'TRUE');
$isi_berita = $this->input->post('isi_berita');
$tgl_berita = date('Y-m-d H:i:s');
$id = $this->session->userdata('id');
// Cek Jika Ada Gambar Yang DiUpload
$upload_image = $_FILES['gambar_berita'];
if ($upload_image) {
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '2048';
$config['upload_path'] = './gambar_berita/';
$this->load->library('upload', $config);
if ($this->upload->do_upload('gambar_berita')) {
$old_image = $data['berita']['gambar_berita'];
if ($old_image != 'default.jpg') {
unlink(FCPATH . 'gambar_berita/' . $old_image);
}
$new_image = $this->upload->data('file_name');
$this->db->set('gambar_berita', $new_image);
} else {
echo $this->upload->display_errors();
}
}
$this->db->set('id_berita', $id_berita);
$data = array(
'judul_berita' => $judul_berita,
'isi_berita' => $isi_berita
);
$this->db->where($data);
$this->db->update('berita');
$this->session->set_flashdata('message', '<div class="alert alert-success" role ="alert"> Berita Berhasil di Reposting </div>');
redirect('operator/berita');
}
}
贝里塔模型。php
public function getAllBeritaById($id_berita)
{
return $this->db->get_where('berita', ['id_berita' => $id_berita])->row_array();
}
查看编辑。php
<!-- CK Editor 4 -->
<script src="<?= base_url('ckeditor/'); ?>ckeditor.js"></script>
<script src="<?= base_url('ckeditor/'); ?>samples/js/sample.js"></script>
<link href="<?= base_url('ckeditor/'); ?>samples/css/samples.css" rel="stylesheet">
<link href="<?= base_url('ckeditor/'); ?>samples/toolbarconfigurator/lib/codemirror/neo.css" rel="stylesheet">
<!-- Begin Page Content -->
<div class="container-fluid">
<!-- Page Heading -->
<h1 class="h3 mb-4 text-gray-800">
<?= $title; ?></h1>
<div class="row">
<div class="col-lg">
<?php if (validation_errors()) : ?>
<div class="alert alert-danger" role="alert">
<?= validation_errors(); ?>
</div>
<?php endif; ?>
<?= $this->session->flashdata('message'); ?>
<?= form_open_multipart('operator/edit_berita') ?>
<form action="" method="post">
<input type="hidden" name="id" value="<?= $berita['id_berita']; ?>">
<div class="modal-body">
<div class="form-group">
<small>Masukkan Judul Berita</small>
<input type="text" value="<?= $berita['judul_berita']; ?>" class="form-control" id="judul_berita" name="judul_berita" placeholder="Judul Berita..." required>
</div>
<div class="form-group">
<small>Masukkan Isi Berita</small>
<textarea class="form-control" name="isi_berita" id="editor" required><?= $berita['isi_berita']; ?></textarea>
</div>
<div class="form-group">
<label for="gambar_berita">Ganti Gambar Berita</label>
<div class="col-sm-12">
<div class="row">
<div class="col-sm-3">
<img src="<?= base_url('gambar_berita/') . $berita['gambar_berita']; ?>" class="img-thumbnail" alt="Gambar Berita">
</div>
<div class="col-sm-9">
<div class="custom-file">
<input type="file" class="custom-file-input" id="gambar_berita" name="gambar_berita">
<label class="custom-file-label" for="gambar_berita">Choose File</label>
</div>
</div>
</div>
</div>
<br>
<button type="reset" class="btn btn-danger" data-dismiss="modal">Reset</button>
<button type="submit" class="btn btn-primary">Add</button>
</div>
</form>
</div>
</div>
</div>
<!-- /.container-fluid -->
</div>
<!-- End of Main Content -->
<script>
initSample();
</script>
我尝试了很多方法,但仍然是个错误。请提供帮助,以便我的新闻更新功能能够正常工作。谢谢
你的错误清楚地说明了你的方法。
public function edit_berita($id_berita)
需要一个参数,您已将其命名为$id\u berita。
我不知道为什么你决定在这个方法中有一个参数,所以我只能提出一些建议来帮助你解决你的问题。
根据我从您提供的代码中收集的信息,您可以尝试以下选项。。。
选项1:从您的表单中可以看出,您将此作为隐藏输入发布,因此您应该从发布数据中检索它。
<input type="hidden" name="id" value="<?= $berita['id_berita']; ?>">
所以你的方法应该是。。。
public function edit_berita()
{
$id_berita = $this->input->post('id'); // This needs to be validated
// The rest of your code below here...
}
但在处理任何其他内容之前,我会先验证该值,看看它是否存在。
就我个人而言,我会在你的表格中将它命名为id_berita,以保持事物的一致性,避免错误。
选项2:另一个选项是修改您的表单
<?= form_open_multipart('operator/edit_berita') ?>
要包含作为参数传递的id
<?= form_open_multipart('operator/edit_berita/'.$berita['id_berita']) ?>
您必须通过使用浏览器“查看源代码”检查HTML源代码,并检查HTML以查看它是否位于正确的位置。
这将允许您使用现有的方法
public function edit_berita($id_berita)
但同样,您需要验证传入的$id_berita是否正确。
无论你走哪条路,都是你的选择。您只需要通读代码并更好地理解它。
我希望这能给你一些指导。
单击视图上的“销售”按钮后出现错误 错误: 遇到未捕获的异常 类型:ArgumentCountError 消息:太少的参数功能猫100::销售(),0传递在C:\xampp\htdocs\catshop 100\system\core\CodeIgniter.php在第532行,正好1预期 文件名:C:\xampp\htdocs\catshop100\application\controllers
当我的WooCommerce购物车页面为空时,我会在页面上出现此错误,我如何消除此错误消息? 致命错误:未捕获的ArgumentCountError:参数太少,无法执行wc_get_page_id(),0在第30行 /home/s3morder/public_html/wp-content/themes/Intranet主题/伍兹商业/购物车/cart-empty.php中传递,而在 /home/
我知道有一些与此相关的问题,但是有c或其他语言。我得到了这个错误,我不确定我的功能出了什么问题。这是我的错误 致命错误:Uncaught ArgumentCounter错误:函数Admincategory::deletecategory()的参数太少,在F:\xampp\htdocs\digikalamvc\core\app中传递了0。php位于第34行,在F:\xampp\htdocs\digi
我得到以下错误: 致命错误:Uncaught ArgumentCounter错误:参数太少,无法使用wpdb::prepare()函数,第635行的/home/admin/public_html/ocarinatab.com/wp-content/plugins/ocarina-tabs/ocarina-tabs.php中传递了1个,在/home/admin/public_html/ocarina
我得到以下错误: 致命错误:Uncaught ArgumentCounter错误:函数wpdb::prepare()的参数太少,1传入/homepages/39/d740877019/htdocs/test/wp content/themes/eduma/formulaire_get。php位于第108行,在/homepages/39/d740877019/htdocs/test/wp inclu
我做了一个用于训练的MVC框架,我得到了这个错误并且我不确定我的函数出了什么问题。 当我打开如下链接:http://mvctrav.com/posts/show/6时,它会显示文章,但当删除id时,它会显示错误:http://mvctrav.com/posts/show/6 我的错误如下所示: 而我的职能是: 这是我的核心类: 我的问题是:链接http://mvctrav.com/posts/sh