Архив на категорию : 'AJAX / Javascript'

Окт 22

В прошлой статье про рефакторинг я обещал рассмотреть такой прием рефакторинга, как «Группировка кода в отдельную функцию», но я решил немного повременить с этим, чтобы рассмотреть несколько более мелких приемов, необходимых зачастую перед проведением группировки кода в отдельную функцию.

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

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

Популярность: 6%

Окт 18

В одном из постов про DoJo один из посетителей этого блога попросил привести пример того, как вытаскивать порядок сортировки элементов с помощью расширения Dojo - DnD, т.е. drag’n’drop. Сегодня попытаюсь об этом рассказать.

Данный модуль DoJo позволяет перемещать элементы вверх/вниз в списке не перезагружая самой страницы, на которой расположен этот список.

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

Популярность: 6%

Окт 8

Сегодня немного отвлечемся от рефакторинга в пользу AJAX на Dojo. А конкретнее - напишем скрипт голосования, используя Dojo.

Наш скрипт будет спрашивать у посетителя, нравится ли ему блог. На это есть два варианта ответа - да и нет. После выбора варианта ответа и нажатия кнопки «Проголосовать» скрипт вместо формы голосования покажет его результаты. А при нажатии кнопки «Показать результаты» в форме голосования скрипт также на месте этой формы покажет результаты голосования. При этом для простоты результаты будем хранить в файле.

Вообще, наш скрипт голосования будет состоять из 2-х частей: клиентская и серверная. Клиентская часть (index.php) будет отвечать за взаимодействие с пользователем, а серверная (vote.php) - за считывание и запись результатов голосования.

Поехали:

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

Популярность: 8%

Сен 11

Продолжаю тему Google AJAX API. На этот раз мы будем работать с поиском от google. Google AJAX API позволяет взаимодействовать с поиском Google, не заходя на сайт google.com.

Работа с Google AJAX Search API, как и со всеми другими API, будет осуществляться через специальные js-классы. Эти классы будут асинхронно отправлять на google строку поиска и возвращать результаты поиска в формате JSON. Такой подход позволяет легко интегрировать поиск от google в любой веб-сайт.

Кроме формата JSON для поиска можно использовать стандартные элементы управления от google. Приведу сразу пример использования этого класса.

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

Популярность: 8%

Сен 3

В предыдущей статье про DoJo мы рассмотрели механизмы взаимодействия с php-скриптом на основе Ajax. Но там не была рассмотрена важная особенность - возможность делать submit любой существующей формы на страничке.

А зачем нам делать submit формы? Можно же просто сформировать некоторый GET-запрос вроде этого:

main.php?action=add&what=address&value=123

Дело в том, что у передачи формы скрипту есть преимущества по сравнению с простым GET-методом:

  • сложно закодировать что угодно с помощью URL и передать скрипту (например, двоичные данные)
  • нельзя передать динамично изменяющиеся параметры (из текстового поля например)
  • нельзя передать файл (input type=file)

Сейчас мы с Вами научимся передавать форму нашему php-скрипту с помощью DoJo. Поставим перед собой цель: загрузить файл на сервер и при этом передать его короткое текстовое описание, которое сохраним в текстовом файле. При этом скрипт должен нам вернуть 1, если все ок (файл принят и сохранен), иначе - 0.

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

Популярность: 8%

Авг 29

Сегодня мы рассмотрим, как пользоваться механизмами для работы с Ajax в Dojo. Про Ajax я уже писал в другой статье, но то было для библиотеки jQuery. Но все равно советую прочитать сначала ее, прежде чем продолжать чтение дальше. Иначе некоторые моменты могут быть непонятными.

Ajax в Dojo реализован через так называемый XMLHttpRequest. Первым делом рассмотрим самый простой случай: когда скрипт на php вернет нам какой-то html-код, а мы этот код присвоим какому-нибудь элементу на странице. Причем сделаем это без перезагрузки страницы (на то и Ajax :) ). Формат этого простого случая называется AHAH.

Сделаем так, чтобы при нажатии кнопки мы узнали о номере версии PHP.

Для этого напишем очень простой скрипт, который будет просто возвращать номер версии PHP: <? echo phpversion(); ?>. И поместим этот код в файл version.php.

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

Популярность: 8%

Авг 28

Все кто когда-то писал различного рода CMS от полноценных до простых скриптов галерей, сталкивались с проблемой создания уменьшенных копий изображений или thumbnail`ов на php (в народе известны как “превьюшки”).

Картинки на входе (которые надо уменьшить) могут быть с различными соотношениями между длинной и шириной, а на клиентской стороне скрипта (то, что видит посетитель сайта), задаются фиксированные размеры области вывода. Наша задача заключается в том, чтобы создать из первого – второе с помощью php.

Тут следует упомянуть еще один момент, который будет непосредственно рассмотрен в этот статье. На самом деле способов создания thumbnail`ов на php существует два (еще подскажете еще один, буду признателен):

  1. Изменение масштаба изображения (сжатие размеров).
  2. Выделение области, которая будет выводиться.

С первым все понятно, так как это самый популярный прием. Второй же случай встречается реже и не является автоматическим (нужно чтобы человек выделил область, из которой будет делаться превьюшка).

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

Популярность: 10%


Страница 1 из 3123»