Создание php скриптов различных направлений

Гостевые, новостные движки, а также различные парсеры других ресурсов и прочее. Доработка готовых скриптов, "доводка" их до желаемого, а также расширения функционала.

Разработка Windows приложений

Прикладные приложения: взаимодействие с БД, web службами, генерация отчетов (xls, doc, htm)
Техподдержка разработок на разумных условиях.

Подробнее...

 

Контакты:

  • mail mail@sergebezborodov.com
  • icq 580408949
  • skype sergebezborodov
  • phone +380 66 777 92 25

Preload изображений с помощью JQuery

Нашел интересное и простое решение для предзагрузки изображений.

jQuery.preloadImages = function(){
  for(var i = 0; i < arguments.length; i++){
     jQuery("<img>").attr("src", arguments[i]);
  }
}

 

Ипользовать так:

j(function(){
   $.preloadImages('image1.png', 'image2.png', 'image3.png');
});

Tags: ,

Категория: Javascript

Создаем простейшее выпадающее меню на JQuery

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

Читать далее »

Tags: , ,

Категория: Javascript

Ошибка Invalid Label с JSON

Столкнулся с ошибкой при парсинге JOSN строки через eval: Invalid Label. Обычно код выглядит примерно так:

  1. var jsonString = ‘{"val1": "some data", "val2": "some data"}’;
  2. var myObj = eval(jsonString);

Проблема возникает из-за того, что eval переводит первый пункт строки JSON как JavaScript Label.
Решением будет добавлено скобок в начале и в конце строки.

  1. var jsonString = ‘{"val1": "some data", "val2": "some data"}’;
  2. var myObj = eval(‘(‘ + jsonString + ‘)’);

Tags: , ,

Категория: Javascript

Вставка строки в подстроку в PHP

Большинство языков программирования имеют функции для вставки строки в строку с указанной позиции. Но если посмотреть раздел String functions в PHP, то функции str_insert Вы не найдете.
В интеренете можно встретить массу подобных функций, со всяческими ухищрениями. Но есть гораздо более простой вариант из всех существующих:

  1. $newstring = substr_replace($orig_string, $insert_string, $position, 0);

Действительно просто?

Tags: ,

Категория: PHP

Создание выпадающего списка с помощью JHTML в Joomla

Класс JHTML используется повсеместно в Joomla, но в тоже время он может показаться несколько загадочным классом, т.к. обычно мы видим странный вызов JHTML::_(), куда через параметр передаются какие то загадочные строки из которых потом получается не менее загадочный HTML. Читать далее »

Категория: Без рубрики

Markdown в Yii Framework

Недавно мне пришлось столкнуться с html кодом в полях CActiveRecord. Код наподобие <a href=»http://example.com» target=’_blank’>Test</a> преобразовывался в <a href=»http://example.com»>Test</a>, после недолгих копаний по скудной документации Yii вышел на Markdown parser. После экспериментов с его отключением из контроллера, пришлось сделать хак ядра:

В файле /framework/utils/CMarkdownParser.php сделать такие изменения:

  1. public function safeTransform($content)
  2. {
  3. //$content=$this->transform($content);
  4. //$purifier=new CHtmlPurifier;
  5. //return $purifier->purify($content);
  6. return $content;
  7. }

Недостатки подхода хорошо описаны в комментарии к функции «uses CHtmlPurifier to purify the HTML content to avoid XSS attacks»

PS: продолжаются поиски «правильного» варианта решения проблемы.

Tags: , ,

Категория: PHP, Без рубрики

Велосипедостроение в .NET

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

В XmlDocument.Load

можно задавать в качестве параметра не только локальные адреса, но и URL.
XmlDocument.Load(«http://server.com/xmldocument.xml»);
Но есть особенность при отлове ошибок – если URL будет неверным, но XmlDocument посчитает адрес за локальный файл и не сможет его открыть, соответственно нужно будет помимо Web Exceptions ловить и IO Exceptions. Читать далее »

Tags: , ,

FTP клиент WinSCP

Под Windows существует масса различных FTP клиентов на любой вкус. В одной из статей на хабре упомянулся клиент WinSCP – особых отличительных особенностей от того же тотал коммандера не имеется, НО Читать далее »

Tags: ,

Категория: Без рубрики

Константы Joomla

При разработке компонентов/модулей/шаблонов/плагинов/etc обязательно приходится сталкиваться с константами. Всего в Joomla насчитывается более 400 констант.

Каждый видел самую главную константу, которая есть во всех php файлах джумлы:

defined('_JEXEC') or die('Restricted access');

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

DS Разделитель директорий (/)
JPATH_ADMINISTRATOR Путь к админке (/joomla/administrator)
JPATH_BASE Путь к вступлению каталог (/joomla)
JPATH_CACHE Путь к каталогу с кэшем (/joomla/cache)
JPATH_COMPONENT Путь к компоненту (/joomla/components/com_example)
JPATH_COMPONENT_ADMINISTRATOR Путь к административной части компонента (/joomla/administrator/components/com_example)
JPATH_COMPONENT_SITE Фронтенд компонента (/joomla/components/com_example)
JPATH_CONFIGURATION Путь к конфигу (/joomla)
JPATH_INSTALLATION Путь к инстальнику (/joomla/installation)
JPATH_LIBRARIES Путь к библиотекам (/joomla/libraries)
JPATH_PLUGINS Путь к плагинам (/joomla/plugins)
JPATH_ROOT Путь к фронтенду (/joomla)
JPATH_SITE Путь к сайту (http://joomla)
JPATH_THEMES Путь к шаблонам (/joomla/templates)

Начинающие Joomla программисты очень часто используют данные константы для формирования адресов ссылок забывая, что константы содержат абсолютный путь, а не URL.

Чтобы получить адрес сайта необходимо использовать JURI::root()

Tags: ,

Категория: Без рубрики

XBap приложения на Linux хостинге

Многие уже наслышаны о новой технологии от Microsoft – XAML Browser Application, которая позволяет создавать .NET приложения работающие прямо в браузере. Эдакий Silverligth, только с поддержкой всех функций .NET Framework.

XBAP приложение является полностью клиентским, т.е. взаимодействие с сервером необязательно. Соотвественно можно разместить приложение на linux хостинге.
Для этого делаем обычный deploy в папку и загружаем её на сервер.
На сервере нужно создать в этой папке файл .htaccess с таким содержимым:

AddType «application/manifest» .manifest
AddType «application/x-ms-xbap» .xbap
AddType «application/octet-stream» .deploy
AddType «application/x-ms-application» .application
AddType «application/vnd.ms-xpsdocument» .xps
AddType «application/xaml+xml» .xaml

Теперь Mozilla будет корректно распознавать xbap файлы и загружать приложение.

Категория: Без рубрики