Как заработать в сети internet
Пятница, 19-Апр-2024, 20:23
Меню сайта

Форма входа

Поиск

Календарь
«  Апрель 2024  »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930

Архив записей

Друзья сайта
  • Úklid v Praze

  • Статистика



    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0

    Сколько не искал, но так и не смог найти внятного объяснения работы класса Exception в PHP. Да и сейчас не все в нем понимаю, но главное, что я понял, что можно вбросить исключение без блока try-catch. И вот как это выглядит:

    class MyException extends Exception{
     public function __construct($name, $code = 1){
     parent::__construct($name, $code);
     echo $this->getMessage() .' ' . $this->getLine() . ' '. $this->getFile() . ' '. $this->getCode();
     exit;
     }
    }
    
    if (!isset($lalal)){
     throw new MyException('lala2 not executed', 6);
    }

    Exit в конце исполнения обязателен, иначе пхп вызовет оригинальный Exception и ругнется, что его никто не поймал ;)))

    Просмотров: 761 | Добавил: websponsory | Дата: 17-Фев-2015 | Комментарии (0)

    После написания статьи прошло достаточно много времени. И захотелось сделать нечто более универсальное. Для начала надо отделить наш прототип от основного скрипта. Поэтому в основной скрипт пишем:

    Код

    Components.classes["@mozilla.org/moz/jssubscript-loader;1"]
      .getService(Components.interfaces.mozIJSSubScriptLoader)
      .loadSubScript("file:///c:/path/to/file/name.js?" + Math.random());

    В идеале хорошо бы выделить отдельный каталог вроде "c:\scripts" под такие вложения, поскольку ими вполне можно будет пользоваться не один раз. Случайное число прибавляется к имени для того, чтобы ФФ не складировал наш прототип в кеш и нам не требовалось бы каждый раз перезапускать браузер, при малейших изменениях. Пока ничего сложного. Теперь создаем новый файл со следующим содержимым и укладываем его по вызову:

    Код

    var fW = function (Name, Path) {
      if (!(this instanceof fW)) {
      return new fW(fileName, filePath)
      } // все равно объект получите!!!
      var Cc = Components.classes;
      var Ci = Components.interfaces;
      this.fileName = Name;
      this.filePath = Path;
      this.file = Cc['@mozilla.org/file/local;1'].createInstance(Ci.nsILocalFile);
      this.file.initWithPath(this.filePath);
      this.file.appendRelativePath(this.fileName);
    };

    fW.prototype.readFileAll = function(){
      this.stream = Cc["@mozilla.org/network/file-input-stream;1"]
      .createInstance(Ci.nsIFileInputStream);
      this.stream.init(this.file,0x01, 00004, null);
      this.streamSize = Cc["@mozilla.org/scriptableinputstream;1"]
      .createInstance(Ci.nsIScriptableInputStream);
      this.streamSize.init(this.stream);
      return this.streamSize.read( this.streamSize.available() );
    }

    На данный момент наш "классик" состоит из конструктора, который инициализирует основные переменные и одного прототипа функции, которая читает содержимое файла. Полностью. Прототипом мы добиваемся того, что при создании нескольких объектов, с помощью данного конструктора, функции не копируются в сам объект, а остаются в единственном экземпляре, и разделяются нашими объектами.

    Ну и главное, как же этим всем пользоваться. Все достаточно просто. Вот пример загрузки содержимого файла в переменную:

    Код

    var file = new fW("my_file.txt", "c:\\path\\to\\my\\file\\here");
    var contents = file.readFileAll();

    Мы просто создаем объект. При начальной инициализации переменная file привязывается к нашему файлу. Если потребуется считать из другого файла - надо создать новый объект. Но можно впоследствии создать прототип функции, которая поменяет свойства объекта на требуемые. Это на будущее...
    Просмотров: 581 | Добавил: websponsory | Дата: 18-Ноя-2013 | Комментарии (0)

    О чем я постоянно забываю, что Outpost блокирует доступ к внешней сети виртуальных машин, созданных в  VirtualBox. Для нормальной работы последних необходимо добавить в "Настройках - Системные правила - Низкоуровневые правила" следующее:

    Where the Protocol is IP
        and protocol type is ICMP, TCP, UDP
        and Local Address is (*перечисляются локальные адреса виртуальных машин*)
     Allow It

    И все будет работать. Только я постоянно об этом забываю и мучаюсь потом по полтора часа.

    Просмотров: 1788 | Добавил: websponsory | Дата: 11-Ноя-2013 | Комментарии (0)

    Вот есть такое во мне. Страшно не люблю огромные простыни кода. И где есть возможность - делю его на отдельные файлы. Вот и для скриптов на iMacros  я искал возможность отделить часть функций и прототипов от основного скрипта, дабы не мешались под ногами. Одна проблема - загрузить их потом во время выполнения. Поиск по JS выдает кучу информации, но только связанной с разработкой веб-страниц или плагинов. Но это не сломило меня и я нашел таки решение проблемы. Первым вариантом было нечто очень нагруженное вызовами и... Да что рассказывать, вот оно:

    Код

    var file = Components.classes["@mozilla.org/file/local;1"]
      .createInstance(Components.interfaces.nsILocalFile);
    file.initWithPath("c:\\path\\to\\file\\myscript.js"); // <-- имя файла тут
    var scriptURI = Components.classes["@mozilla.org/network/io-service;1"]
      .getService(Components.interfaces.nsIIOService).getProtocolHandler("file")
      .QueryInterface(Components.interfaces.nsIFileProtocolHandler)
      .getURLSpecFromFile(file);
    Components.classes["@mozilla.org/moz/jssubscript-loader;1"]
      .getService(Components.interfaces.mozIJSSubScriptLoader)
      .loadSubScript(scriptURI);


    Перебор, но оно работает. Правда потом откопалось более изящное и простое решение:

    Код

    Components.classes["@mozilla.org/moz/jssubscript-loader;1"]
      .getService(Components.interfaces.mozIJSSubScriptLoader)
      .loadSubScript("file:///c:/path/to/file/myscript.js");


    Прошу любить и жаловать. А заодно и пользоваться. Правда осталось еще 2 проблемы, к которым я пока не смог найти решения. Во-первых, это любовь ФФ к кешированию всего и вся. Увы, но малейшие изменение прицепляемого файла требует перезагрузки браузера. Иначе изменение просто не будет учтено. Файл будет получен из кеша... Ну и во-вторых, я пока не смог изнутри скрипта определить папку, из которой он был запущен. То есть, надо пока жестко прописывать пути ко всем файлам. И любое перемещение скрипта требует его правки в области основных настроек. Хотя, если взять за правило в отдельных файлах держать только прототипы, которые используются в 2х и более скриптах, то имеет смысл для них просто завести отдельную папку и ссылаться на нее.
    К слову, один подобный прототип я опубликую в течении пары дней, в качестве замены несколько устаревшей статьи. В нем будет учтен мой прогресс в изучении JS и... ну и что-то еще. Это точно.
    Просмотров: 588 | Добавил: websponsory | Дата: 09-Ноя-2013 | Комментарии (0)

    Из буксовых новостей только полученные бонусы и выплаты.
    Neobux порадовал бонусом на adprize. Всего полдоллара, но это лучше, чем ничего.


    Причем не далее как в воскресенье я получил 0,25 в призах. Радует. А заодно заказал выплату. И сразу ее получил:


    Следующей радостью стал Cash'n'Hits. Выплата пришла как обычно. В полном объеме.


    Ну и набор на Clixsense за 1 день тоже неплохо выглядит. Всегда бы так.

    Просмотров: 453 | Добавил: websponsory | Дата: 31-Окт-2013 | Комментарии (0)

    Регистрируюясь заново в этой системе, не думал, что там что-то сильно поменялось. Но это так. Попытки заработать на нем, которые были полтора года назад, провалились полностью. Но сейчас... За 10 дней было получено:

    Игра "угадай клетку" кроме обычных


    неожиданно принесла аж 2 раза подряд


    А сегодня кроме игры еще и в заданиях появилось что-то стоящее, что дало мне дополнительные центы:





    И пока это все без премиумов и рефералов. Вполне неплохо получается. Скоро первую выплату получу :)))
    Просмотров: 1034 | Добавил: websponsory | Дата: 20-Окт-2013 | Комментарии (0)

    Интересное дело. Периодически сам заползаю в свои раннии статьи за готовым кодом для новых скриптов. Правда их тут больше, чем видно обычному пользователю...
    Просмотров: 478 | Добавил: websponsory | Дата: 07-Окт-2013 | Комментарии (0)

    Прошли сутки. Жаль, что не хватило моих сил на большее, но вот результат:

    Итого имеем 3х арендованных рефералов за 0,60 и 0,863 на счету. Вроде неплохо получилось. Одно огорчает - следующих рефов смогу купить только через неделю. Но надеюсь, что много...
    Просмотров: 433 | Добавил: websponsory | Дата: 04-Окт-2013 | Комментарии (0)

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


    97 просмотренных реклам = 0,097 из баланса. Остальное заработано иным способом за один вечер. И это я еще ленился. :)))
    Просмотров: 471 | Добавил: websponsory | Дата: 03-Окт-2013 | Комментарии (0)

    Вот даже интересно, будет ли интересен цикл статей для начинающих о том, как создать свой тулбарчик для файрфокса с разными плюшками, блек джеком и другими удовольствиями? Информация вроде не особо заезженная...
    Просмотров: 471 | Добавил: websponsory | Дата: 02-Июн-2013 | Комментарии (0)

    1 2 3 ... 9 10 »
    Copyright MyCorp © 2024
    Бесплатный хостинг uCoz