Сегодня немного отвлечемся от рефакторинга в пользу AJAX на Dojo. А конкретнее - напишем скрипт голосования, используя Dojo.
Наш скрипт будет спрашивать у посетителя, нравится ли ему блог. На это есть два варианта ответа - да и нет. После выбора варианта ответа и нажатия кнопки «Проголосовать» скрипт вместо формы голосования покажет его результаты. А при нажатии кнопки «Показать результаты» в форме голосования скрипт также на месте этой формы покажет результаты голосования. При этом для простоты результаты будем хранить в файле.
Вообще, наш скрипт голосования будет состоять из 2-х частей: клиентская и серверная. Клиентская часть (index.php) будет отвечать за взаимодействие с пользователем, а серверная (vote.php) - за считывание и запись результатов голосования.
Поехали:
Читать далее »
Окт 08, 2008 | Автор :
Novice | 5 Комментариев
В предыдущей статье про DoJo мы рассмотрели механизмы взаимодействия с php-скриптом на основе Ajax. Но там не была рассмотрена важная особенность - возможность делать submit любой существующей формы на страничке.
А зачем нам делать submit формы? Можно же просто сформировать некоторый GET-запрос вроде этого:
main.php?action=add&what=address&value=123
Дело в том, что у передачи формы скрипту есть преимущества по сравнению с простым GET-методом:
- сложно закодировать что угодно с помощью URL и передать скрипту (например, двоичные данные)
- нельзя передать динамично изменяющиеся параметры (из текстового поля например)
- нельзя передать файл (input type=file)
Сейчас мы с Вами научимся передавать форму нашему php-скрипту с помощью DoJo. Поставим перед собой цель: загрузить файл на сервер и при этом передать его короткое текстовое описание, которое сохраним в текстовом файле. При этом скрипт должен нам вернуть 1, если все ок (файл принят и сохранен), иначе - 0.
Читать далее »
Сен 03, 2008 | Автор :
Novice | 12 Комментариев
Сегодня мы рассмотрим, как пользоваться механизмами для работы с Ajax в Dojo. Про Ajax я уже писал в другой статье, но то было для библиотеки jQuery. Но все равно советую прочитать сначала ее, прежде чем продолжать чтение дальше. Иначе некоторые моменты могут быть непонятными.
Ajax в Dojo реализован через так называемый XMLHttpRequest. Первым делом рассмотрим самый простой случай: когда скрипт на php вернет нам какой-то html-код, а мы этот код присвоим какому-нибудь элементу на странице. Причем сделаем это без перезагрузки страницы (на то и Ajax ). Формат этого простого случая называется AHAH.
Сделаем так, чтобы при нажатии кнопки мы узнали о номере версии PHP.
Для этого напишем очень простой скрипт, который будет просто возвращать номер версии PHP: <? echo phpversion(); ?>. И поместим этот код в файл version.php.
Читать далее »
Авг 29, 2008 | Автор :
Novice | 16 Комментариев
Сегодня мы рассмотрим новую и очень мощную библиотеку Dojo, написанную на JS. Это подобие движка jQuery, но работает быстрее.
Ее документация и исходники находятся на официальном сайте: [ссылка]. Правда документация там, по-моему, в нескачиваемом виде (а может просто плохо искал).
На момент написания статьи версия библиотеки была 1.1.1.
После того, как мы ее скачаем (я скачивал полный gz-архив - около 4 Мб), мы должны извлечь из архива две папки: dojo и util (нужна для dojo). Положим их, к примеру, в папку js, которая лежит наравне с нашим index.php. Все. Мы готовы изучать ядро Dojo (другие возможности в этой статье затрагивать не будем).
Читать далее »
Авг 27, 2008 | Автор :
Novice | 5 Комментариев
|
Сегодня в сети Интернет люди хранят огромное кол-во информации. Нужную и ненужную, важную и не важную, общедоступную и скрытую от посторонних глаз. И при этом все меньше уделяют внимания каждой части этой информации. Если быть точнее, то я говорю про чувствительную информацию, которую пользователи сети оставляют на просторах Интернета. |
Каждый день появляются все новые виды ресурсов вроде социальных сетей и других интерактивных сервисов, где нужно регистрироваться, оставляя свои пароли.
С ростом числа сервисов, которыми пользуется человек, растет и количество паролей, которые он применяет при регистрации (если он не использует один и тот же во всех случаях). Хранить большое кол-во паролей в голове – дело непростое для неподготовленных пользователей, поэтому решается такая проблема в большинстве случаев путем генерации легкозапоминающихся паролей. Между тем, большинство пользователей и не подозревает, чем это может обернуться для них в случае неблагоприятного развития событий.
Ладно, не буду ходить вокруг да около и перейду все-таки к теме В этой статье я рассмотрю один прием, с помощью которого можно напоминать вашим пользователям о безопасности. А именно - добавлю в форму регистрации индикатор стойкости пароля на ajax.
Читать далее »
Авг 18, 2008 | Автор :
Novice | 6 Комментариев
|
За все время мы обратились уже ко многим областям веб-разработки по отдельности. Сегодня начнем их совмещать. В этой статье, я приведу пример того, как можно совместить знание ajax и wordpress`а, и получить в результате форму комментирования для вашего блога на ajax.В качестве инструментов мне понадобиться только библиотека JQuery и плагин к ней для работы с формами. |
Итак, моя цель – сделать такую форму для комментирования, через которую можно будет оставить комментарий без перезагрузки страницы.
Сперва нужно создать каталог с именем js внутри папки с темой. В него положить два файла:
- Файл библиотеки jquery.js (https://jquery.com)
- Плагин jquery для работы с формами. (https://malsup.com/jquery/form/)
Теперь подключим эти два файла внутри шаблона header.php нашей темы. Для этого добавим туда пару строк:
<script src="<?php bloginfo('template_directory'); ?>/js/jquery.js" type="text/javascript"></script>
<script src="<?php bloginfo('template_directory'); ?>/js/form.js" type="text/javascript"></script>
Читать далее »
Авг 11, 2008 | Автор :
Novice | 140 Комментариев
|
Ну вот, наконец, и добрался до темы AJAX`а. Начну с определения. AJAX (от англ. Asynchronous Javascript and XML — «асинхронный JavaScript и XML») – это технология асинхронной передачи данных между браузером и сервером. Асинхронность подразумевает передачу данных без перезагрузки страницы. Другими словами, Вы можете реагировать на действия пользователя более оперативно, что сделает Ваше приложение более интерактивным. Например, в форме проверки логина на занятость, проверку можно выполнить сразу, после того как введен логин, не перезагружая страницу (я думаю все уже встречались с таким).
|
Прежде чем перейти к примерам, еще немного расскажу про способы передачи данных… В названии AJAX`а упоминается XML, хотя в настоящее время, для асинхронной передачи данных он используется не так часто (в чистом виде, по крайней мере). Помимо XML, используют HTML (технология называется AJAH), HTML+HTTP (AHAH) и Javascript + JSON (AJAJ).
Примеры я буду приводить на javascript Фреймворке – jQuery, о котором я писал в одной из предыдущих статей. jQuery поддерживает все три вида асинхронной передачи данных.
Для работы с AJAX в jQuery есть много функций, но основными являются .get() и .post().
Читать далее »
Авг 07, 2008 | Автор :
Novice | 10 Комментариев