COVID2019 и это вот все. Друзья, вся эта история начинает плохо пахнет. Мойте руки, не ходите в люди. Отложите все плановые покупки и положите в носок заначку. Заприте ваших родителей, бабушек-дедушек на даче. Лучше перебдеть чем недобдеть. Берегите себя!

Не сохраняет через editSetting


Recommended Posts

Здравствуйте, хочу понять странность editSetting в  OPENCART.CMS ©Версия 2.3.0.2.3

 

До этого любимой сборкой было ocStore 1,5,5,  сложностей не возникало, но  новые идеи хочется реализовать на 2,3

 

Создал свою папку в  admin/controller/cripto  (пробую создать не Расширение, а подраздел, например как Маркетинг ), закинул контроллер setting.php, внутрь закинул код:

Скрытый текст

<?php

class ControllerCriptoSetting extends Controller {
	private $error = array();

	public function index() {
		$this->load->language('cripto/ru');

		$this->document->setTitle($this->language->get('heading_title'));
		
		$this->load->model('setting/setting');
		if (($this->request->server['REQUEST_METHOD'] == 'POST')) {
			$this->model_setting_setting->editSetting('qwerty', $this->request->post);

			$this->session->data['success'] = $this->language->get('text_success');

		//	$this->response->redirect($this->url->link('extension/extension', 'token=' . $this->session->data['token'] . '&type=total', true));
		}
		
		$data['heading_title'] = $this->language->get('heading_title');
		$data['button_save'] = $this->language->get('button_save');
		$data['button_cancel'] = $this->language->get('button_cancel');
		$data['text_default'] = $this->language->get('text_default');
		$data['text_newsletter'] = $this->language->get('text_newsletter');
		$data['text_customer_all'] = $this->language->get('text_customer_all');
		$data['text_customer'] = $this->language->get('text_customer');
		$data['text_customer_group'] = $this->language->get('text_customer_group');
		$data['text_affiliate_all'] = $this->language->get('text_affiliate_all');
		$data['text_affiliate'] = $this->language->get('text_affiliate');
		$data['text_product'] = $this->language->get('text_product');
		$data['text_loading'] = $this->language->get('text_loading');
		$data['entry_apikey'] = $this->language->get('entry_apikey');
		$data['entry_apisecret'] = $this->language->get('entry_apisecret');
		$data['entry_customer_group'] = $this->language->get('entry_customer_group');
		$data['entry_customer'] = $this->language->get('entry_customer');
		$data['entry_affiliate'] = $this->language->get('entry_affiliate');
		$data['entry_product'] = $this->language->get('entry_product');
		$data['entry_subject'] = $this->language->get('entry_subject');
		$data['entry_message'] = $this->language->get('entry_message');

		$data['help_customer'] = $this->language->get('help_customer');
		$data['help_affiliate'] = $this->language->get('help_affiliate');
		$data['help_product'] = $this->language->get('help_product');

		$data['button_send'] = $this->language->get('button_send');
		$data['button_cancel'] = $this->language->get('button_cancel');

		$data['token'] = $this->session->data['token'];

		$data['breadcrumbs'] = array();

		$data['breadcrumbs'][] = array(
			'text' => $this->language->get('text_home'),
			'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], true)
		);

		$data['breadcrumbs'][] = array(
			'text' => $this->language->get('heading_title'),
			'href' => $this->url->link('cripto/setting', 'token=' . $this->session->data['token'], true)
		);
		$data['action'] = $this->url->link('cripto/setting', 'token=' . $this->session->data['token'], true);
		$data['cancel'] = $this->url->link('cripto/home', 'token=' . $this->session->data['token'], true);
		
		if (isset($this->request->post['key'])) {
			$data['key'] = $this->request->post['key'];
		} else {
			$data['key'] = $this->config->get('qwerty');
		}
		if (isset($this->request->post['secret'])) {
			$data['secret'] = $this->request->post['secret'];
		} else {
			$data['secret'] = $this->config->get('qwerty');
		}

		$data['header'] = $this->load->controller('common/header');
		$data['column_left'] = $this->load->controller('common/column_left');
		$data['footer'] = $this->load->controller('common/footer');

		$this->response->setOutput($this->load->view('cripto/setting', $data));
	}

}

 

создал тпл файлик:

Скрытый текст

<?php echo $header; ?><?php echo $column_left; ?>
<div id="content">
  <div class="page-header">
    <div class="container-fluid">
      <div class="pull-right">
        <button type="submit" form="form-review" data-toggle="tooltip" title="<?php echo $button_save; ?>" class="btn btn-primary"><i class="fa fa-save"></i></button>
        <a href="<?php echo $cancel; ?>" data-toggle="tooltip" title="<?php echo $button_cancel; ?>" class="btn btn-default"><i class="fa fa-reply"></i></a></div>
      <h1><?php echo $heading_title; ?></h1>
      <ul class="breadcrumb">
        <?php foreach ($breadcrumbs as $breadcrumb) { ?>
        <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li>
        <?php } ?>
      </ul>
    </div>
  </div>
  <div class="container-fluid">
    <div class="panel panel-default">
      <div class="panel-heading">
        <h3 class="panel-title"><i class="fa fa-envelope"></i> <?php echo $heading_title; ?></h3>
      </div>
      <div class="panel-body">
        <form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data"  id="form-review" class="form-horizontal">
          <div class="form-group to" id="key">
            <label class="col-sm-2 control-label" for="key"><span data-toggle="tooltip" title="<?php echo $help_customer; ?>"><?php echo $entry_apikey; ?></span></label>
            <div class="col-sm-10">
              <input type="text" name="key" value="<?php echo $key; ?>" placeholder="<?php echo $entry_customer; ?>" id="key" class="form-control" />
            </div>
          </div>
          <div class="form-group to" id="secret">
            <label class="col-sm-2 control-label" for="input-customer"><span data-toggle="tooltip" title="<?php echo $help_customer; ?>"><?php echo $entry_apisecret; ?></span></label>
            <div class="col-sm-10">
              <input type="text" name="secret" value="<?php echo $secret; ?>" placeholder="<?php echo $entry_customer; ?>" id="secret" class="form-control" />
            </div>
          </div>

        </form>
      </div>
    </div>
  </div>

<?php echo $footer; ?>

 

При сохранении в таблице oc_setting не создается qwerty

 

Попробовал пойти другим путем, отключить POST

if (($this->request->server['REQUEST_METHOD'] == 'POST') && $false)

В  tpl вставил <?php print_r($_POST); ?>, чтобы посмотреть, что уходит с формы и там все нормально:

Array ( [key] => 123 [secret] => 2ввыс )

 

Что же не так? Натолкните на мысль, перелопать весь код магазина - полезно для развития, но может отнять много времени.

 

Картинки, код и логи убирайте под спойлер.

Ссылка на комментарий
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу