Jump to content

alexivchenko

Пользователь
  • Content Count

    359
  • Joined

Posts posted by alexivchenko

  1. 6 минут назад, ST_RU сказал:

     

     

    Ещё раз. Проблема была в том,, что ключ устарел на демо. поставил новый сейчас. всё работает. проверяйте. http://base-market.demo-wsite.ru/cart

    И RTFM !!! всё же написано, как подключать ;)

    с вашим токеном работает нормально, а я уже раз 15 обновил свой ключ и все 403 ошибку ловлю 

  2. 35 минут назад, daramal сказал:

    Друзья, как сдвинуть товары в каталоге, которых нет в наличии в конец список?

     

    Спасибо за любую информацию!

    Было бы не плохо не просто сдвинуть вниз, а убрать из общего потока отсутствующие товары и автоматом создать под общим потоком в категории новый блок, в котором будут товары, блок который будет называться типа "ожидается поступление" и в нем отсутствующие товары. 

    Идем в \api\Products.php ищем в get_products($filter = array()) {...} 

     		if(!empty($filter['sort']))
    			switch ($filter['sort'])
    			{
    				case 'position':
    				$order = 'p.position DESC';
    				break;
    				case 'name':
    				$order = 'p.name';
    				break;
    				case 'created':
    				$order = 'p.created DESC';
    				break;
    				case 'price':
    				//$order = 'pv.price IS NULL, pv.price=0, pv.price';
    				$order = '(SELECT -pv.price FROM __variants pv WHERE (pv.stock IS NULL OR pv.stock>0) AND p.id = pv.product_id AND pv.position=(SELECT MIN(position) FROM __variants WHERE (stock>0 OR stock IS NULL) AND product_id=p.id LIMIT 1) LIMIT 1) DESC';
    				break;
    			}

    меняем или ищем по аналогии и заменяем

     		if(!empty($filter['sort']))
    			switch ($filter['sort'])
    			{
    				case 'position':
    				$order = 'IF((SELECT COUNT(*) FROM __variants WHERE (stock>0 OR stock IS NULL) AND product_id=p.id LIMIT 1), 1, 0) DESC,p.position DESC';
    				break;
    				case 'name':
    				$order = 'IF((SELECT COUNT(*) FROM __variants WHERE (stock>0 OR stock IS NULL) AND product_id=p.id LIMIT 1), 1, 0) DESC,p.name';
    				break;
    				case 'created':
    				$order = 'IF((SELECT COUNT(*) FROM __variants WHERE (stock>0 OR stock IS NULL) AND product_id=p.id LIMIT 1), 1, 0) DESC,p.created DESC';
    				break;
    				case 'price':
    				//$order = 'pv.price IS NULL, pv.price=0, pv.price';
    				$order = '(SELECT -pv.price FROM __variants pv WHERE (pv.stock IS NULL OR pv.stock>0) AND p.id = pv.product_id AND pv.position=(SELECT MIN(position) FROM __variants WHERE (stock>0 OR stock IS NULL) AND product_id=p.id LIMIT 1) LIMIT 1) DESC';
    				break;
    			}

    Мне подсказал @Maksclub и описано тут 

     

  3. 6 минут назад, get31 сказал:

    а без геморроя никак? в вайбере приходит от большинства магазинов без авторизаций и пр .

    сделать проверку если ли этот номер в телеграм, и если есть то прислать смс

    Проще никак, в viber и WhatsApp происходит обмен данными через api и нужен бизнес аккаунт. Тем более данные пользователей у этих месенджеров открыты. Можно также подключить рассылку через посредника, но это тоже через api. 
    А в телеграмм, чтобы получить данные пользователя, нужно чтобы пользователь разрешил ими делиться, а это авторизоваться через бот и отправить боту номер телефона, чтобы бот мог проверить или авторизоваться через бот, бот отправит код присвоенный пользователю в базе и проверит его. 

  4. 3 минуты назад, xikarx сказал:

    Друзья, помогите с вопросом, кому не лень.

    пытаюсь осваивать php и что-то самому сделать в Simple.

    Нужно при оформлении заказа добавить пару дополнительных полей.

    Еще одно имя и номер телефона.

    Я добавил в БД, в s_orders, дополнительные ячейки name2 и phone2.

    в cartView зарегистрировал переменные

    $order->name2       = $this->request->post('name2');
    $order->phone2       = $this->request->post('phone2');

    ну и разумеется в шаблоне в форме поля для добавления сделал. 

    вроде все ништяк - в БД новые данные добавляются.

    А вот в админке на странице заказа вывести эти данные не могу.

    прописываю {$order->name2|escape} - и ничего.

    что и где я упустил?

     

    https://habr.com/ru/sandbox/108012/

  5. 2 часа назад, get31 сказал:

    а как сделать, чтобы приходило еще пользователю уведомление о его заказе? 

    Имя, спасибо за заказ, ваш номер заказа 100500, и бла бла бла...

    Писать бота Телеграмм, подключать его к базе users. Просить пользователя авторизоваться в боте, бот проверяет пользователя по номеру или по коду. Отправлять уведомление по коду в базе и номеру 

  6. 9 минут назад, get31 сказал:

    Проверял уже, путь правильный. Ничего не менялось и работало всегда, просто с не того ни сего страница не найдена....

    Попробуйте закомментировать файл .htaccess в папке simpla/, чтобы файл получил имя _.htaccess

    проверьте, есть ли доступ в админку без проверки 

  7. 30 минут назад, get31 сказал:

    В том то и дело, что ошибки вроде как нет, скачал и поставил на локалку - работает, а на хостинге чёт не работает(

    Проверьте чтобы в строке 4 этого файла https://github.com/pikusov/Simpla/blob/master/simpla/.htaccess

    был правильно прописан путь до файла .passwd

     

    Создайте новый файл в корне сайта на хостинге put.php

    в тело файла вставьте это 

    <?php echo 'Document root: '.$_SERVER['DOCUMENT_ROOT'].'<br>'; echo 'Полный путь к скрипту и его имя: '.$_SERVER['SCRIPT_FILENAME'].'<br>'; echo 'Имя скрипта: '.$_SERVER['SCRIPT_NAME']; ?>

  8. 8 часов назад, get31 сказал:

    Добрый день.

    Подскажите пожалуйста, возможно кто-то сталкивался...

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

    Потом попробовал поиграться с версиями пхп....стояла и стоит 5.6.....при переносе на 5.2 в админку смог попасть, но если зайти с другого браузера то все равно адресует на 404 станицу "страница не доступна". Менять постоянно версии пхп для входа в админку не вариант....

    В чем может быть причина?

    Попробуйте войти site.com/simpla/

    Слэш на конце обязателен, если так же 404, тогда нужно переписывать авторизацию. Есть приложения в браузере, которые режут ответ браузера. 
    Правильней будет не на стороне браузера делать проверку авторизации, как сейчас в Simpla, а на стороне сессии с проверкой в базе на наличие такое пользователя как админа. 

  9. 13 минут назад, Berze сказал:

    Есть ошибки в product_block.tpl 

    basketblock{$product->variant->id}

    basketblock{$product->variant->id}

    Нужно смотреть файл view/View.php на наличие get_products_plugin

     

    Есть вопрос к js/ajax_cart.js там обработчик // Аяксовая корзина 2 раза указан

     

    В целом добавляется товар в корину из мобильного, может кешируются данные 

  10. 50 минут назад, Berze сказал:

    Корзина AJAX не работает в карточке товара в мобильной версии. Не могу разобраться в чем проблема.

    О каком сайте идет речь? Об этом ecovalt.by?

  11. 2 часа назад, KeNs сказал:

    Вот что мне посоветовал яндекс, как это реализовать в сипле ?

     

     

    Добавьте в свой yandex.php где 

    <offer id='$p->variant_id' available='true'>

    после id='$p->variant_id добавьте group_id='$p->product_id'

    чтобы получилось так 

    <offer id='$p->variant_id' group_id='$p->product_id' available='true'>

    И тогда, если у товара есть варианты, товару с вариантом будет присвоен id корневого товара

    То что и рекомендует Yandex

  12. Администрация, планируется ли на форуме раздел "Блог" - для пользователей, чтобы писать что-то своё на тему Simpla и "Онлайн-Чат"?

    И не могли бы вы убрать "Новые сообщения" из мобильной версии, уж больно громосткий блок, листать долго ? 

  13. 2 часа назад, daramal сказал:

    заменил код с оригиналом и почистил папку. К сожалению, также (( в логах та же ошибка

    
    Uncaught  --> Smarty Compiler: Syntax error in template "simpla/design/html/pages.tpl"  on line 5 "<li {if $m->id == $menu->id}class="active"{/if}><a href="{url module=PagesAdmin menu_id=$m->id}">{$m->name}</a></li>"  - Unexpected "$", expected one of: "identifier" <-- 
      thrown in /var/www/clients/client3/web889/web/Smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php on line 5

     

    Посмотрите в файл /simpla/PagesAdmin.php и в /api/Pages.php где есть $menus

  14. 6 hours ago, cypherpunks said:

     

    Вот VPS свободный для этого и нужен. Дыра может быть и не в форуме. Кстати, из-за обновлений на PHP7 сломалось много старого кода, потому что Денис давно забросил Симплу.

     

    HTTPS обязателен в 2020 году.

    Я simpla с горем обновил до 7.1

    А вот форум для меня как каждодневный справочник и хочу чтобы он работал 24/7. У меня в аренде VPS и готов его безвозмездно отдать под базу или под сам форум бесплатно 

    сертификат не проблема,  сделаю 

  15.  

    Хотелось бы все таки самому разобраться (либо с помощью специалистов). А как тестировать и проверять этот запрос? Через phpmyadmin запрос который выводит то что мне надо выглядит вот так

     

    SELECT * FROM `s_options` WHERE `value` LIKE '%осень%' ORDER BY `value` ASC
    

     

     

    		if(isset($filter['discounted777']))
    			$discounted777_filter = $this->db->placehold("AND p.id in (SELECT product_id FROM __options WHERE value LIKE '%осень%')", intval($filter['discounted777']));
    
  16.  

    Хотелось бы все таки самому разобраться (либо с помощью специалистов). А как тестировать и проверять этот запрос? Через phpmyadmin запрос который выводит то что мне надо выглядит вот так

     

    SELECT * FROM `s_options` WHERE `value` LIKE '%осень%' ORDER BY `value` ASC
    

     

    if(isset($filter['discounted777']))
    $discounted777_filter = $this->db->placehold('AND (SELECT * FROM __options WHERE value LIKE '%осень%') ', intval($filter['discounted777'])); 
    
×
×
  • Create New...