06
Ноя

Формочки для редактирования

Написал Максим Крентовский в Архив изысканий

Почти все web-девелоперам приходится сталкиваться с противным нюансов информационных систем — данные, попадаемые в них, требуют корректировки и подвергаются редактированию. Сей печальный факт — достаточно грустное событие для разработчика, которому добавление пары рутинных операций в когорту того, что надо сделать, вообще не улыбается, а если система большая, а формы строятся не на мета-описании… тут и подумать страшно. Тем не менее делать все таки придётся.

Рассмотрим простейшую задачку. У нас есть таблица из пары столбцов, определяющая псевдонимы IP-адресов. Это очень полезно, потому как память у сисадминов обычно не внушает доверия (как и у многих ИТ-шников, в том числе и у меня) и они могут зависать на журнале потребления трафика надолго, вспоминая, какой машине принадлежит следующий IP-адрес. Соответственно для избежания сего безобразия требуется таблица соответствий. Которая, как назло, имеет свойство меняться.
Подробнее →

Комментарии к записи Формочки для редактирования отключены
02
Июл

Очередная кроссбраузерность

Написал Максим Крентовский в Архив изысканий

Вы, наверное, любите делать сайты с применением AJAX. И наверняка души не чаете в библиотеке Prototype и браузере Mozilla Firefox с плагином FireBug. Последний, кстати, здорово помогает, когда что-то вполне очевидное перестает работать как надо.

Все бы ничего, но чтобы вэб-разработчикам жизнь малиной не казалась, существует «мировой заговор браузеров». Иными словами, то, что вполне адекватно работает в одном браузере, может успешно неработать в другом.
Подробнее →

Комментарии к записи Очередная кроссбраузерность отключены
19
Июн

IE не дает нам покоя

Написал Максим Крентовский в Архив изысканий

IE6 — очень старая версия браузера. Потому проблем с ней — вагон и маленькая тележка.

Простейший пример — JavaScript-код, использующий AJAX будет прекрасно работать и в Опере, и в ФайрФоксе, но… не в IE! Первый и очевидный баг — т.н. ошибка -1072896658 (как вам число?).

Детектируется она просто — либо достаточно отловить исключение от XHR, или в Prototype (если вы используете именно эту библиотеку, впрочем и в jQuery, и DoJo есть тоже свои приемчики) повесить обработчик:

1
2
3
4
5
6
7
      onException: function(xhr, exception) {
                var description = '';
                for (var property in exception) {
                        description += property + '=' + exception[property] + '\n';
                }
                alert('Exception: ' + exception + '\n' + description);
        }

Рецепт избавления от ошибки очень прост:
1. выставите принудительно правильную кодироку, понимаемую IE путем жестко прописывания Content-Type: text/html; charset=utf-8 с соблюдением регистра и правильности названия кодировки (проверить просто — при непосредственном вызове скрипта IE сам должен достоверно определять кодировку)
2. если используете PHP — не забудьте поменять в файле конфигурации кодировку по умолчанию.

Комментарии к записи IE не дает нам покоя отключены