Друзья, все привет!
уже голову всю сломал
я не профессиональный программист, но есть понимание того, как, в принципе, все работает, и какие-то легкие правки ocstore 2.3 делаю самостоятельно
возникла необходимость создания быстрого фильтра с индексной страницы сайта, с которой аяксом оправляется пост запрос на страницу контроллера
function changeFilterData() {
var formData = $("#search_form_wheels").serialize();
$.ajax({
type: "POST",
url: "index.php?route=revolution/ajaxfilterdiskov/quickfilter",
data: {form_data: formData},
контроллер лежит в соотв папке и называется как нужно, содержит требуемую функцию quickfilter()
<?php
class ControllerRevolutionAjaxfilterdiskov extends Controller {
public function quickfilter() {
mb_parse_str($_POST['form_data'], $formdata);
$query = '';
if ($formdata['razmer'] !='') {
$query .= ' AND razmer='.$formdata['razmer'];
}
if ($formdata['kol-vo-otverstij'] !='') {
$query .= ' AND otv='.$formdata['kol-vo-otverstij'];
}
if ($formdata['pcd'] !='') {
$query .= ' AND pcd='.$formdata['pcd'];
}
$this->load->model('extension/ajaxfilterdiskov');
$res = $this->model_ajax_filter_diskov->getDisklist($query);
код модели для выборки данных из базы:
class ModelAjaxFilterDiskov extends Model {
public function getDisklist($qry) {
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "podbor_diskov WHERE id<>0 " . $qry . " ORDER BY id ASC");
return $query->row;
}
на мой взгляд, все вроде ладно.
но обработчик php считает иначе
и выдает ошибку
PHP Fatal error: Call to a member function getDisklist() on null in в файле контроллера
вроде все сделал по схеме, но не работает. буду очень благодарен за помощь в решении вопроса