Jump to content

siv1987

Пользователи
  • В сети

  • Количество сообщений

    278
  • Reputation

    98 siv1987's Reputation

Everything posted by siv1987

  1. Этот файл как раз для этого и преднозначен. Не хватает абстракции в одном файле, создавайте приложение и разделяйте код по логике. Вы для начало напишите эти 1000 строк а потом уже будете думать надо ли расширятся или нет. Это частая ошибка новичков когда они с самого начала хотят написать мега крутую аппликацию с сложной структурой. https://ru.m.wikipedia.org/wiki/Model-View-Controller Значит вы не знакомы с паттерными проектирования.
  2. Код, как сказали выше, надо разделять от представления - шаблона. Пишите свою логику в методах класса, там подсветка и проверка синтаксиса работает, а шаблоны используйте только для оформления. Что мешает написать в том же методе hookData логику работы а потом скомпилировать шаблон на основе этих данных? Зачем городить костыли с инклудом левого файла, а потом еще придумывать как этот файл записать на диске при установке. Возьмите пару тройку плагинов которые используют нужный вам принцип и посмотрите какм там это реализовано, не нужно изобретать свои велосипеды, особенно когда знания языка не особо это позволяет. Php в шаблоне по большему счету делать нечего. В шаблонизаторе используются только простые выражения, там подсветка не нужна, вся логика отдельно.
  3. Для гостей кешируется шаблон на небольшой срок. Пару секунд абсолютно не критично и, если не ошибаюсь это время можно настроить. Инклуды это дичь, и не знаю чем это спасет ситуацю, но если так сильно хочеться можете попробовать всунуть ваш код в файле хука, отдельно от класса.
  4. 240млн просмотров? батенька да вы статистику накручиваете.
  5. Правильно так и должно быть, незачем ломать смылки. Если не ошибаюсь можно запретить домены в ссылках, и это будет правильнее.
  6. siv1987 posted пост в теме in Interface
    Прямые руки нынче на вес золота.
  7. Ставьте больше. Если есть профайлер можно посмотреть время выполнения участков кода. Если не хочется парится то да, чистый форум спасает.
  8. Не запрещено. Почему нет смысла увеличить время выполнения?
  9. За небольшую мотивацию могут состряпать скрипт который распарсит csv файл экспортированный из excel и создаст по нему темы на форуме с указанными настройками. Больше увы я не готов делать.
  10. Да не в коде, а в переменной. Где вы хотите получить, там и смотрите. $purchase->expire Если в том же месте где находится код для вставки в другую бд, то скорее всего так $purchase = $this->get_purchase(); $purchase->expire;
  11. Не цитируйте пожалуйста длинные сообщения или сообщения с кодом, читать такие партянки очень не удобно. В $purchase что? Смотрели?
  12. В таблицу? \IPS\Db::i('remote_database_name')->insert('your_table', array( 'license_key' => $this->key, 'field2' => 'value2', 'field3' => 'value2', ));
  13. Нет. if ( !$this->key ) { do { $this->key = $this->generate(); } while ( \count( \IPS\Db::i()->select( '*', 'nexus_licensekeys', array( 'lkey_key=?', $this->key ) ) ) ); /* create external connect */ \IPS\Db::i( 'remote_database_name', array( 'sql_host' => 'host', 'sql_user' => 'user', 'sql_pass' => 'pass', 'sql_database' => 'database', ) ); \IPS\Db::i('remote_database_name')->insert('your_table', array('license_key' => $this->key)); }
  14. SHOW TABLES FROM your_databases Пишите сами не копируйте запросы, чтото форум ломает при копирование текст SHOW DATABASES
  15. Выполнить запрос SHOW DATABASES в админцентр форума > Support > SQL Toolbox Или посмотреть в phpmyadmin На какой хрен засорять тему, он у меня и так есть. Вставьте после while ( \count( \IPS\Db::i()->select( '*', 'nexus_licensekeys', array( 'lkey_key=?', $this->key ) ) ) );
  16. mysql пользователь который использует форум имеет доступ к этой базе данных? Если да, то запрос можно выполнить от текущего подключения. Если нет то http://ipbskins.ru/forum/topic15779.html#entry105651 /* create external connect */ \IPS\Db::i( 'remote_database_name', array( 'sql_host' => 'host', 'sql_user' => 'user', 'sql_pass' => 'pass', 'sql_database' => 'database', ) ); \IPS\Db::i('remote_database_name')->insert('you_table', array('license_key' => $this->key));
  17. А чем таблица форума не устраивает? Можно создать mysql триггер таблицы при inserte чтобы данные копировались в другую таблицы. wanted, достаточно будет в конце условия добавить \IPS\Db::i()->insert( 'your_table', array( 'license_key' => $this->key ) ); Только насколько я понял ТС нужно вставить еще и в другую бд. Тут либо создать другое подключение, либо если у mysql пользователя есть доступ к этой бд, использовать нативный метод \IPS\Db::i()->query с указанием таблицы другой базы данных INSERT INTO other_db.your_table
  18. Обновить файл /ips_kernel/classEmail.php от версии 3.4.9 http://ipbskins.ru/forum/topic14872.html#entry99413 Пофиксить команду HELO http://ipbskins.ru/forum/topic14312.html#entry96013
  19. Это оказывается setter, он отрабатывает в обоих случаях. Только если вызвать его напрямую, поле не устанавливается в "changed to update". Вообще что касается обновления в БД, методы set_ лучше не использовать.
  20. Хм, используйте первый вариант. Только методом set_member_group_id при сохранение значение в бд не обновляется.
  21. $member = \IPS\Member::loggedIn(); if( $member->member_id ) { $member->member_group_id = %new_group_id; $member->save(); } $member = \IPS\Member::loggedIn(); if( $member->member_id ) { $member->set_member_group_id( %new_group_id ); $member->save(); }
  22. Так и перестраивается кеш через Саппорт. А почему у вас кеш шаблонов в uploads?.. Шаблон forumTable в версии 4.4 сильно ничем не отличается. Возможно дело не в нем самом, а в входящих данных. Нужно смотреть.
  23. siv1987 posted пост в теме in Invision Community 4 Support
    Форум использует запрос к бд для дополнительных полей. Отдельных методов нету. $profileFields = ['member_id' => %member_id, 'field_%id' => 'new_value']; \IPS\Db::i()->replace( 'core_pfields_content', $profileFields ); При большем желании можно написать плагин который добавит новый метод к \IPS\Member для обновления дополнительных полей.
  24. Какбы не тоже самое. Вам нужно или перестроить кеш шаблонов или обновить до актуальной версии.
  25. Ничего странного как раз нету. В новой версии - новые файлы, а иногда и новая структура. При откате перезаливом сверху перезаписываются только пересекающиеся файлы, а новые, не совместимые со старой версии могут остаться вызывая проблемы.