Задать вопрос
Профиль пользователя заблокирован сроком с 6 мая 2016 г. и навсегда по причине: Мат в комментариях
  • Не подключается база данных?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Для взаимодействия с MySQL из PHP, надо юзать mysqli.
    Вот тут простейший пример чата с применением mysqli (выборка и добавление записей):
    codeproject.com/Tips/1065669/How-To-Build-Web-Site...
    Вообще статья про AJAX, но в начале там все делается как раз без AJAX, как и без прочих наворотов. В этом и изюминка.

    > Не через PHPMyAdmin, потому, что к нему, говорят, лучше не привыкать.
    Чушь говорят. Это вообще другое. phpMyAdmin - это средство для администрирования баз данных (прежде всего - создания и дизайна их). Это НЕ средство для программного подключения к ним.
    Но для программного подключения, БД сперва нужно создать со всеми таблицами. phpMyAdmin здорово упрощает эту работу.
    Ответ написан
    Комментировать
  • Как и где найти тестеров приложения на Андроид за деньги?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    А просто на сайтах фриланса - не вариант?
    Да где угодно можно поискать. Скажем на otvet.mail.ru Там как раз много тех, кому нечего делать. Напротив, мало кто там занят чем-то серьезным.
    Ответ написан
  • [C#] Как дождаться завершения треда и выполнить определенные действия?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    По Threadам особо не думал над этим. Почему бы тот MessageBox не показывать в том же самом методе calculate?
    Если требуется обращение к GUI - то Invoke в помощь.

    А вообще, в современном C# для асинхронности есть задачи (Task) и async-await, и вот await по определению как раз ждет, когда задача выполнится.

    Вот типа такого писал (внимание на слово "async" - оно обязательно):
    private async void button1_Click(object sender, EventArgs e)
    {
        var s = await Task<string>.Factory.StartNew(() => {
            /* Этот код выполняется асинхронно - в отдельном потоке */
            return "Test";
        });
        
        /* А этот код снова в том же потоке */
        MessageBox.Show(s);
    }

    VS была 2013. Но .NET - не 4.5, а 4.0, подключил NuGetовский пакет Microsoft Async.
    Ответ написан
    9 комментариев
  • Как с помощью c# подключиться к wss?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Обычный HTTP-запрос, если не ошибаюсь.
    Так что если вы его можете передать, но не с помощью C#, а как-то еще - то отследите его сниффером (например Fiddlerом) и симитируйте на C# с помощью HttpWebRequest или библиотеки RestSharp (она несколько проще и удобнее)
    Ответ написан
    Комментировать
  • Конфигурация компьютера для нормальной работы Android SDK в eclipse?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    1) 4 ГБ ОЗУ надо эклипсу. Тут уж никак иначе.

    2) Насчет ЦП, у меня вообще 1 ГГц. Это при Win 8.1 x64.
    Для новых версий Eclipse это жуть как мало.

    3) НО я себе сделал особо облегченную сборку, специально выбрав Eclipse не поновее, а полегче!
    Можете тоже пользоваться, работает "из коробки":
    https://yadi.sk/d/Kb1p4ZzajaU93
    На моем конфиге, конечно, притормаживает, но работать вполне можно.

    ...Чего не скажешь об Android Studio. С ней работать не могу вообще - ЦП "не хватает".
    Ответ написан
    Комментировать
  • Где можно продать скрипты и утилиты, полезные для бизнеса?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Боты что ли? На своем сайте продавайте.
    Ответ написан
    5 комментариев
  • Какую лицензию использовать для Open Source проекта?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Никто не запрещает потом взять и сменить лицензию.
    А вообще, "он будет разрабатываться Open Source до определённого момента" это обычно означает, что проект - УГ.
    Если вам стыдно брать деньги за ваше поделие и вы не хотите позориться, но тем не менее хотите его опубликовать зачем-то, то 99.99% оно так и останется убогим поделием. А исходники огромные чужие не пойми каких проектов - сами по себе никому, кроме вас, не нужны, по большому счету.
    Нормальный проект должен быть изначально коммерческим, но с воронкой продаж, маркетологию учить надо.
    Ответ написан
    4 комментария
  • Как средствами С++ находить и нажимать кнопку на веб странице?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Идея-пиндея.
    Автокликеры - самый примитивный подход к созданию ботов. Было бы все так просто - мастерам в этом деле (например, мне) не платили бы столько.
    Как минимум надо использовать браузерные движки, а лучше HTTP-сниффер + чистые HTTP-запросы; под винду надо писать на C#, а не C++; и т.д.
    Ответ написан
  • Как вы систематизируете полученные знания?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Я обучаюсь исключительно на практике, в процессе чего возникает общее представление (в моем случае - общая логика - я же программист, что неудивительно на этом форуме), которая занимает очень мало места в памяти.

    Есть вещи, которые действительно надо запомнить.
    Скажем, версию некоего фреймворка, начиная с которой в нем поддерживается некая фича.
    Но этого мало, и я запоминаю.

    Публичные статьи тоже пишу (все статьи, которые пишу, - публичные, и причины тому, надеюсь, понятны), прежде всего там куски кода, ведь недостаточно уметь написать код (понимать логику), надо еще и реально его написать, а это лишнее время и силы. Готовые исходники позволяют и освежить знания логики, и быстрее написать код.
    Ответ написан
    Комментировать
  • Как использовать методы типа GET в языке Python?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Вы, похоже, путаете одни "методы" с другими "методами".

    Во-первых, не бывает никаких "методов типа GET".
    Это называется "запросы методом GET", что означает "запросы типа GET". В терминологии HTTP, слово "метод" означает "тип запроса".

    А методы API (каким, по-видимому, является getRules) - это адрес (URL), к которому нужно делать HTTP-запрос методом GET или методом POST.
    Адрес должен быть полным. В документации могут опускаться полные адреса для запросов, вместо них там так называемые "методы API".
    Но по-любому нужно раздобыть полный URL. Он должен быть в документации где-то (его первая часть общая дя всех "методов API"). Также его можно найти методом гуглинга.

    С Телеграмом не работал, но приведу пример для API ВКонтакте.

    Вот документация со списком "методов API":
    vk.com/dev/methods

    Вот описание в ней "метода" под названием "users.get":
    vk.com/dev/users.get

    А вот какой полный URL у нас получается в итоге:
    http://api.vk.com/method/users.get?user_ids=58756174


    Вот эта вот часть - "api.vk.com/method" - она общая для всех "методов API" в случае с VK API.
    Разумеется, для какого-то другого API она будет другая совсем. Ее нужно найти - в документации либо в гугле. Это возможно, если гуглить примеры кода с этим API.

    Этот полный URL мы можем открыть в браузере (т.к. API поддерживает GET-запросы), и увидим, что все работает. Также мы может отправить по нему GET-запрос программно, получится типа такого:
    requests.get("http://api.vk.com/method/users.get?user_ids=58756174", ...)


    Еще рекомендую скачать и поставить сниффер Fiddler, это практически незаменимое средство для тех, кто пишет боты.
    Он позволяет перехватывать все GET/POST-запросы с вашего компа, его можно использовать для отладки и для реверс-инжиниринга.
    Ответ написан
    3 комментария
  • Как в frontend данные вывести?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    > использую AdminLTE
    Этого не знаю. Оно здесь важно?

    Вот есть кривой пример комментариев на фреймворке Yii2:
    https://yadi.sk/d/QI_xy9gFkHUL5
    Когда я писал этот пример, я впервые перескочил с голого PHP на фреймворк, да и на голом опыта имел мало, потому все сделано криво, небезопасно, вместо голых SQL-запросов следовало использовать ActiveRecord и т.д.
    НО то, что я хотел сделать, я сделал, и оно работает.
    Ответ написан
  • Загрузка видео-роликов и их просмотр на сайте без YouTube - как?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    YouTube полностью работает по протоколу HTTP(S).
    Поэтому, если официальное API не позволяет сделать задуманного, то можно взять сниффер вроде Fiddler, отследить те GET/POST-запросы, которые фронт-енд ютуба отправляет бек-енду при загрузке видео, и имитировать их отправку на PHP, чтобы получить то же самое, что получил бы фронт-енд.
    Не сказать, чтобы это было легко в случае с гугловскими сервисами. Google берёт количеством. Это их фирменный индусский стиль. Там тупо слишком много всего придется учесть и имитировать: много и параметров, и запросов, и кода. Времени и сил много потратить придется. Но тем не менее, это 100% возможно.
    Видео там потоковое, подгружается по кускам, но можно отправить и такой запрос, чтобы подгрузилось все сразу.
    Ответ написан
    Комментировать
  • Какие есть js подобные языки?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Если отвечать на вопрос в лоб, то:
    1) NodeJS.
    Любой серверный язык может использоваться и как десктопный.
    Хотя возникнут проблемы и со специальными IDE, и с библиотеками, и с исходниками/документацией по всему этого. Их просто толком нету.
    Но если вы пишете крупный, серьезный, долгосрочный проект, то почему бы не напилить все это самим? MS же прошел через это. А любой хороший фреймворк сам по себе коммерчески ценен. Но не слишком ли громкие планы?
    2) На винде еще JScript (но это скорее утилитарный язык).
    3) И JScript.NET (давно канул в лету, потому опять голяк с IDE, исходниками, документацией).

    Ну и зачем подобные извраты? Не проще ли освоить полноценный десктопный язык?
    Привязываться к синтаксису программист не должен. А всё остальное на десктопе по-любому отличается. И, скажем, у C# тоже синтаксис удобный довольно, при этом под винду на нем куда удобнее писать.

    Если у вас есть алгоритмы на JS и их надо на десктоп, то проще внедрить их в приложение на C# с помощью JS-движков.
    Если у вас HTML+CSS+JS, то браузерные движки нужны, их немало...
    Другое дело, если у вас ВСЁ на HTML+CSS+JS...
    Ответ написан
    Комментировать
  • Браузер(Chrome, IE, Firefox) со встроенной Java?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    В Chrome 42+ не поддерживаются Java-апплеты, т.к. не поддерживаются плагины, реализованный через NPAPI, а Java-плагин реализован только под него, и под PPAPI не портирован.
    Ответ написан
    Комментировать
  • Как организовать выборку элементов в HtmlAgilityPack?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Проблема в ваших XPath-выражениях.

    // - абсолютный путь, действует в контексте ВСЕГО документа, возвращает первую ветвь в документе, а не в той ветви, где вы это хотите. В этом случае SelectSingleNode всегда срабатывает как doc.DocumentNode.SelectSingleNode

    .// - относительный путь, действует именно относительно ДАННОЙ ветви
    Ответ написан
    Комментировать
  • Архитектура Android os. Что почитать?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    > Понимаю что в силу быстрого развития данной ос найти русскоязычную книгу с последними "вкусняшками" нереально.
    Развитие не такое уж и быстрое.
    Дело не в этом, дело просто в том, что на свете крайне мало тех, кто хочет и может изучать программирование на таком глубоко уровне, да еще и писать об этом книги для других.
    Поэтому единственный способ изучить архитектуру Android - это изучение его исходников. Благо, они открытые.

    Лично я отношусь к тем немногим людям, кто изучает всё достаточно глубоко. Это моя работа (вернее, одна из - я Reverse-Engineer).
    Но тех, кому бы реально пригодились мои книги или статьи, тоже очень мало.
    Ну вот скажем на Android до недавнего времени нельзя было штатными высокоуровневыми средствами отправить MMS без Intent. И вот я раскапываю com.android.mms, пишу код, который отправляет MMS без Intent, и выкладываю его в паблик. Ну работает. Ну отправляется. Ну прикольно. А дальше чо? Дай Бог одному человеку из всех читателей это реально пригодится.
    ...А времени и так на всё не хватает. Поэтому пишу статьи, и вообще занимаюсь, в первую очередь более популярными, более высокоуровневыми, темами.
    Ответ написан
    6 комментариев
  • Как формировать sql запрос из datagridview c#?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    > Как научить DGV формировать нужный мне запрос?
    Сам грид ничего формировать не умеет.
    В .NET вообще нет ничего подобного, НАСТОЛЬКО высокоуровневого.

    Вам надо самим получать выбранную строку грида, затем значения из ее ячеек и, наконец, составлять SQL-запрос.
    Причем, выбранная строка - это может быть как dataGridView1.CurrentRow, так и dataGridView1.SelectedRows (смотря где именно кликнет юзер), поэтому нужно реализовать оба варианта, с проверками на null.

    Вариант с dataGridView1.CurrentRow:
    MessageBox.Show(dataGridView1.CurrentRow.Cells[0].Value.ToString()); // Cells[0] - первый столбец


    Вариант с dataGridView1.SelectedRows:
    MessageBox.Show(dataGridView1.SelectedRows[0].Cells[0].Value.ToString()); // Cells[0] - первый столбец
    Ответ написан
    Комментировать
  • Как правильно делать локализацию JavaScript-приложений?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    1) Не приходило ли в голову хранить в том JSON-файле перевод сразу всего куска HTML, а не по кусочкам? Тогда бы не пришлось ничего конкатенировать. Тогда в JS было бы достаточно:
    $("#debug").html(chrome.i18n.getMessage("debug_page_html"));

    Это и по производительности, пожалуй, было бы чуток быстрее.

    2) не приходило ли в голову не искать какие-то готовые библиотеки с избыточным функционалом, а просто написать СВОЮ функцию-шаблонизатор, которая бы заполняла пропуски в шаблоне HTML.
    Получится как-то так:
    $("#debug").html(my_own_function(
      '<h1>{{debug_page}</h1><h2>{{key_permissions}}</h2>',
      chrome.i18n.getMessage("debug_page"),
      chrome.i18n.getMessage("key_permissions")
    ));

    Это ведь не так уж и сложно.
    Ответ написан
    Комментировать
  • Стоит ли идти изучать Node.Js, или стоит подкрепить знания по JS??

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    А причем тут NodeJS и, скажем, регулярные выражения?
    Исходить надо из реальных задач, и учиться на реальных задачах.
    Если вам нужно поднять сервер - берите NodeJS и поднимайте сервер.
    В остальных случаях он ни к чему. Если нужны регулярки - изучайте регулярки. Мне вот они почти не нужны, так я их почти и не знаю, что не мешает мне знать дофига другого - того, что нужно.
    Ответ написан
    1 комментарий
  • Стоит ли делать регистрацию на Ajax?

    @VZVZ
    Reverse-Engineer, Software Developer, Architect
    Если вы хотя бы в перспекстиве планируете, помимо собственно веб-морды (HTML+CSS+JS), писать еще и мобильный/десктопный клиент, и в нем планируется поддержка регистрации, то лучше сделать AJAX, и не просто AJAX, а удобное стройное REST API с JSON. Оно реально облегчает написание дополнительных клиентов.
    Ведь в клиенте вам придется на какой-нибудь Java (если под Android) делать эти замые запросы к back-end (те, которые делает веб-морда), а отправлять из джавы запрос в формате application/x-www-form-urlencoded (и уж тем более получать ответ в виде HTML, который потом мучительно парсить регулярками или либами типа jsoup) - явно не очень удобно, да и по производительности тоже не очень - HTML всегда избыточен. Лучше, чтобы хотя бы в ответе был JSON, а для этого уже нужен AJAX.
    Ответ написан
    Комментировать