Below is the text of the page https://vanav.com.ua/ stored 2006-12-06 by archive.org.ua. The original page over time could change. View as original html

Vanav Thoughts

Войти [?login] ¦ students.in.ua The Thoughts Молчание - золото. Не трать его по пустякам. (А Кнышев) . На этой странице показаны все сообщения, самые новые сверху . Vanav 28 дней назад, 12:40 Категории О сайте Vanav.com.ua Reloaded Пару лет здесь уже ничего не менялось… Вообще, некоторых людей даже надо благодарить, что они не пишут: так читателю экономится время. Классическая заметка в ЖЖ: «Какая сегодня ужасная погода, жуткое настроение, и вообще бесполезный день.» И комменты френдов: «Да, у меня то же, как я тебя понимаю», «Скущай чай с бергамотом» и прочее. Им что, поговорить не с кем? К чему этот душевный эксгибиционизм. Излили душу? Уберите за собой. Как говорил Жванецкий, «Писать, как и пИсать, нужно тогда, когда уже не можешь.» Поэтому постараюсь сделать заметки максимально тематическими, используя собственный движок для блога, посмотрим, что из этого выйдет. Старый сайт пока будет жив тут: http://vanav.com.ua/old/ 27 комментариев Vanav 4 месяца назад, 12:45 Категории Программинг > MS SQL MS SQL и ограничение длины строк На собственном опыте обнаружил странное поведение своего MS SQL сервера. Если в таблицу добавляется значение типа (N)VARCHAR или (N)CHAR, и это значение длиннее ограничения, то текст не обрезался, транзакция не проходила, и IIS вываливался с ошибкой 500, чем вгонял в недоумение админов. Server: Msg 8152, Level 16, State 9, Line 1 String or binary data would be truncated. The statement has been terminated. Выяснилось, что виной этому была опция ANSI_WARNINGS. В документации говорят, она по-умолчанию выключена, но это зависит от настроек конкретного сервера. Если её выключить, то строки будут сами обрезаться, и запросы будут успешно исполняться. Есть два способа отключения: Выполнить в начале запрос: SET ANSI_WARNINGS OFF Для всех соединений одновременно, используя хранимую процедуру: sp_dboption 'DatabaseName', 'ANSI warnings', 'FALSE' 5 комментариев Vanav 4 месяца назад, 9:44 Категории Программинг > JavaScript Файлы example.zip (2 КБ) Простейший AJAX с большой совместимостью Итак, мы хотим послать небольшую строчку на сервер, получить от сервера ответ и показать пользователю. Что-то похожее на AJAX, но как можно проще, без килобайтных библиотек, вопросов совместимости и изучения XML-парсеров разных браузеров. Более того, хотелось бы чтобы способ был совместим с как можно большим числом браузеров, и занял не больше 10 минут на написание с нуля. Наше решение будет совместимо с IE5.0+, Mozilla 1.7+, FireFox 1.0+ и Opera 7.3+. Например, понадобилось сделать быструю проверку введённого почтового адреса пользователя в базе на сервере, и если такой адрес существует — сообщить об ошибке. Но открывать для этого каждый раз новую страницу очень не хотелось бы: во-первых, адресов может быть много, и это долго, во-вторых, это прервёт заполнение формы, и придётся вернуть форму пользователю целиком. Итак, начнём с кода. Страница, с которой происходит запрос. Здесь расположена форма, которую заполняет пользователь: default.asp: Тест
Скрипт, который получает своим аргументом проверяемый адрес, и отвечает посредством создания JavaScript кода: tester.asp: <%@LANGUAGE = JScript %> <% var email = decodeURI(Request.QueryString("email")); // Здесь можно добавить проверку на уникальность адреса в базе пользователей var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; if (filter.test(email)) msg = "Правильный адрес."; else msg = "Неправильный адрес!"; Response.Write('document.getElementById("result").innerHTML = "' + msg + '"'); %> Обратим внимание, что первый скрипт может быть простым HTML, без ASP или PHP. Второй же скрипт может быть на любом серверном языке ASP или PHP, но возвращать в браузер должен синтаксически правильный JavaScript. Собственно, послеполучения ответа браузер этот JavaScript и будет исполнять. В нашем примере после нажатия кнопки создаётся новый невидимый элемент span в конце документа, в него добавляется script и источником JS-скрипта ставится ASP или PHP скрипт на сервере. Этому скрипту на сервере передаётся интересующий нас аргумент, он его проверяет, и выдаёт ответ в виде правильного JavaScript. Браузер не замечает, что работал скрипт на сервере, и получает сразу правильный JavaScript, который тут же и исполняет. Итак, применять это можно в тех случаях, когда нужен простой и быстрый AJAX, в то же время максимально совместимый. Собственно, простота и совместимость — его главное преимущество перед XMLRequest. Начальная идея — dklab, за что огромное спасибо. Комментировать Vanav 7 месяцев назад, 9:20 Категории Программинг > JavaScript Подтверждение действий Пользователь любит кликать. Если сделать кнопку с большой надписью " Не нажимать! ", она будет нажата первой. Поэтому на критические действия вроде удаления файлов нужно ставить подтверждения. Рассмотрим, как это можно проще всего сделать на JavaScript: Удалить confirm() выведет стандартное диалоговое окно Windows, на котором на будет две кнопки: OK и Отмена (язык надписей соответствует языку Windows). В сообщении чётко указывается два момента: что именно будет удалено. Пользователь должен проверить, то ли он на самом деле удаляет; чёткий короткий вопрос, который подразумевает однозначный ответ. Если JavaScript будет отключён у пользователя, ссылка всё-равно будет работать, правда без подтверждения. Но поскольку процент таких пользователей мал, это допустимо. Комментировать Vanav 7 месяцев назад, 0:28 Категории На эту тему есть 2 сообщения . PocketPC Windows Mobile Edition 2005 и борьба с ней С такой же радостью откатился обратно. Во-первых, заметно увеличелись тормоза и (по отзывам) уменьшилось время работы от аккумулятора, а во-вторых оно умудрялось спонтанно зависать и не включаться без софт-ресета. Возможно не подружилось с единственной установленной программой (Pocket Player), но даже одного из этих условий достаточно, чтобы считать эксперимент удавшимся, но не более чем экспериментом. Вывод: ждём исправления ошибок и улучшения совместимости, а также, возможно, более мощной машинки. Хотя какой бы мощность не была, уменьшать скорость одной только новой версией ОС — это занятие на мазохиста апгрейдинговых технологий. Так что пока явных плюсов WM5 не показала. Вот когда появится софт только под WM5, придётся задуматься... 18 комментариев Vanav 7 месяцев назад, 0:03 Категории На эту тему есть 2 сообщения . PocketPC Windows Mobile Edition 2005 и борьба с ней Наконец-то созрел для обновления своей машинки. Всё прошло за 10 минут, гладко и безболезненно. Но были некоторые проблемы: ActiveSync вообще отказался видеть устройство. Решение было в том, что отныне PocketPC использует DHCP для получения своего IP, и поэтому нужно проверить, получило устройство IP или нет (ipconfig /all), и если нет — включить сервис DHCP (который был у меня отключён как до сих пор неиспользуемый). ActiveSync настолькой системы магическим образом переключился в настоящий режим 4.1 (до этого он использовал устаревший код 3.8), при этом у него исчезли настройки периода синхронизации, и он начал синхронизировать устройства каждые 5 минут. Пока приличного решения не существует, но есть удобные сторонние программки для отключения ActiveSync. В частности рекомендую ActiveSyncToggle , которая умеет работать с коммандной строкой и грамотно отключает все ипостасии ActiveSync. В общем впечатления от ОС пока положительные: давно мечтал управлять всем при помощи кнопок, а две совтовые клавиши, отображаемые в WM5, этому очень способствуют. PS. Да, это первый пост, вы ничего не пропустили: здравствуйте. 3 комментария Календарь декабрь 2006 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 << >> показываются, сегодня Категории PocketPC О сайте Программинг ASP JavaScript MS SQL Показать все Действия Последние изменения на сайте Наш код © Иван Ванюшкин "Vanav"