All templates are XHTML 1.0 and CSS2.
18.12.2008
Обзор бесплатных WYSIWYG редакторов
Представляем вашему вниманию обзор 17 бесплатных WYSIWYG редакторов. О некоторых из них вы скорее всего слышали, другие же являются мало известными, но, тем не менее, могут пригодиться вам в работе. Выбор за вами! ;-)
Оригинал статьи на Временно.нет — статьи по верстке и веб-дизайну
Редактор XHTML Тoolbar API Браузеры Описание ConceptRTE ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Эволюция кроссбраузерного редактора RTEditor с некоторыми улучшениями, но без проверки орфографии и просмотра HTML кода. Дочерний проектConceptCMS. RTEditor ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
RTE основан на designMode(), встроенном в Internet Explorer 5, и который был добавлен в Mozilla 1.3 при использовании Mozilla Rich Text Editing API. eArea ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Маленький кроссбраузерный WYSIWYG редактор. Скорее подойдет для формы комментариев. FCKeditor ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Мощный и очень известный WYSIWYG редактор. Позиционируется как веб аналог MS Word. Работает под всеми платформами и основными браузерами. FreeTextBox ![]()
![]()
![]()
![]()
![]()
![]()
![]()
ASP.NET компонент, написанный на C#. Работает в браузерах Mozilla и Firefox на всех платформах. htmlArea ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Очень популярный и гибкий редактор. Но, кажется, его развитие остановилось. Kupu ![]()
![]()
![]()
![]()
![]()
![]()
![]()
Поддерживает стандарты, легко встраивается, настраивается и расширяется. NicEdit ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Популярный маленький редактор, хотя довольно глючный. Есть русская локализация. openWYSIWYG ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
В последнее время о нем много говорят на западных блогах. SPAW Editor ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Платформонезависимый WYSIWYG редактор, который можно настраивать по своему вкусу. Доступны различные темы оформления и локализации. Есть PHP и .NET версии. TinyMCE ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Работа в Safari пока реализована не полностью. Доступно множество плагинов, скинов и локализаций. Так же возможно сохранение и загрузка контента с использованием AJAX. TTW WYSIWYG Editor ![]()
![]()
![]()
![]()
![]()
![]()
Редактор контента для CMS. Возможности небогаты. Web Wiz Rich Text Editor ![]()
![]()
![]()
![]()
![]()
![]()
![]()
Написан на ASP, Javascript и HTML. Whizzywig ![]()
![]()
![]()
![]()
![]()
![]()
![]()
Легкий (в плане веса) WYSIWYG редактор. Опять же, скорее подойдет для форм комментариев. widgEditor ![]()
![]()
![]()
![]()
![]()
![]()
![]()
Маленькая функциональность. WYMeditor ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Выдает валидный код, для оформления текста использует CSS. Есть скины и локализации. Xinha ![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Продолжение редактора htmlArea. Есть плагины.
16.12.2008
8 правил оформления ссылок
Ссылка — один из важнейших элементов сайта (страницы). Именно на них основана идея гипертекста. Без ссылок любая страница превращается в отформатированный текстовый файл.
Как оформить гиперсылки, что бы посетителям сайта было приятно пользоваться.
1. Ссылки нужно подчеркивать
Так уж повелось, что гиперссылки принято подчеркивать. Не нужно вводить посетителя в заблуждение. Подчеркивайте ссылки и не выделяйте таким способом обычный текст.
2. Цвет ссылок должен меняться
Цвет неактивной, активной, и посещенной ссылок должен отличаться друг от друга. Так проще ориентироваться.
3. Разные типы ссылок должны отличаться друг от друга
Разделяйте ссылки на типы, и выделяйте каждый тип по-своему. Предлагаю следующую систему
- обычная гиперссылка: http://delvin.org
- ссылка на эту же страницу: Оставить комментарий
- ссылка на другой сайт: http://www.google.ru

- ссылка на всплывающее окно: Гугл в новом окне

4. Ссылка должна открываться в том же окне
Не стоит насильно удерживать посетителя и открывать внешние ссылки в новом окне. Если ему нужно, он сам сможет это сделать. В редких случаях новое окно действительно будет лучше.
5. Используйте дополнительные атрибуты
Используйте дополнительные атрибуты тега a, такие как rel и title. И поисковику и посетителю в некоторых случаях поможет понять, куда ведет ссылка.
6. Ссылка не должна быть длинной
Не нужно делать ссылкой целый абзац или предложение. Выделяйте актуальную часть и делайте ее ссылкой. Так же ссылка не должна начинаться или оканчиваться на знаки препинания, пробелы, скобки или кавычки. Старайтесь не разрывать ссылку на несколько строк.
7. Не делайте «живых» ссылок
Под «живыми» ссылками я имею ввиду ссылки, которые шевелятся :-) при наведении или потере фокуса. Такое может происходить когда изменяется размер или начертание шрифта. Если это не является дизайнерской фишкой, лучше использовать классические методы форматирования ссылок.
8. Думайте, перед тем, как изменить фон
В 90% случаев, изменение фона ссылки при наведении и потере фокуса - убогое зрелище. Особенно это касается длинных и крупных ссылок, например — заголовков в блогах.
Ссылки по теме
Источник Доступно о веб-дизайнеКак отразить в бухгалтерском учете создание сайта, а также его поддержку и обслуживание?
Какие же затраты ждут компанию, решившую создать свой сайт в сети Интернет:
- разработка сайта;
- регистрация адреса в сети Интернет;
- размещение сайта в сети Интернет;
- периодические расходы: поддержка, обновление и т.п.
Оценка затрат или во сколько обойдется создание сайт?
Оценка затрат или во сколько обойдется создание сайт? Возвращаясь к теме «Как определить стоимость сайта», стоит рассмотреть какие затраты ожидают компанию, желающую разработать сайт. * Дизайн сайта и разработка структуры – 500 долларов * Программное обеспечение сайта – 500 * Верстка – 200 * Регистрация доменного имени в зоне Ru – 24 Итого: 1224 доллара составляет минимальная цена на разработку профессионального и качественного мини-сайта Продолжение статьи на сайте Euroweb
Как определить стоимость сайта
Как же происходит ценообразование сайта? На первый взгляд кажется: за что тут платить такие безумные деньги? Но это только кажется. Интеллектуальный труд всегда был и есть самым высокооплачиваемым, а сайт требует временных и умственных затрат. Но каждая компания - вольный художник, то есть каждый разработчик оценивает свой умственный труд по-разному. А именно: в одной компании за дизайн у вас могут попросить 300 долларов, а в другой 1300, но это совсем не значит, что у второй дизайн будет намного качественней, просто в этой компании дизайнер ценится намного выше, чем в первой. А как же здесь быть? У каждого проекта есть свой примерный бюджет, если Вы представитель малого бизнеса, то, наверняка, не сможете позволить себе сайт за 10 000 долларов. Исходите из своего бюджета, но не забывайте основной принцип: «скупой платит дважды!» Данное высказывание справедливо и к разработке сайтов. Часто бывает, что компании заказывают свое виртуальное представительство у студентов технических ВУЗов, заплатив при этом не больше 500 долларов. А в результате, сайт не окупает даже эту достаточно малую сумму, и превращается в головную боль: то какой-то модуль не работает, то посещаемость маленькая. И все равно, глядя на сайты конкурентов, компания позднее переделывает сайт уже гораздо за большие деньги и несет при этом финансовые потери. Так зачем наступать на одни и те же грабли, когда при правильном подходе можно сделать качественный и удобный сайт. В любом случае, вашим спутником должно стать «знание». Вы же, наверняка, прежде, чем работать в компании, узнали сферу ее деятельности, изучили специфику, а потом уже начали профессионально и качественно работать. В Интернет-бизнесе те же правила: изучите ситуацию, определитесь с мотивацией: для чего нужен сайт, проанализируйте предложения и, мы уверены, вы сделаете достойный выбор. Продолжение статьи на сайте Euroweb
Модуль Apache mod_rewrite
Добро пожаловать в мир mod_rewrite, швейцарский нож URL преобразований!
Данный модуль представляет собой основанный на правилах механизм (синтаксический анализатор с применением регулярных выражений), выполняющий URL преобразования на лету. Модуль поддерживает неограниченное количество правил и связанных с каждым правилом условий, реализуя действительно гибкий и мощный механизм управления URL. URL преобразования могут использовать разные источники данных, например переменные сервера, переменные окружения,HTTP заголовки, время и даже запросы к внешним базам данных в разных форматах, — для получения URL нужного вам вида.
Этот модуль оперирует с полными URL (включая path-info) и в контексте сервера (httpd.conf) и в контексте каталога (.htaccess) и даже может генерировать части строки запроса в качестве результата. Преобразованный результат может приводить к внутренней обработке, внешнему перенаправлению запроса или даже к прохождению через внутренний прокси модуль.
Но, вся эта функциональность и гибкость имеет свой недостаток — сложность. Поэтому, не думайте что вы поймете работу модуля за один день.
Этот модуль был придуман и написан в апреле 1996 и эксклюзивно подарен The Apache Group в июле 1997
Спецификация на русском языке можно почитать на сайте http://www.egoroff.spb.ru/portfolio/apache/mod_rewrite.html
28.11.2008
Совместимость браузеров W3C DOM Compatibility - CSS
This compatibility table details support for the W3C DOM CSS Level 2 modules and assorted Microsoft extensions in all modern browsers. This page contains five tables. The first three are quite important, the last two aren't.
18.11.2008
CakePHP
Что-то я все чаще стал натыкаться на посты о Ruby On Rails, MVS и разных php-фреймворках. Думаю, пора обратить свое пристальное внимание на эту область веб-разработки.
Sypex Dumper
Sypex Dumper — это PHP-скрипт, с помощью которого можно просто и быстро создать резервную копию (бекап, дамп) базы данных MySQL, а также восстановить в случае необходимости базу данных из резервной копии.
Sypex Dumper в отличии от многих подобных скриптов не загружает бекап-файл целиком в память, благодаря чему, ему безразличен размер базы данных и он одинаково быстро работает, как с маленькими, так и с большими объемами данных.
Sypex Dumper создан специалистами украинской компании БИНОВАТОР.
Sypex Dumper Lite распространяется по лицензии GNU GPL, т. е. является абсолютно бесплатным.
Облако тегов
Рассмотрим такую задачку как генерация облака тегов. ММы все конечно ни раз встречали это облако на других сайтах и блогах, но не все задумывались над реализацией этого облака на php. Общие моменты ясны из определения с wiki: “визуальное представление списка ярлыков (или категорий). Частота упоминаний, поисков, ссылок в интернете с определенного сайта неких слов, терминов, имен, отображается на специальной странице в виде изображения этих слов в формате гиперссылок. Размер изображения тем больше, чем выше релевантность данного слова (термина, имени).” Релевантность в нашем случае определяется количеством вхождений одного тега в их общую массу. Учитывая все вышесказанное, весь алгоритм построения облака тегов можно разделить на два этапа: Генерация списка пар Тег-Количество вхождений Вывод облака с учетом релевантности тегов Первая задача решается довольно просто с технической точки зрения. Вторая тоже, но здесь возможны вариации. Ниже приведу небольшой класс, который я написал для генерации облака тегов. исходниккопировать в буферпечать? tags = $tags; } private function get_tag_count($tag_name, $tags) { $count = 0; foreach ($tags as $tag) { if ($tag == $tag_name) { $count ; } } return $count; } private function tagscloud($tags) { $tags_list = array(); foreach ($tags as $tag) { $tags_list[$tag] = self::get_tag_count($tag, $tags); } return $tags_list; } private function get_min_count($tags_list) { $min = $tags_list[$this->tags[0]]; foreach ($tags_list as $tag_count) { if ($tag_count < $min) $min = $tag_count; } return $min; } public function get_cloud() { $cloud = Array(); $tags_list = self::tagscloud($this->tags); $min_count = self::get_min_count($tags_list); foreach ($tags_list as $tag=>$count) { $font_steps = $count - $min_count; $font_size = $this->font_size_min $this->font_size_step * $font_steps; $cloud[] = "".$tag.""; } return $cloud; } } ?> Скачать этот класс можно здесь: tagscloud.php, а работать с этим классом примерно так: исходниккопировать в буферпечать? get_cloud(); foreach ($tags_list as $tag) { echo $tag.' '; } ?> В результате работы этого примера в окне браузера Вы получите следующее: Второй этап построения облака тегов (вывод облака) заключается в преобразовании показателя релевантности (кол-во вхождений) в размер шрифта результирующей надписи. В классе я реализовал это следующим образом: в настройках задается минимальный размер шрифта, который соответствует минимальному уровню релевантности (одно вхождение). Все теги с большей релевантностью имеют размер на столько пикселей больше, на сколько больше они имеют вхождений. Шаг изменения можно задавать полем font_size_step, а минимальный размер шрифта полем font_size_min. Для дальнейшего усовершенствования внешнего вида можно прикрутить облако к небольшому js-скрипту. В результате чего получится такое облако: http://nacmnogo.ru/cloud.html. Подробнее про этот скрипт можно почитать здесь http://habrahabr.ru/blogs/javascript/38264/ Источник: http://i-novice.net/oblako-tegov/#more-101
Простая защита от DoS-атак с помощью MySQL
Организовать простую защиту от DoS-атак для сайтов, использующих PHP MySQL, можно следующим образом. В MySQL создается таблица (будем называть ее ip_check) с полями lasttime, count, ip (все поля — типа INTEGER, причем ip — первичный ключ).
Сразу после подключения к базе данных выполняется проверка, есть ли для данного IP-адреса запись в таблице. Если записи нет, она создается, при этом в count пишется 1, в lasttime — текущее время. Если запись уже есть, то проверяется, когда она была сделана (поле lasttime), и если прошло менее определенного количества секунд, то поле count увеличивается на 1, в противном случае приравнивается единице, и производится обновление записи в таблице (записывается новый count и lasttime). Далее происходит проверка величины count, и если она превысила некоторое пороговое значение, выдается статус 500 (или 403 или 503), сообщение об ошибке, и выполнение скрипта завершается.
Таким образом, для выполнения проверки требуется всего одной таблица с предельно простой структурой и 2 запроса SQL. Также можно добавить еще одно поле status, в которое ставить 1, если IP-адрес забанен навсегда по каким-то причинам, и совместить проверку на DoS-атаки с проверкой на забаненные IP-адреса без добавления дополнительных запросов. При необходимости можно еще одним запросом добавить учет суммарной нагрузки за все время или нагрузки по подсетям.
Кроме того, перед завершением скрипта можно добавить проверку, сколько времени заняло его выполнение, и если оно превышает какую-то пороговую величину (например, 10 секунд), начислять этому IP-адресу “штрафные очки” (т.е. дополнительно увеличивать поле count).
В виде кода это можно представить следующим образом:
// $link -- соединение с БД, $ip_text -- IP-адрес
define('ALERT_TIME',300);
define('ALERT_COUNT',150);
function check_dos($ip_text, $link) {
$ip=ip2long($ip_text);
$res=mysql_query($link,'SELECT lasttime, count, status FROM ip_check WHERE ip="'.$ip.'"');
if (mysql_num_rows($res)==0) { // нет такого IP
$count=1;
mysql_query($link,'INSERT INTO ip_check (lasttime,count,ip,status) VALUES ('.time().',1,"'.$ip.'",0)');
}
else {
$data=mysql_fetch_row($res);
$status=$data[2];
if ($status!=2 && ($data[0]<time()-ALERT_TIME || $data[1]<ALERT_COUNT))) $count=1;
elseif ($status!=2) { $count=$data[1] 1; if ($count>=ALERT_COUNT) $status=1; }
if ($status!=2) {
mysql_query($link,'UPDATE ip_check SET count='.$count,', status='.$status.', lasttime='.time().' WHERE ip="'.$ip.'"';
}
if ($status) {
header($_SERVER['HTTP_PROTOCOL'].' 503 Temporary Unavailable');
trigger_error('Превышено число допустимых запросов!',E_USER_ERROR);
}
}
Кроме того, периодически следует очищать базу от старых записей (например, по cron). Кроме того, если ожидается большая интенсивность атак, возможно, имеет смысл заменить UPDATE-запрос на последовательность DELETE/INSERT, но в этом случае необходимо будет регулярно проводить оптимизацию таблицы.
Источник: Профессиональный Блог 4X_Pro http://www.xpro.su/archives/59
30.10.2008
Оформление гиперссылок
Гиперссылки позволяют людям переходить от страницы к странице, от сайта к сайту. Столь важный инструмент нельзя обойти вниманием при разработке дизайна, чтобы посетители могли легко ориентироваться на сайте, ссылки должны хорошо выделяться, быть абсолютно ясными и информативными. Правила
- куда вы попадете.
- что увидите
- что произойдет
22.10.2008
Создаем удобные, практичные вкладки с помощью jQuery
Вот пример: http://dimox.name/examples/accessible-tabs-with-jquery.html
29.09.2008
Работа с датой и временем в PHP 5.2
Рано или поздно при разработке проекта встает вопрос о работе с датой и временем.
Начиная с версии 5.2 ядро PHP предоставляет для этой работы классы DateTime иDateTimeZone. Существующие в PHP 4 и 5 функции для работы с датой и временем: Улучшения работы с датами, начиная с PHP 5.1. Форматы представления даты и времени, начиная с PHP 5.1 Временные зоны, начиная с PHP 5.1 Изменение информации по временным зонам.
16.09.2008
Сборник лучших сайтов на sites.bestwebdevs.ru
15.09.2008
Настройка Dreamweaver’a
После установки программы, для комфортной работы нужно произвести настройку предпочтений. Открываем окно предпочтений Edit > Preferences. В категории Fonts выбираем значение Font Settings: Кириллица, а в выпадающем поле со списком Code view — Courier New. В категории Invisible Elements отобразим дополнительные маркеры: Scripts, Comments, Line Break.
Переход с Денвера-2 на Денвер-3
У меня установлен Денвер-2, на нем "крутится" множество проектов. Как установить Денвер-3, сохранив все эти проекты?.. Денвер-3 не совместим с Денвером-2 на уровне пакетов расширений и (частично) версий программных компонентов. Поэтому способ миграции только один: сделать это вручную. Запаситесь терпением и не отчаивайтесь. Предположим, что у вас установлен Денвер-2, и вы хотите установить Денвер-3, переведя на него все имеющиеся проекты. Для этого:
- Остановите Денвер-2. Сделайте резервную копию директории Денвера-2 (например, C:\WebServers), чтобы в случае неудачи можно было вернуться к старой версии. Наличие копии - гарантия того, что вы сможете к ней вернуться, ведь Денвер автономен и не изменяет ничего вне своей директории.
- Удалите (или переместите куда-нибудь) директорию Денвера-2.
- Установите Денвер-3, но не поверх старой версии, а в отдельную директорию!
- Скопируйте директорию /home из Денвера-2 в Денвер-3.
- Скопируйте базы данных MySQL из Денвера-2 в Денвер-3. В простейшем случае для этого достаточно скопировать содержимое /usr/local/mysql4/data в /usr/local/mysql5/data нового Денвера-3.
- При помощи phpMyAdmin вновь создайте пользователей, укажите пароли и задайте привилегии.
- Если вы использовали базы данных InnoDB, то трюк с копированием файлов СУБД не пройдет. В этом случае придется вручную делать дамп всех баз данных (например, при помощи phpMyAdmin, входящий в соствав Денвера-2 и Денвера-3) и закачивать его вручную в новый Денвер-3.
21.08.2008
26.07.2008
TYPO3 Web Content Management Framework
Одним из наиболее мощных представителей CMS с открытым исходным кодом является система TYPO3. Эта система достигла наиболее высокого профессионального уровня, очень универсальна и легко изменяема в зависимости от применения. Разработка TYPO3 начата 1998 году датским программистом Каспером Скархей. Сейчас TYPO3 распространена во всем мире. TYPO3 интенсивно развивается: ежегодно выпускаются 2 новые версии системы, активно работает TYPO3 Ассоциация. Как и многие другие системы с открытым исходным кодом, TYPO3 распространяется под бесплатной лицензией GPL и свободно доступна через интернет. Для разработки крупных многосайтовых и многоязычных проектов можно использовать TYPO3, но таких проектов не слишком много, и данная система распространена не так сильно, как другие. Ссылки по теме: Документация по TYPO3: http://typo3.biz/cms-typo3/documentation.html Руссская документация по typo3: http://infostore.org/info/2764048 Статья в Википедии: http://ru.wikipedia.org/wiki/TYPO3 Сравнение Typo3 vs Drupal, Joomla и Wordpress
Архив блога
-
▼
2008
(113)
-
▼
Декабрь
(16)
- Шаблоны на CSS
- Мотор для блога
- Обзор бесплатных WYSIWYG редакторов
- Кавычки
- Тренды в айдентике: мода или революция?
- Логотипы с LogoLounge.com
- 8 правил оформления ссылок
- Как отразить в бухгалтерском учете создание сайта,...
- Оценка затрат или во сколько обойдется создание са...
- Как определить стоимость сайта
- Модуль Apache mod_rewrite
- Визитка Лебедева
- вэвэвэ чукча руиз серии Чук и Мак автор: Кузнецо...
- Пиксельные логотипы
- Все логотипы мировых брендов в векторном формате
-
►
Сентябрь
(10)
- Работа с датой и временем в PHP 5.2
- Сборник лучших сайтов на sites.bestwebdevs.ru
- Настройка Dreamweaver’a
- Переход с Денвера-2 на Денвер-3
- Какие продукты Adobe поддерживает Vista
- Создание Flex-компонентов
- Бесплатные просмотрщики графики
- Как сделать гиперссылку с flash-банера на нужную с...
- Как узнать о получении новых писем?
- Блог Алексея «Борисыча» Матюшкина
-
▼
Декабрь
(16)
Рубрики
- :) (2)
- Adobe (2)
- apache (1)
- CS2 (3)
- CSS (4)
- denwer (1)
- Dreamweaver (1)
- Flash (2)
- java script (1)
- MySQL (6)
- PHP (7)
- Артемий Лебедев (6)
- безопасность (1)
- веб-разработка (39)
- допечатная подготовка (4)
- инструменты дизайнера (6)
- Календарная сетка (2)
- лого (2)
- логотипы (2)
- мониторы для дизайнеров (1)
- наблюдения (1)
- Наружная реклама (2)
- Перевод текста (1)
- плагины (3)
- портфолио (2)
- Правила дизайна (2)
- Правописание (15)
- просмотрщики изображений (1)
- профессиональные мониторы (3)
- Разработка сайтов (3)
- ресурсы (1)
- Русский язык (1)
- стоит посещать (1)
- типографика (1)
- Фото (3)
- электронная почта (1)

















