Архив

Архив автора

Изобретая велосипеды: AJAX

2 декабря 2008 15 комментариев

короче, суть в том, что нужно мне было сделать штуку, чтобы удобно было делать запросы через ajax и не менее удобно обрабатывать ответы от них.

так вот, если раньше я таскал за собой или дикий кусок js, изменять который было сложно или некий фреймворк типа jQuery, то теперь я сделал простенький объект, который делает всю грязную работ,. а мне остается только передать параментры и функцию обработки, и поскольку я не жадный, то нате:

if (typeof jsAjax == "undefined" || !jsAjax) {
  var jsAjax = {};
}

jsAjax.ajax = typeof jsAjax.ajax != 'undefined' && jsAjax.ajax ? jsAjax.ajax : function(o) {
  var url = (typeof o === 'string') ? o : o.url;
  var callback = (typeof o.callback === 'undefined') ? function() {} : o.callback;
  var method = (typeof o.method === 'undefined') ? 'GET' : o.method;
  var type = (typeof o.type === 'undefined') ? 'text' : o.type;

  var len = (typeof o.vars === 'undefined') ? 0 : o.vars.length;
  var str="";
  for(var i = 0;i < len;i++)
  {
    if(i!='0')
    {
      str=str+'&';
    }
    str=str+o.vars[i].name+'='+escape(o.vars[i].value);
  }

  var xhr = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();

  var onCompleteRequest = function () {
    if (xhr.readyState == 4)
    {
      if (xhr.status == 200)
      {

        if (type == "text") {
          r=xhr.responseText;
        } else if (type=="json") {
           r=eval('('+xhr.responseText+')');
        } else if (type=="xml") {
          r=xhr.responseXML.documentElement;
        } else {
          r=xhr.responseText;
        }
        callback(r);
      }
    }
  };

  xhr.open(method, url, true);
  xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  xhr.setRequestHeader('Accept-Language', 'en');
  xhr.setRequestHeader('Accept-Charset', 'utf-8');
  xhr.onreadystatechange=onCompleteRequest;
  xhr.send(str);

};

Пользоваться безумно просто, чтоб было более менее понятно, несколько примеров:

jsAjax.ajax("http://example.com/");

jsAjax.ajax({url:"http://example.com/",vars:[{name:"x",value:"y"},{name:"y",value:"x"}],method:"POST",callback:function() {alert(r);}});

jsAjax.ajax({url:"http://example.com/",vars:[{name:"x",value:"y"},{name:"y",value:"x"}],method:"POST",type:"json",callback:someFunction});

теперь по поводу параметров:

можно передать просто текст, тогда он будет считаться адресом и сделает тупой GET запрос, а можно поступить умнее и заполнить структурку состоящюю из следующих полей

url – адрес который запрашиваем
vars – список параметров запроса в виде:

[{name:"someName",value:"someValue"},{name:"someOtherName",value:"someOtherValue"}]

method – метод запроса (GET или POST)
type – тип ответа передаваемый в функцию обработки (text,json,xml)
callback – функция обработки ответа (ответ в соответствии с типом как видно из кода передается одной переменной)

вообщем вызов с полным списком переменных будет выглядеть примерно так:

jsAjax.ajax({
url:"http://somedome.com/somepage.php",
vars:[{name:"someName",value:"someValue"},{name:"someOtherName",value:"someOtherValue"}],
method: "POST",
type: "text",
callback: function (answer) { alert(answer); }
});

вот вообщем и все. :)
P.S. вот ссылочка на файл исходника.

Яндекс – потеряем все!

30 августа 2008 18 комментариев

Под таким девизом прошел у меня последний апдейт…
Из индекса выпало половина сайтов. Большая часть с уникальным контентом, причем я даже счетчики на них повесить не успел, не говоря уже о сапу или чего нибудь подобном.

Сайты спокойненько жили в индексе несколько месяцев (ну руки у меня до них не доходили), а тут бац бац и мимо индекса :( (

Написал Платону, типа так мол и так, сайт чето вылетел, а он мне:

После анализа и классификации страниц Вашего сайта наши алгоритмы приняли решение не включать его в поиск. Это может быть вызвано неуникальностью информации, использованием поискового спама или тем, что многие страницы сайта созданы автоматически и не предназначены для чтения пользователями.

Ладно бы правда контент гнилой был, или там ссылок толпа, так вообще поидее все шоколадно :( (

Вообщем я сильно расстроился. Надо будет проверить контент, может он резко перестал был уникальным… но чтоб вот так сразу на нескольких сайтах….

мда…

8 августа 2008 Комментариев нет

Иногда ведь и правда хочется поставить такой статус:

ща как нухярюсь…чтоб ваще в гавно и нихуя непомнить, чтоб перегаром разило на 10м^2 и все шарахались как от прокаженого, и чтоб с утра во рту было как будто там ночевал табун лошадей и каждая навалила огромную кучу, и чтоб башка трещала будто долбят по ней кузнечным молотом и виски ломило так, словно в них вкручивают по здоровому,ржавому да еще и кривому шурупу…и чтобы наконец то узреть этих гребаных зелененьких чертиков, и чтоб санитары приехали на красно-белой машине и поставили диагноз «Белая горячка»…пшли все нах!

Вот такие дела…

Categories: Мои новости Tags:

О как или подайте люди добрые :)

1 августа 2008 Комментариев нет

Прочитал: оказывается 11% спама приходится на Россию, чето мне думается что больше! :)

А вообще я не об этом. :)

Очень часто на блогах вижу кнопочку типа дай денег :)

например вот такая форма от яндекса:

Ну или просто перечисляют кошельки в вебманях, чтоб туда денег сыпалось, ну например вот здесь висит форма от яндекса, типа на блоговое дело. Прикольно! :)

Очень мне хочется узнать сколько денег например в месяц приносит така кнопка :)

Я ее организовал на работе, когда у народа интернет заканчивается, вылазит вот такая страничка. Народ преццо, но денег так никто и не дал, видно контингент не тот :) ))

Вот такие вот дела :)

Про пьянство

У каждого пьянства свой запах особый:
Ликёр пахнет тайных фантазий свободой.
Шампанское пахнет кокетством и флиртом.
Разбитая морда – разбавленным спиртом.
Развратом и страстностью пахнет коньяк.
Взрывным позитивом – абсент натощак.
Вино отдаёт дорогим рестораном.
От вермута пахнет хихиканьем пьяным.
Коктейлями пахнут дебош и кураж.
Закваской хмельною воняет алкаш.
Утратой способности двигаться – водка.
Стремленьем по бабам пройтись – виски стопка.
Джин пахнет желаньем нажраться красиво.
Желаньем отлить отличается пиво.
Похмельем тяжёлым с утра – арманьяк…
И только лишь трезвость не пахнет никак!!!

ЗЫ. Не пейте люди, оно фуфел :)

Categories: Мои новости Tags:

AJAX

25 июня 2008 24 комментария

Ротанд айсикю: а AJAX это вынос мозга?

Remper: да нет по сути
если знаешь JavaScript на должном уровне
AJAX – асинхронный яваскрипт и XML
по сути – приём и передача POST и GET запросов при помощи инструментов динамической веб-страницы

Ротанд айсикю: понятно ) посути я иду фпесду )

Categories: Мои новости Tags:

Мляяя!!! Bash.org жжет :)))

Fieriya.
Сидим после праздничков работаем, вдруг как гром среди ясного неба адский храп новенького сотрудника. Подхожу потолкать.. смотрю последнее, что бедняга успел загуглить «Лекарство от храпа», меняю тихонько в строке поиска надпись на «Лекарств от Лунатизма» рядом кладу железную ножку от сломанного офисного стула полив ее кончик, кетчупом тихонько воссоздав в офисе панораму битвы с инопланетным разумом, все прячемся в соседнем зале, укладываясь в позах трупа. Звоним ему на рабочий.

Вид от лица главного героя в его пересказе после (в курилке):
DimsonN
«блядь, одупляюсь хватаю телефон там уже гудки, цепляю какуйто хуйню железную измазанную в красной дряни. Мне стыдно боюсь повернуться .. думаю мож не заметили, что я дрых.. потом мысль, а сколько я дрых? Глядь на часы на компе. блядь 20 минут.. смотрю надпись Лунатизм.. начинаю тупить.. поворачиваюсь. спросить…а ааа (С) «Ну бля мужики мне хватило и плаката Тимошенко на половину пропущенного в шредере на полу» следующий кадр, вижу сцуко все трубки сняты, и там тишина.. в голове пиздец по сильнее того, что вы устроили в офисе.. особенно когда видишь горизонтально торчащие женские сапоги из ванной и слышны стоны из соседней комнаты… думаю грабили!.. хватаю железо .. с дрожью в коленках иду в зал тихо открываю дверь и когда от туда выпадает рука… и я вижу вас всех скукожанных на полу, и орущих мне «НЕеееТТТ Дима!!! проснисььь Дима это СОН!!! НЕ надо больше!!!» мне настает полный пиздец…

Categories: Мои новости Tags:

В чем сила брат? В MySQL!

Сижу пишу систему управления правами доступа пользователей к разным функциям сайта.
В итоге для вывода всех пунктов меню в соответствии с выданными правами доступа наваял такой запрос:

SELECT rlp.name,CONCAT(rlp.label,’.php’) AS ‘url’ FROM (`right_list` AS rl JOIN `group_rights` AS gr ON (rl.id=gr.right)) JOIN `right_list` AS rlp ON (rl.parent=rlp.id) WHERE gr.type=»" AND rl.label=’read’ AND gr.group=1 ORDER BY rlp.order;

Аж самому понравилось :)

Евро 2008: Начало?

Если уж начало, то не настолько позорно! 4:1 это жесть. Похоже полоса прухи закончилась. Испанцы порвали нас как котят! Мелких, слепых, неразумных. Если так дальше пойдет, то это просто крындец – это начало футбольного позора!

ЗЫ. Вообщем хорошо что не начали третью мировую, а то мало ли что, везение то вроде как закончилось! :)

Как же это все…

18 марта 2008 5 комментариев

зае..ало!!!

Хочу другую работу. интересную! Не могу больше заниматься какой-то  хуйней бесполезной.

Categories: Мои новости Tags: