Перейти к содержанию
Новая Simpla

Рекомендуемые сообщения

Опубликовано

Более новые версии Новая Simpla будут идти с приставкой admin.

Это значит, что классы движка на бэке(админка) и на фронте работают независимо друг от друга.

Так надо было сделать изначально самой simpla, но они этого не сделали.

Это очень удобно, когда вы хотите создать хороший многофункциональный магазин, в котором много по фильтрам запросов к БД, который приходится вешать и на фронт и на бэк одновременно. Кроме этого Вы имеете возможность вести работы по модернизации движка, не затрагивая сразу обе части движка, фронт и бэк.

Таким образом вам проще находить ошибки в движке, строить загрузчики для админки, подключать при необходимости разные БД. Все это в итоге будет повышать скорость движка, которая необходима там, где большие БД и много товаров.

Исправлено загрузка xml, для загрузки прайсов вам уже нет необходимости устанавливать на сервер консоль ru_RU.UTF-8. Будет работать на стандартной en_US.UTF-8.

Кому надо обновить импорт xml, скопируйте отсюда:

simpla/ajax/import.php

require_once('../../admin/Admin.php'); на require_once('../../api/Simpla.php');

class ImportAjax extends Admin; на  class ImportAjax extends Simpla

Измените в них:

require_once('admin/Admin.php'); на require_once('api/Simpla.php');

class ImportAdmin extends Admin; на class ImportAdmin extends Simpla

Обновлены в последней загрузке версии скриптов шаблона фронта default, jquery до последней версии 3.6.3

new_simpla-b5-php-8.2.1-2-admin.zip

Опубликовано

При установке, шаг: Задайте логин и пароль администратора сайта.

Warning: Undefined array key "login" in D:\OSPanel\domains\simpla8admin.loc\install.php on line 343
Warning: Undefined array key "password" in D:\OSPanel\domains\simpla8admin.loc\install.php on line 344

PHP 8.1
Так же в simpla.sql лучше все MyISAM заменить на InnoDB. CHARSET указать utf8mb4 вместо utf8mb3 и убрать COLLATE. При импорте sql сам проставит актуальные значения. 

Опубликовано

Уважаемый сергеевич, да не пишите ему. У него в админке при выборе шаблона Fatal error и еще где-то. Я ему конкретно об этом написал, а он мне в ответ:
 

У вас проблема с подключением к базе данных, скорей всего вы используете старый файл, где функция подключения к БД не переписана.

Данная ошибка не может быть в 165 строке Database.php скрипта, который вы, как говорите , скачали.

Движок скачан отсюда. Я ему конкретно привожу функцию и строку, где ошибка, а он мне в ответ образно выражаясь: "Этого не может быть, потому что этого не может быть, мол проблема у вас, а у нас все хорошо". Движок бадяжный, нормально не работает на линейке 8.1.x

Опубликовано
48 минут назад, Alex сказал:

Уважаемый сергеевич, да не пишите ему. У него в админке при выборе шаблона Fatal error и еще где-то. Я ему конкретно об этом написал, а он мне в ответ:
 

У вас проблема с подключением к базе данных, скорей всего вы используете старый файл, где функция подключения к БД не переписана.

Данная ошибка не может быть в 165 строке Database.php скрипта, который вы, как говорите , скачали.

Движок скачан отсюда. Я ему конкретно привожу функцию и строку, где ошибка, а он мне в ответ образно выражаясь: "Этого не может быть, потому что этого не может быть, мол проблема у вас, а у нас все хорошо". Движок бадяжный, нормально не работает на линейке 8.1.x

Масса сайтов работает на этом движке, но вы можете не писать)

Опубликовано
3 часа назад, sergeevizh сказал:

При установке, шаг: Задайте логин и пароль администратора сайта.

Warning: Undefined array key "login" in D:\OSPanel\domains\simpla8admin.loc\install.php on line 343
Warning: Undefined array key "password" in D:\OSPanel\domains\simpla8admin.loc\install.php on line 344

PHP 8.1
Так же в simpla.sql лучше все MyISAM заменить на InnoDB. CHARSET указать utf8mb4 вместо utf8mb3 и убрать COLLATE. При импорте sql сам проставит актуальные значения. 

Это не ошибки, а рекомендации, они ни на что не влияют. Инсталятор этот с php 7, не исправлялся под 8-ку на notice. 

Вы можете закоментить в инсталяторе: error_reporting(E_ALL ^ E_NOTICE); Они светится не будут !!

Опубликовано
2 часа назад, Alex сказал:

Уважаемый сергеевич, да не пишите ему. У него в админке при выборе шаблона Fatal error и еще где-то. Я ему конкретно об этом написал, а он мне в ответ:
 

У вас проблема с подключением к базе данных, скорей всего вы используете старый файл, где функция подключения к БД не переписана.

Данная ошибка не может быть в 165 строке Database.php скрипта, который вы, как говорите , скачали.

Движок скачан отсюда. Я ему конкретно привожу функцию и строку, где ошибка, а он мне в ответ образно выражаясь: "Этого не может быть, потому что этого не может быть, мол проблема у вас, а у нас все хорошо". Движок бадяжный, нормально не работает на линейке 8.1.x

Я кстати тоже не смог воспроизвести вашу ошибку и в строке 165 Database.php у меня просто закрывающая скобка.

Опубликовано
1 час назад, admin сказал:

Это не ошибки, а рекомендации, они ни на что не влияют. Инсталятор этот с php 7, не исправлялся под 8-ку на notice. 

Вы можете закоментить в инсталяторе: error_reporting(E_ALL ^ E_NOTICE); Они светится не будут !!

Или сделать как везде в шаблонах обернуть в isset()

На счет 

Warning: Undefined variable $tmp in D:\OSPanel\domains\simpla8admin.loc\install.php on line 411

Нужно изменить

    for ($i = 0; $i < 5; $i++) {
        $k = $i + 6;
        $j = $i + 12;
        if ($j == 16) $j = 5;
        $tmp = $bin[$i] . $bin[$k] . $bin[$j] . $tmp;
    }

на

    $tmp = '';
    for ($i = 0; $i < 5; $i++) {
        $k = $i + 6;
        $j = $i + 12;
        if ($j == 16) $j = 5;
        $tmp = $bin[$i] . $bin[$k] . $bin[$j] . $tmp;
    }

и удалить проверку лицензии function check_license($license) {...}

поправить function unzip() {...} убрать pclzipdefines();

почистить от устаревших функций

Опубликовано

На странице слайдеров /simpla/index.php?module=SliderAdmin

Fatal error: Uncaught Error: Class "Simpla" not found in D:\OpenServer\domains_tests\simpla8admin.loc\simpla\SliderAdmin.php:19 Stack trace: #0 D:\OpenServer\domains_tests\simpla8admin.loc\simpla\IndexAdmin.php(100): require_once() #1 D:\OpenServer\domains_tests\simpla8admin.loc\simpla\index.php(36): IndexAdmin->__construct() #2 {main} thrown in D:\OpenServer\domains_tests\simpla8admin.loc\simpla\SliderAdmin.php on line 19

Нужно в simpla\SliderAdmin.php в строке 19

class SliderAdmin extends Simpla
{

заменить на 

class SliderAdmin extends Admin
{

 

Опубликовано
47 минут назад, sergeevizh сказал:

на странцие simpla/index.php?module=PaymentMethodAdmin Добавления способа оплаты
Не работает выбор метода, все методы вылезли на страницу

Это так работает на simpla. Вы же не выбираете способ оплаты, а создаете его.

Для чего simpla вывела все это, даже не знаю.

Можете об этом почитать у самой симплы, т.к. там ничего не переделывалось и там все есть так, как сделала сама simpla.

Способы оплаты тоже не проверялись,т.к. проще написать модуль под конкретный метод оплаты, который нужен. 

Оплата есть такой, какой ее нам оставила simpla еще в те годы.

Думаю, кому надо, тот сделает под себя, как собственно это и раньше было)

Опубликовано (изменено)

Ну и раз разнесли фронт и бек.

То и модели бека лучше перенести в папку /simpla/, контроллеры тоже вынести в отдельную папку и получить дерево:

/simpla/

/simpla/ajax/

/simpla/cml/

/simpla/controller/

/simpla/design/

/simpla/files/

/simpla/model/

/simpla/pclzip/

/simpla/rest/

/simpla/update/

/simpla/.htaccess

/simpla/.passwd

/simpla/.index.php

Папку /api/ разнести на модели фронта и настройки 

Папку /view/ переименовать в controller, так как view это design

Отказаться от генерации капчи средствами PHP

Smarty/PHPMailer/MobileDetect/PCLZip через Composer

Ну в общем, привести все к нормальному MVC 😃 и тогда будет пушка

Изменено пользователем sergeevizh
Опубликовано
7 минут назад, admin сказал:

Это так работает на simpla. Вы же не выбираете способ оплаты, а создаете его.

Для чего simpla вывела все это, даже не знаю.

Можете об этом почитать у самой симплы, т.к. там ничего не переделывалось и там все есть так, как сделала сама simpla.

Способы оплаты тоже не проверялись,т.к. проще написать модуль под конкретный метод оплаты, который нужен. 

Оплата есть такой, какой ее нам оставила simpla еще в те годы.

Думаю, кому надо, тот сделает под себя, как собственно это и раньше было)

Вы не правы, ваши isset() если убрать и поправить генерацию select то выбор способа оплаты будет нормальным. 

 image.thumb.png.6565a8d3a31718fbf79cc779534c32ff.png

Стандартный вывод выбора способа оплаты на чистой SimplaCMS

Опубликовано
1 минуту назад, sergeevizh сказал:

Ну и раз разнесли фронт и бек.

То и модели бека лучше перенести в папку /simpla/, контроллеры тоже вынести в отдельную папку и получить дерево:

/simpla/

/simpla/ajax/

/simpla/cml/

/simpla/controller/

/simpla/design/

/simpla/files/

/simpla/model/

/simpla/pclzip/

/simpla/rest/

/simpla/update/

/simpla/.htaccess

/simpla/.passwd

/simpla/.index.php

Папку /api/ разнести на модели фронта и настройки 

Папку /view/ переименовать в conroller, так как view это design

Отказаться от генерации капчи средствами PHP

Smarty/PHPMailer/MobileDetect/PCLZip через Composer

Ну в общем, привести все к нормальному MVC 😃 и тогда будет пушка

А зачем? Много работы и будет больше ошибок, а реально это ничего не даст. Есть в админке подключение капчи гугл, кому надо, какие проблемы.

В остальном пока нет особого смысла для того, чтобы сделать необходимый сайт. Этот проект не столько развитие simpla, сколько ее реанимация, 

т.к. для сайта-пушки надо просто писать новый движок на фреймворке.

Опубликовано
4 минуты назад, sergeevizh сказал:

Вы не правы, ваши isset() если убрать и поправить генерацию select то выбор способа оплаты будет нормальным. 

 image.thumb.png.6565a8d3a31718fbf79cc779534c32ff.png

Стандартный вывод выбора способа оплаты на чистой SimplaCMS

Может быть, не занимался этим вопросом. Надо будет исправить, т.к. я даже не помню, как оно было еще тогда.

Опубликовано
1 минуту назад, admin сказал:

А зачем? Много работы и будет больше ошибок, а реально это ничего не даст. Есть в админке подключение капчи гугл, кому надо, какие проблемы.

В остальном пока нет особого смысла для того, чтобы сделать необходимый сайт. Этот проект не столько развитие simpla, сколько ее реанимация, 

т.к. для сайта-пушки надо просто писать новый движок на фреймворке.

Очень жаль, что не умеете прислушиваться. 

Буду следить дальше.

Опубликовано
1 минуту назад, sergeevizh сказал:

Очень жаль, что не умеете прислушиваться. 

Буду следить дальше.

Просто нет времени бесплатно этим заниматься) Для себя я решаю все необходимые вопросы по мере их поступления) 

Вообще это больше для тех, кто сам кому делает магазин и может доделать то, что недоделано)

Опубликовано

Еще замечу, что в каталоге, фильтр не работает, ошибка 

Uncaught TypeError: Cannot read properties of undefined (reading 'count')
    at Object.success (filter.min.js:1262:68)
    at options.success (filter.min.js:170:26)
    at j (jquery.min.js:2:26860)
    at Object.fireWith [as resolveWith] (jquery.min.js:2:27673)
    at x (jquery.min.js:4:11120)
    at XMLHttpRequest.<anonymous> (jquery.min.js:4:14767)

 

Опубликовано

Фильтр цен не проверяет диапазон цен.

Если в фильтре цен указать диапазон от 1000₽ до 2000₽, а после изменить значение первого диапазона в адресной строке, то получим ошибку.

Опубликовано
12 часов назад, sergeevizh сказал:

Фильтр цен не проверяет диапазон цен.

Если в фильтре цен указать диапазон от 1000₽ до 2000₽, а после изменить значение первого диапазона в адресной строке, то получим ошибку.

Да вроде нет такого. Посмотрите на демке, может я что-то не понял?

https://kievukr.pp.ua/catalog/mobilnye-telefony?cid=&keyword=&min_price=7809руб&max_price=34290руб

Опубликовано
13 часов назад, sergeevizh сказал:

Еще замечу, что в каталоге, фильтр не работает, ошибка 

Uncaught TypeError: Cannot read properties of undefined (reading 'count')
    at Object.success (filter.min.js:1262:68)
    at options.success (filter.min.js:170:26)
    at j (jquery.min.js:2:26860)
    at Object.fireWith [as resolveWith] (jquery.min.js:2:27673)
    at x (jquery.min.js:4:11120)
    at XMLHttpRequest.<anonymous> (jquery.min.js:4:14767)

 

Да вроде все работает, демку вам кинул. Архив с нее сформирован.

Опубликовано
10 минут назад, admin сказал:

Да вроде все работает, демку вам кинул. Архив с нее сформирован.

Данная ошибка в PHP8.1 и Smarty4 из-за пустого ключа. У вас же я так понимаю, вывод ошибок выключен и ключи проверяются через isset();

На счет https://kievukr.pp.ua/catalog/mobilnye-telefony?cid=&keyword=&min_price=7809руб&max_price=34290руб

измените сумму 7809 на 7899999999909 будет ошибка, что товаров нет. А должна быть проверка на диапазон и редиректить на допустимые значения или вообще сбрасывать диапазон.

Опубликовано
2 минуты назад, sergeevizh сказал:

Данная ошибка в PHP8.1 и Smarty4 из-за пустого ключа. У вас же я так понимаю, вывод ошибок выключен и ключи проверяются через isset();

На счет https://kievukr.pp.ua/catalog/mobilnye-telefony?cid=&keyword=&min_price=7809руб&max_price=34290руб

измените сумму 7809 на 7899999999909 будет ошибка, что товаров нет. А должна быть проверка на диапазон и редиректить на допустимые значения или вообще сбрасывать диапазон.

Нет, на демке обязательно включ показ ошибок и на фронте, и на беке.

Я не вижу смысла в такой проверке, лишний код скрипта, что плохо.

Диапазон регулируется автоматически согласно цен выведенных товаров. Он не может показать неправильный вариант из панели управления фильтрами.

Ну а если править гет запрос, а кому это вообще надо, то логично он получит, что в этом диапазоне нет товаров.

Тоже самое он получает и когда нет товаров)

Опубликовано
14 часов назад, sergeevizh сказал:

Вы не правы, ваши isset() если убрать и поправить генерацию select то выбор способа оплаты будет нормальным. 

 image.thumb.png.6565a8d3a31718fbf79cc779534c32ff.png

Стандартный вывод выбора способа оплаты на чистой SimplaCMS

 

<div id="product_categories">
        <select name="module">
            <option value='null'>Ручная обработка</option>
               {foreach $payment_modules as $payment_module}
                <option value='{$payment_module@key|escape}' {if !empty($payment_method->module) && $payment_method->module == $payment_module@key}selected{/if} >{if isset($payment_module->name)}{$payment_module->name|escape}{/if}</option>
            {/foreach}
        </select>
</div>

 

{foreach $payment_modules as $payment_module}
            <div class="block layer" {if empty($payment_method->module)}style='display:none;'{/if} id=module_settings module='{$payment_module@key}'>
            <h2>{$payment_module->name}</h2>
            {* Параметры модуля оплаты *}

Сделать замены для файла payment_method.tpl.

 

 

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...