Программа Корпорация 2

Добавить в избранное   Сделать стартовой     home   map   mail  


 
E-Mail: rs@rsa.ms
Телефоны:
   +380 67 901-63-22, +380 63 108-17-00
ICQ: 131-674-371, Skype: rudjuk

 
Блог

Поиск на сайте


 
 

Партнёрские сайты

Бухгалтерское и юридическое обслуживание от Факториал Консалт

Итак Медиа Экспресс - широкоформатная печать, цифровая печать, производство этикеток, магнитов, сувенироной продукции.



Контактные линзы с доставкой
 

Облако тегов

1С-Битрикс 3D 3D-объект 3R AutoFill Begun CMF CMS CRM Delphi ERP FAQ Firebird Flash Flash-анимация Flash-баннер FreeBSD Google Google-почта Joomla Linux online-документация PHP RS RSS RSS-экспорт SQL VDoc Yandex Автоперевозки Администраторы Администрирование Анимация Баннер Битрикс Блог Веб-дизайн Веб-программирование Веб-программисты Виртуальная панорама Виртуальные панорамы Виртуальные туры Виртуальный тур Вопросы и ответы Гостиница Деньги Документация Документооборот Домен Заказать Заказать виртуальную панораму Заказать виртуальный тур Заказать сайт Заказать сайт на Joomla Зарплата Индивидуальные проекты Интернет Интернет-магазин История Калькулятор Каталог ссылок Контекстная реклама Контроль версий Корпорация Корпорация 1 Корпорация 2 Корпорация-Салон Купить Купить CRM-систему Купить виртуальный тур Купить доменное имя Купить программу Корпорация Купить сайт Купить сайт на Joomla Купить Слайд-Шоу Купить хостинг Магазин Обслуживание Обслуживание компьютеров Панорамы Партнёрам Поисковики Поисковые системы Порталы Портфолио Программа заполнения досок объявлений Программа контроля версия Программа приёма экзаменов Программа растановки мебели Программирование Программист Программисты Программы Продвинуть сайт Продлить доменное имя Работа Расчёт и проектирование шкафов Расчёт шкафов Регистрация доменов Реклама Реклама в интернет Рудюк Сайт Сайты Салон Скачать Скачать Корпорацию Скачать программу заполнения сайтов Скачать программу Корпорация Склад Слайд Слайд-Шоу Совместная работа Ссылки Тур Услуги Утилиты Учёт денег Хостер Хостинг Хостинг-провайдер Шкафная программа Шкафы Экзамен Экспериментальные программы Электроизмерения Яндекс
 
 
   
 

Блог

06.01.2009 Hostpro - провайдер с лимитами, не дающими нормально работать сайтам
Вот в очередной раз столкнулся с тем, что за красивой рекламой прячется плохая поддержка и высокие риски.

Так, например, столкнулся с таким провайдером, как Hostpro. Данный провайдер в рекламе пишет о не больших стоимостях хостинга 3-5$/мес за 100Мб дискового пространства.
Но, как оказалось, не всё так просто...

Для одного заказчика, мне пришлось воспользоваться услугами данной компании.
Записал маленький скрипт - на несколько байт, который просто обращается к серверу и выводит картинку.
Всё работало некоторое время нормально. Когда, вдруг в один прекрасный момент домен полностью отключили.
Как оказалось в процессе исследования ситуации отключили из-за того, что "скрипт сильно нагружает сервер". 5% в кратко-временном времени. И, что они отключают скрипты, если они потребляют более 5% процессорного времени или 256Кб памяти...
Такую нагрузку может создать любой скрипт. И тем более, любой более или менее посещаемый сайт....

Т.е. получается любой мало-мальски посещаемый сайт может быть отключен без предупреждения!!!

Это не правильно!
Т.к.:
1. Ведь вместо 100 Мб дискового пространства мой скрипт использует всего несколько кб. Т.е. не используется по крайней мере 99,9% дискового пространства! А дисковое пространство - это ведь тоже деньги.
2. Я не использую почту. А почта ведь тоже создаёт значительную нагрузку!
3. Расчёты хост-про не правильны. Т.к. 5%, на которые они показывают - это 5% одного виртуального процессора. Т.е. если у Вас 2 процессора у которых 4 ядра, то получится 8 виртуальных процессоров. И 5% - это 5% нагрузки на виртуальный процессор, а не на процессор в целом и тем более не сервер. Т.е. по сути моя нагрузка в этом случае - это 5/8 = 0,625% от всего сервера. Что нужно признать ну очень мизерная цифра.
4. Всесто того, чтоб бороться со своими клиентами, лучше бы оптимизировали свою систему.
У них до сих пор используется 1 уровневая система веб-сервера. А это очень не эффективно! Давно пора было переделать на 2-х уровневую систему веб-сервера nginx-apache!!!

Словом, очень не рекомендую кому-либо работать с Hostpro. Т.к. "скупой платит дважды", а с Hostpro Вы заплатите ещё больше...

05.01.2009 Рекомендации по разработке дизайна
Вот решил изложить некоторые рекомендации по разработке дизайна, т.к. дизайнеры часто повторяют одни и те же ошибки.

1. Каждый блок - законченная смысловая структура. Т.е. теги в ограничивающие блок должны начинаться в блоке и в нём заканчиваться. Ни в коем случае, теги, которые относятся к какому-то из блоков не должны находиться в других блоках.


2. Все изображения должны находиться в отдельной папке. Папка должна называться images. Ни в коем случае, не i или ещё какое-то одно-буквенное название...

3. Все пути к файлам должны быть относительными.

4. Логотип - чаще всего является ссылкой на начло сайта. Т.е. ссылкой на '/'
<a href='/'>... Логотип... </a>

5. Все стили - в отдельном файле стилей, который называется styles.css или style.css.

6. Не забывайте включать в дизайн все блоки, которые должны быть на сайте. Например, часто на сайте есть авторизация, значит в дизайне она тоже должна быть. Так же часто есть: поиск, карта сайта, меню (верхнее, левое, нижнее), смена страниц, полоса навигации (хлебная крошка), логотип, центральная часть (контент, каталог товаров и т.п.), новости, последние новости, анонсы, полоса прокрутки страниц, и т.п.

7. Лучше использовать div, а не таблицы для расположения блоков. Т.к. div обладает большей свободой, чем таблицы.

8. Название стилей должно быть осмысленным. Название полей, форм и т.п. тоже осмысленные.

9. Не забывайте заключать формы в тег для форм - form.

10. Кнопки должны быть кнопками, а не ссылками.

11. Обязательно указывайте стили для основных тегов, которые срабатывают по умолчанию.
Например, обязательно необходимо назначать стили:

h1, h2, h3, h4, h5, h6, body, a, a:hover и т.п. 

12. В стилях используйте комментарии.

13. Теги, закрывающие должны быть под тегами открывающими. Форматируйте корреткно текст.

14. Если грузится для стиля фоновое изображение для стиля, то вначале грузите простой фон, а потом, следующим захом - стиль с изображением.

15. Используйте по-максимуму стили по-умолчанию.
Например, если идёт заголовок страницы, используйте тег <h1>, а не указывайте отдельный div или класс для ячейки.

16. Форматируйте текст в стилях.
Не пишите так:
#knopka { background:url(/user/templates/alerta/images/fonsubmit.gif); background-repeat:repeat-x; border-color:#0f1324; border:none; color:#fff; font-size:11px; font-family:arial, verdana, sans-serif; font-weight:bold; text-align:center; padding-bottom:5px; padding-left: 6px; padding-right: 6px; padding-top:4px; height:23px; margin-top:1px;}

Лучше пишите так:
#knopka {
   background: url(/user/templates/alerta/images/fonsubmit.gif);
   background-repeat:repeat-x;
   border-color:#0f1324;
   border:none;
   color:#fff;

   font-size:11px;
   font-family:arial, verdana, sans-serif;
   font-weight:bold;
   text-align:center;

   padding-bottom:5px;
   padding-left: 6px;
   padding-right: 6px;
   padding-top:4px;

   height:23px;
   margin-top:1px;
}

Т.е. каждый отдельный тег - в отдельной строке и с некоторым отступом. При завершении смысловой группы можно отступать строчку.

17. Если пункты меню должны выделяться, то обязательно это должно быть показано в дизайне и в порезке. То же касается других смысловых элементов, например, хлебной крошки.

18. Если вы делаете стили для много-уровневого меню и т.п., корректно применяйте индексы стилей. Т.е. так, чтоб можно это было запрограммировать потом с наименьшими трудо-затратами.

Пример:
#menu a{ text-decoration: none; color:#1c144d;}
#menu2 a:hover{color:#d8354a;}
#menu1 a:hover{color:#d8354a;}
Это не правильно. Т.к. menu 3-х уровневое, а первый уровень меню - без индекса.
Более правильно:
#menu1 a{ text-decoration: none; color:#1c144d;}
#menu3 a:hover{color:#d8354a;}
#menu2 a:hover{color:#d8354a;}
 
19. Всегда проверяйте дизайн на нескольких основных бразурах: Internet Explorer 6, Opera 9 и выше, FireFox 3, Safary.

20. Не применяйте не стандартные шрифты. Тестируйте на машинах с минимально-установленными компонентами. Так, например, шрифт Arial Narrow не существует, если не установлен MsOffice. Поэтому, не рекомендуется его использовать.

21. Всегда устанавливайте цвет фона в Body, т.к. на некоторых браузерах можно указывать цвет фона для body по умолчанию. Поэтому, если Вы не укажете фон, будет срабатывать цвент по умолчанию, а он не всегда такой, как нужно для дизайна...
Так же не забывайте указывать цвет посещённых ссылок. Т.к. стили для них тоже указываются в браузерах.

22. Ссылки на другие сайты должны открываться в новом окне.
Например:
<a href="http://corp2.net"> RS™</a>
Это не правильно, т.к. открывается в том же окне, где находится сайт.

Правильно писать так:
<a href="http://corp2.net" target="_blank"> RS™</a>

30.12.2008 Мировые новости на нашей новой системе - Корпорация 2
У нас на сайте заработали мировые новости на новой системе сбора новостей, разработанной на системе Корпорация 2.
Посмотреть новый вариант мировых новостей можно по адресу:
http://corp2.net/news/allnews/

27.12.2008 Концепция локализации в системе Корпорация 2
В Корпорации 2 CMS созданы компоненты для локализации приложения.
Компонента называется translate.

translate - компонента реализующая непосредственно перевод.
lang_bar - компонента для вывода перечня языков в котором можно переключиться.

В основном классе Корпорации внесены 3 свойства, связанных с переводом (локализацией):

    public $lang='ru';  // Текущий язык публичной части
    public $lang_adm='ru';  // Текущий язык админ-части
    public $langs=array('ru','ua', 'en'); // Доступные языки

Соответственно, данные переменные можно указывать в основном конфигурационном файле: config_main.php

Для каждой компоненты есть папка lang в ней сохраняются файлы с массивами переводов.
Например:
/lang/ua/index.php - файл перевода для украинского языка.
Его содержимое:
<?
  defined( '_VALID_CORP' ) or die( 'Прямой вызов запрещён' );

$this->msg=array(
  array('login_label', 'Логін'),
  array('password_label' , 'Пароль'),
  array('reg_label' , 'Реєстрація'),
  array('forg_label' , 'Згадати пароль'),
  array('hello_label' , 'Ласкаво просимо'),
  array('exit_btn' , 'Вихід')

);

В компоненте, в которой реализовывается перевод создаётся класс перевода:
    function CMain()
    {
      $GLOBALS["c"]->ins_comp_file("translate/main_class.php");
      $this->trans=new translate($application);
      $this->trans->get_msg('auth');
    }

В шаблоне, используются вместо названий латинское обозначение выражения, например:
// Шаблон формы авторизации
$GLOBALS["myauth"]->auth_form='

                                      <form>
                                          <table width="100%" border="0" cellspacing="0" cellpadding="0">
                                            <tr>
                                              <td align="left" valign="top">
                                              <table width="100%" border="0" cellspacing="0" cellpadding="0">
                                                <tr>
                                                  <td align="left" valign="top">
                                                  <table width="100%" height="22" border="0" cellpadding="0" cellspacing="0">
                                                    <tr>
                                                      <td width="52" class="path"><%login_label%>:</td>
                                                      <td><label>
                                                        <input name="login_corp" type="text" class="str_001">
                                                      </label></td>
                                                    </tr>
                                                  </table>
                                                    <table width="100%" height="22" border="0" cellpadding="0" cellspacing="0">
                                                      <tr>
                                                        <td width="52" class="path"><%password_label%>:</td>
                                                        <td><label>
                                                          <input name="passwd_corp" type="password" class="str_001">
                                                        </label></td>
                                                      </tr>
                                                    </table></td>
                                                  <td width="25" align="right" valign="middle" class="tahoma_18_blue">


                                                     <input type="submit" name="sumbit_auth" value="" class="auth_button" />

                                                  </td>
                                                </tr>
                                              </table></td>
                                              </tr>
                                            <tr>
                                              <td height="25" align="left" valign="bottom" class="path2"><a href="/reg/"><%reg_label%></a> | <a href="/rest_pwd/"><%forg_label%></a></td>
                                            </tr>
                                          </table>
                                        </form>



Перед тем, как вывести информацию на экран, переводим её:
           echo $this->trans->tr($this->auth_form);

На данный момент, пример применения перевода можно просмотреть в компоненте авторизации auth.

27.12.2008 Импорт новостей через RSS в системе Корпорация 2 CMS
В системе Корпорация создано несколько новых компонент:

rss_grabber - грабитель RSS-новостей.
pages - компонента для смены страниц.

Так же усовершенствована работа компоненты новостей news для работы с большим количеством новостей.

Пример использования компоненты импорта новостей, вывода списка новостей и прокрутки страниц Вы можете просмотреть на тестовом сайте:
http://image.corp2.net/news/allnews/

26.12.2008 Проблема вставки кавычек в insert
В украинском языке часто в качестве апострофа вставляют одинарную кавычку.
Данный символ используется в SQL-запросах, как результат - не верное срабатывание SQL-запросов. Для того, чтоб SQL-запрос корректно воспринимался необходимо вместо 1 кавычки ставить 2 одинарных кавычки. В этом случае, в базу данных будет записана корректно 1 кавычка.

В Корпорации 2, чтобы не было конфликта с кавычками данная ситуация обрабатывается в командах кодирования/декодирования информации.
Таким образом, получается:
$GLOBALS["c"]->ec('Текст') - кодирует из кодировки сайта в кодировку базы данных, а так же заменяет одинарные кавычки на двойные, чтоб корректно срабатывал SQL, если есть одинарные кавычки в тексте.
$GLOBALS["c"]->dc('Текст') - декодирует из кодировки сайта в кодировку базы данных, а так же заменяет одинарные кавычки на двойные, чтоб корректно срабатывал PHP и Java-скрипт, если есть одинарные кавычки в тексте.

Так же сделаны 2 ф-ции, которые просто кодируют и декодируют информацию, но не заменяют кавычки. Эти функции пишутся так:
$GLOBALS["c"]->ec_simple('Текст') - кодирует из кодировки сайта в кодировку базы данных.
$GLOBALS["c"]->dc_simple('Текст') - декодирует из кодировки сайта в кодировку базы данных.

26.12.2008 Компоненты в системе Корпорация 2 CMS
Система Корпорация 2 быстро развивается. Мы уже разработали несколько десятков компонент. На данный момент в системе уже есть:

КОМПОНЕНТЫ РАЗНОГО НАЗНАЧЕНИЯ:
topmenu - вывод меню.
rewrite - ЧПУ, вывод заголовков. Компонента для переписывания выводимого контента.
pathway - компонент "хлебная крошка"
search - компонента поиска информации.
tiptop - советы дня.
inc_region - Включаемая область.
map - карта сайта.

РЕГИСТРАЦИЯ И АВТОРИЗАЦИЯ:
auth - авторизация.
reg_user - Регистрация пользователя.
forg_passwd - Функция "вспомнить пароль".

КАТАЛОГ ТОВАРОВ (ИНТЕРНЕТ-МАГАЗИН):
catalog_tov_dataset - класс SQL-запросов к базе данных для работы с каталогом товаров и товарами.
catalog_tov - каталог товаров (интернет-магазин).
group_tov - выводит группы товаров.
group_tov_map - карта групп товаров.
spis_tov - компонента, выводящая список товаров.
tov_detile - товары детально.
scroll_tov - полоса прокрутки товаров.
map_tov - компонента для вывода карты товаров. Работает в компоненте map.
gtov_menu - Меню из групп товаров (часто делается левым меню).
basket - Оформление заказа (корзина).
basket_informer - маленькая компонента-информер. Оповещает о количестве товаров в корзине, а так же содержит основной класс корзины.


АДМИНИСТРАТИВНЫЕ:
page_editors - кнопки для редактирования статической страницы.
fckeditor - редактор HTML.
page_props - свойства страницы.
edit_menu - редактор меню.

Основные принципы системы Корпорация 2:
1. Простота и лаконичность. Все компоненты просты в использовании и вызов их чаще всего занимает всего 1 строчку.
2. Модульность. Каждая компонента реашает одну маленькую задачу. Но, делает этот очень хорошо.
3. Надёжность и универсальность. За счёт того, что компоненты не велики по размеру и просты, они находят множество применений в других компонентах и разных проектах. И из-за этого хорошо отлаживаются, проверяются.

26.12.2008 Сохранение текстовой информации в Корпорации 2
Часто приходится сохранять текстовую информацию в файл.
Программисты порой этот процесс реализуют довольно запутанными способами, хотя на самом деле он может занимать всего несколько строк (а в Корпорации 2 - 1 строку).

           echo 'Записываемый файл: '.$filename.'<br>';

           if (is_writable(trim($filename))) { // Убеждаемся что файл доступен и существует для записи.
               $savesize=file_put_contents(trim($filename), $text_data);
           }else {
               echo "Файл $filename недоступен для записи";
           }

           return $savesize;

Сохраненеие в Корпорации 2:
$GLOBALS["c"]->save_textfile('Название файла','Текст, который хотим сохранить в файл');

26.12.2008 Корпорация 2009
В начале 2009 года мы планируем выпустить релиз нашего продукта Корпорация 2.
В качестве примера работы системы, на данном релизе предполагается выложить несколько сложных демонстрационных интернет-магазинов.
Так же планируется перевод всех программных продуктов на работу в системе Корпорация 2.

26.12.2008 Поломка одного из винчестеров на сервере
18 декабря 2009 года вышел из строя винчестер на сервере. В результате, были потеряны все базы данных, конфигурационные файлы и настроенная операционная система.
Пришлось заменить винчестер, переустановить операционную систему и восстановить данные из бекапов. К сожалению, прошлый полный бекап делался только вначале ноября. Из него и был восстановлен сайт.

Мы взяли с этого урок. И реализовали автоматизированную систему резервного копирования.
Которая копирует все основные конфигурационные файлы и базы данных:
1) Каждый месяц.
2) Каждую неделю.
3) Каждый день.
Таким образом, на 2-м винчестере хранится 3 резервные копии баз данных и конфигурационных файлов.

К сожалению, саму информацию не получилось с такой частотой архивировать, т.к. она архивировалась несколько дней, после чего пришлось прервать процесс архивации. В ближайшее время, мы реализуем свою админ-панель, а так же систему резервного копирования с помощью которой мы автоматизируем работу нашего хостинга, а так же усовершенствуюем систему архивирования. Так же, клиенты смогут в данной системе авторизироваться и получать последние бекапы. Кроме того, будет реализована возможность управления хостингом, а так же реализовано целый ряд дополнительных сервисных продуктов. Возможно, клиенты смогут воспользоваться нашей системой Корпорация 2 для создавния своих сайтов.

06.11.2008 Бесплатный хостинг
На днях возникла разместить информацию для одного проекта на других серверах. Решил сделать поиск предоставления бесплатного хостинга. Оказывается, довольно много таких служб...

20.10.2008 Расценки на 3D
Для интереса, рыночные расценки на создание 3D.

20.10.2008 Финансы по Украински
Нацбанк объявлил ограничение на досрочное изъятие вкладов: "Банки обязаны выполнять свои обязательства по всем типам договоров по привлечению ресурсов в любой валюте только в случае наступления срока окончания обязательств" (п. 2.5). То есть возможность снять деньги, по сути, осталась только у тех, чей срок окончания вклада подошел к концу, а также у владельцев текущих и карточных счетов, бессрочных "гибких" депозитов.

Казалось бы должна была бы быть возможность снятия денег, если они на накопительном счёте или карточном счёте, но... Фактические банки заморозили все накопительные и депозитные счета, не зависимо от того, есть срок у депозита или это "гибкий" депозит. Так, например, банк Надра уже неделю назад заблокировал возможность перечисления денег с накопительного счёта на текущий и возможность снятия их с карточки. Объясняя, что это из-за постановления НБУ...

Так же есть статья на подобную тематику: http://news.finance.ua/ru/~/2/0/all/2008/10/20/140653

16.10.2008 Ресурсы по MySQL
Так как у нас в качестве основной тестовой базы данных используется MySQL, решил выложить полезные ресурсы по MySQL.

12.10.2008 Корпорация 2.0.0.27
В новой версии программы Корпорация 2 появятся такие инструменты:
- IDE-среда для разработки приложений.
- Запись мактросов.
- Дизайнер диаграмм.

05.10.2008 Рекурсивная установка прав в Linux
Долгое время я пользовался достаточно длительным путём установки прав на файлы и папки: входил в mc, делал поиск по всему проекту, потом выделял все найденные файлы и папки и указывал владельцев, потом снова выделял и указывал права доступа.
Нужно признать, что данный способ был достаточно длительным, если проект большой.

04.10.2008 Смена пароля администратора и отмена привилегий администрирования сервера
С целью повышения уровня системы безопасности сервера, были отменены все права администраторов при подключении по ssh2, а так же изменён пароль администратора базы данных mySQL. Поэтому, если у Вас вдруг не работает сайт или не удаётся подключиться к базе данных обращайтесь к владельцу сервера (т.е. ко мне :)) по адресу: rs@rsa.ms

02.10.2008 Команды SVN
Выполнять команды SVN можно как в графическом режиме, используя клиентское программное средство, так и в текстовом режиме. Текстовый режим приходится применять достаточно часто т.к. чаще всего сервера работают в текстовом режиме и при подключении через putty или другую терминальную программу мы видим текст, а не графическое изображение рабочего стола.
Поэтому, я тут опишу основные команды, которые используются для работы с SVN.

02.10.2008 Подключение к SVN-репозитарию системы Корпорация 2
В данном разделе я описываю подключение к репозитарию в SVN для получения исходных текстов системы Корпорация 2.

02.10.2008 Cиcтема контроля версий SVN для наших задач
Нам удалось установить и настроить систему контроля версий SVN на сервере titanr.
Теперь, изменения всех исходников будут контролироваться программными средствами.


Новости 1 - 20 из 271
Начало | Пред. | 1 2 3 4 5 6 7 8 9 10 11 | След. | КонецВсе

 

 

Выберите интересующий Вас раздел:


 

 

 

Рекомендуем

 
 
© Copyright 2000-2008 Рудюк Сергей Анатольевич.