phpMyAdmin
 sql >> Cơ Sở Dữ Liệu >  >> Database Tools >> phpMyAdmin

Lỗi nghiêm trọng:Uncaught ArgumentCountError:Quá ít đối số để hàm Admincategory ::deletecategory (),

Đôi khi nó xảy ra rằng AdminCategory ::deletecategory ($ parentId) được gọi mà không có tham số nhưng nguyên mẫu không có giá trị mặc định cho nó và do đó ngoại lệ được ném ra. Vì bạn nhận được dữ liệu từ một yêu cầu bài đăng và luôn có khả năng một danh mục không có cấp độ gốc, bạn có thể cấu trúc lại phương thức của mình để trông giống như sau:

function deletecategory($parentId = null)
{
    $ids = $_POST['id'];
    $this->model->deletecategory($ids);
    if (null !== $parentId) {
        header('location:'.URL.'admincategory/showchildren/'.$parentId);
    }
    // PUT MORE OF YOUR LOGIC HERE, I DO NOT KNOW WHAT SHOULD HAPPEN
}

Nếu bạn đang sử dụng cách nhập, gợi ý thích hợp hơn sẽ là làm cho phương pháp trông giống như

 function deletecategory(string $parentId = ''): void //void is for php7.1
 {
    $ids = $_POST['id'];
    $this->model->deletecategory($ids);
    if ('' !== $parentId) {
        header('location:'.URL.'admincategory/showchildren/'.$parentId);
    }
    // AGAIN LOGIC HERE
 }

Nếu bạn THỰC SỰ mong đợi rằng parentId PHẢI được chuyển thì thay vào đó hãy bọc trình gọi phương thức bằng try catch

if (method_exists($object, $this->method)) {
    try {
        call_user_func_array([$object, $this->method], $this->params);
    } catch (\Exception $ex) {
        // HANDLE EXCEPTION HERE
    }
}



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Làm quen với Cơ sở dữ liệu trong PhpMyAdmin

  2. Chèn các trường vào bảng cơ sở dữ liệu bằng PhpMyAdmin

  3. Truy vấn MySql không hoạt động trong PHP nhưng hoạt động trong phpMyAdmin

  4. MySQL PHPMyAdmin Error # 1062 - Mục nhập trùng lặp '0' cho khóa 'CHÍNH'

  5. Lỗi từ phmpMyAdmin khi được định cấu hình để truy cập máy chủ từ xa bằng ứng dụng khách phpMyAdmin cục bộ