Задать вопрос
  • Сместились фавиконки в заголовках вкладок гугл хром, как вернуть обратно?

    @stainer
    Комьюнити дожало разработчиков.
    https://issues.chromium.org/issues/332081796?pli=1

    В обновлении 124.0.6367.79 баг пофиксили.
    Но в обсуждении проблемы разработчики "намекнули", что они придерживаются позиции "исключить старый дизайн". Так что, есть вероятность, что проблемы продолжаться в будущем.
    Ответ написан
    Комментировать
  • Сместились фавиконки в заголовках вкладок гугл хром, как вернуть обратно?

    @kamsus Автор вопроса
    ВЫЯСНЕНО... это из-за обновы хрома (3 дня назад — у кого как)
    буржуинский народ тоже срёт кирпичами


    вот раз
    https://www.reddit.com/r/chrome/comments/1c5jgmu/i...

    вот два
    https://issues.chromium.org/issues/332081796

    решение в принципе есть — разрешить эти флаги: customize-chrome-side-panel
    и фавиконки отцентруются... НО...
    тогда вернётся всратый новый дизайн, который я спецом давил этими флагами.

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

    ждём, в общем, чем всё закончится, не мы одни такие... :(
    Ответ написан
    Комментировать
  • Как получить короткую уникальную строку для номера телефона?

    longclaps
    @longclaps
    Переведи в целое число и запакуй в base64. На питоне это можно сделать так:
    import base64, re
    
    def enc(telstr):
        s = re.sub(r'\D', '', telstr)
        if len(s) < 10 or len(s) == 11 and s[0] not in '78' or len(s) > 11:
            raise ValueError('"%s" не похоже на телефонный номер' % telstr)
        x, l = int(s[-10:]), bytearray(b'\0\0\0\0\0')
        for i in range(4, -1, -1):
            x, rest = divmod(x, 256)
            l[i] = rest
        return base64.encodebytes(l)[:7].decode('utf-8')
    
    def dec(b64):
        x = 0
        for b in base64.decodebytes(b64.encode('utf-8') + b'=\n'):
            x = x * 256 + b
        return x
    
    s = enc('8(926)123-4567') 
    print(s)          # AigDOYc
    print(dec(s))     # 9261234567
    Ответ написан
    Комментировать
  • Как реализовать отслеживание источника перехода, коим является редирект?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Регистратор имен не занимается редиректами. Регистратор может прописать алиасы в ДНС, чтобы все субдомены указывали на какой-то один IP адрес.

    Если делается редирект, то его делает какой-то веб-сервер. Вот его и надо настраивать, чтобы он добавлял параметр к адресной строке.
    Ответ написан
    2 комментария
  • Как убедить руководство сменить платформу разработки проекта, полностью переписав его?

    Zerstoren
    @Zerstoren
    Вы не сможете убедить руководство, что нужно сменять платформу или будет "миссия невыполнима". Если такая бадяга творится, заставьте разработчика на все баги писать тесты.

    Если это браузерный сервис, юзайте selenium, контролируйте успешность прохождения и показательные ли тесты. Сделайте систему CI (Jenkins как пример) и получается, что платформа будет той-же, кол-во багов будет сокращаться, но по мере покрытия тесатми.
    Ответ написан
    Комментировать
  • Как убедить руководство сменить платформу разработки проекта, полностью переписав его?

    Знакомый диагноз.
    Последние года занимался как раз консультированием, на тему того - как лучше и эффективней организовать подобные процессы работы.
    Скажу сразу - вряд ли В чего то добьетесь:
    1) У Вас не сильная аргументация.
    2) Сильная аргументация для бизнеса - это скорость наступления получения приемлемой прибыли.
    3) По сути - Вы упираетесь в платформу. Я программист, поверьте, Вы подняли вопрос из разряда холивара. Я видел одинаково удачные проекты, что на разных платформалх, причем, на некоторые программисты учились с нуля.
    4) Уже, если честно, очень поздно решать вопрос смены платформы - очень много денег потратите на то чтоб поменять и перестроить работу.

    И самое главное, когда надо было решать эту проблему:
    1) В самом начале.
    2) Не привлекать стадо фрилансеров
    3) Лучше нагнать в офис 2-3 программиста за ЗП + чтоб среди них был один самый опытны - он же постановщик. В таком ключе, не важно, какая платформа - выигрывают все по деньгам, по срокам и, самое главное, по срокам наступления окупаемости. + у Вас всегда под рукой будут разработчики, которые смогут допиливать проекты. Моя практика показывает, что, обычно такая конфигурация работает эффективнее чем 5-6 фриллансеров и один программист на предприятии, который сводит все это в одно.
    Вот на начальной стадии, лучше прогибать такой вариант, с финансовыми раскладами.
    Ответ написан
    4 комментария
  • Парсинг XML файла средствами MySQL

    И еще вопрос, возможно-ли сделать в рамках такого запроса удаление из БД тех записей, id которых не найдены в файле XML?

    Вот собственно сделай замену этого:

    
    if ("$total" == 0) {
            $sql = ("INSERT INTO users (id,login, realname, item_1, item_2) VALUES('$id','$login', '$realname', '$item_1', '$item_2')");
            $result = mysql_query($sql) or die("Error ".mysql_error());
        } else {
            echo 'ID или Login - существуют!';
        }
    

    на это:

    
    if ("$total" == 0) {
    		$sql = ("INSERT INTO users (id,login, realname, item_1, item_2) VALUES('$id','$login', '$realname', '$item_1', '$item_2')");
    		$result = mysql_query($sql) or die("Error ".mysql_error());
    	} else {
    		$q = "DELETE users FROM users WHERE users.id != '$id'";
        	mysql_query($q);
        	header("Location: index.php");
    	}
    

    P.S. Извините за спам :) - (сделайте возможность редактировать свой пост :) )

    Ответ написан
    5 комментариев
  • Парсинг XML файла средствами MySQL

    Вот под Твою XML-ку обработчик на PHP.

    Проверяет на уже существующий в базе ID и Login. Если TRUE - не вносит.

    
    mysql_connect("localhost", "xmluploader", "xmluploader") or die(mysql_error());
    mysql_select_db("xmluploader") or die(mysql_error()); 
    
    $xmlURL = "xml.xml";
    
    $sxml = simplexml_load_file($xmlURL);
    
    foreach($sxml->user as $user) {
    
    	$id = stripslashes($user->attributes()['id']);
    	$login = stripslashes($user->attributes()['login']);
    	$realname = stripslashes($user->attributes()['realname']);
    	$item_1 = stripslashes($user->items->item_1->attributes()['img']);
    	$item_2 = stripslashes($user->items->item_2->attributes()['img']);
    
    	$query = mysql_query("SELECT COUNT(*) FROM users WHERE login='$login' OR id='$id'") or die(mysql_error());
    	$user = mysql_fetch_row($query);
    	$total = $user[0];
    
    	if ("$total" == 0) {
    		$sql = ("INSERT INTO users (id,login, realname, item_1, item_2) VALUES('$id','$login', '$realname', '$item_1', '$item_2')");
    		$result = mysql_query($sql) or die("Error ".mysql_error());
    	} else {
    		echo 'ID или Login - существуют!';
    	}
    }
    

    Ответ написан
    Комментировать
  • Парсинг XML файла средствами MySQL

    @edogs
    поменять ее нельзя, это API со стороннего сервиса
    load xml — берет файл с локальной ФС, что мешает (тем или иным образом) обработать хмл (пусть даже в консоли регуляркой вырезав все ненужные item)?
    Получили файл от АПИ, обработали, залили в мускул.

    возможно-ли сделать в рамках такого запроса удаление из БД тех записей, id которых не найдены в файле XML?
    Напрямую никак. Можно импортнуть данные из ХМЛ во временную таблицу и на основе появившихся ИД — снести из основной все лишнее (delete from table main where id not in (select from table tempforxml))

    Вопрос обстоит в том, каким образом можно получить данные из item_1 которые находятся в атрибуте img. Когда я создаю в таблице поле с именем «img», туда парсятся данные из атрибута последнего тега item, и дублирования имен полей в MySQL не допустимо, а имена атрибутов поменять нельзя. Если кто знает, как еще можно обратиться к атрибуту через LOAD XML, просьба подсказать.
    Напрямую нельзя. Народ извращается с load data infile с последующей работой с xml в базе, по типу такого newtover.tumblr.com/post/14858246616/mysql-load-data-from-xml. Но вряд ли это будет эффективный способ.
    Ответ написан
    Комментировать
  • Почему Хабр несколько раз в день спрашивает капчу?

    Rpsl
    @Rpsl
    Кратко о себе
    Привяжите ключницу и забудьте про капчу.
    Ответ написан
    Комментировать
  • Apache + MySQL на Windows в production — как убедить людей что это плохо

    Stdit
    @Stdit
    Есть ли смысл переубеждать руководство? Можно просто сообщить (лучше даже письменно, или хотя бы по email), по мнению технического специалиста, чем такой выбор чреват, какие дополнительные затраты он принесёт, и в каком случае. Если руководство примет решение оставить такой набор — то пускай он остается, когда начнутся упомянутые проблемы с обновлениями, то руководству придётся терпеть даунтаймы и оплачивать работу специалиста по устранению этих проблем, вплоть до переноса бд на другой сервер. С другой стороны, если это будет какой-нибудь никому не нужный «корпоративный портал» на 100 хитов в сутки, то он может спокойно себе работать десять лет на любом офисном включенном компьютере с виндой, и никому от этого плохо не станет.
    Ответ написан
    4 комментария
  • Apache + MySQL на Windows в production — как убедить людей что это плохо

    EugeneOZ
    @EugeneOZ
    Эта связка не для web-разработчиков, это связка домашнего сервера «под столом» вчерашнего школьника, пробующего свои силы.
    В мире web-разработки большинство библиотек, модулей пишут под unix, и лишь иногда (или по принуждению) портируют версии под винду. Это приводит к тому, что под винду не всё можно найти, да и багов обычно больше.
    Ответ написан
    Комментировать
  • Apache + MySQL на Windows в production — как убедить людей что это плохо

    Попробуйте погуглить по запросу «windows apache troubleshooting».
    А вообще Apache для Win 32 bit. Если Вам нуден будет объем оперативной памяти больше 4 гб, то возникнут трудности. Можете конечно поставить на x64, но не избежать проблем.
    Ответ написан
    6 комментариев
  • Проверка наличия cookie от стороннего домена

    Voenniy
    @Voenniy
    Через куки однозначно нет.
    Есть стандартное решение.
    Пользователь авторизован на site.ru и не авторизован на site2.ru

    1. При входе на site2.ru скрипт видит, что пользователь не авторизован и перекидывает пользователя на специальную страницу site.ru/auth
    2.По адресу site.ru/auth идет проверка что пользователь аторизован, а потом перекидываем пользователя обратно, но только со специальными параметрами, например site.ru/?auth=ok&user=вася
    3. site2.ru если видит подобные параметры авторизовывает пользователя.

    Разумеется все это дело надо солить рандомным хешем.
    Ответ написан
    Комментировать
  • Проверка наличия cookie от стороннего домена

    Dimitriys
    @Dimitriys
    :))) такое (при помощи одной только куки без доступа к сайту-отправителю) просто так невозможно… представьте у вас есть кука от money.yandex.ru… вы заходите на сайте supernews.ru… там перехватывается ваша кука от яндекса например с сессией и выводятся ваши денюжки
    Ответ написан
    7 комментариев
  • Угнали аккаунт гугл с деньгами

    opium
    @opium
    Просто люблю качественно работать
    Глупостями маетесь, у адвордса есть нормальная поддержка просто позвоните.
    Ответ написан
    Комментировать