Задать вопрос
  • Ребята, вопрос к умеющим, как лучше: сначало изучать теорию потом кодить когда она прочно закрепится в голове либо сразу начать кодить?(Html/css/js)?

    kumaxim
    @kumaxim
    Web-программист
    Любой язык, любой фреймворк, любую технологию лично я изучаю так:
    1)Ставится задача
    2)Под задачу находятся готовые решения
    3)Гуглятся проблемы и непонятные мне места
    4)Что-то пишется, возможно пятое колесо, возможно очередной велосипед, но это работает
    5)Написал п.4, осмыслил. Погуглил на тему похожих решений. На этом шаге в голове уже появляются правильные слова(термины, название библиотек) для гугла
    6)Либо нашел свой идеал в чем-то готовом, либо написал "совершенный" код(на текущий момент)

    Шаги 1-6 повторяются бесконечно. Алгоритм выше я активно использовал, когда после PHP учил Ruby.
    Ответ написан
    3 комментария
  • Как выбрать все записи из таблицы mysql?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    1. Не использовать функции mysql_*
    2. Применять функции так, как описано в документации, а не руководствуясь собственными фантазиями.

    $users = $pdo->query('SELECT * FROM `r_users`')->fetchAll();
    print_r($users);

    Как работать с PDO написано здесь: phpfaq.ru/pdo
    Почему не mysqli написано здесь: Mysqli или pdo?
    Ответ написан
    Комментировать
  • VK.API и С# как обработать ответ?

    @VyacheslavGoryunov
    Unity3D разработчик
    Если правильно понял Ваш вопрос, то можно использовать библиотеку для работы с JSON, например json.codeplex.com.

    В таком случае код будет выглядеть так
    //в начале 
    using Newtonsoft.Json.Linq;
    
    //... где то в коде
    const string json =
                    @"{
                        'response': {
                          'count': 766,
                          'items': [
                            {
                              'id': 2107,
                              'from_id': 36578247,
                              'owner_id': 36578247,
                              'date': 1427839641,
                              'post_type': 'post',
                              'text': 'С повышением курса,цены на продукты первой необходимости значительно выросли. Не понятно почему и Российские производители так поднимают свои цены. Не ужели для того чтобы увеличить зарплату своих сотрудников? Я в этом сомневаюсь! Растет социальное неравенство! Все больше людей остается без работы! Да и что сейчас можно купить на прежнюю зарплату? Теперь не то что бы отдыхать, да и жить дорого!',
                              'post_source': {
                                'link': {
                                  'url': 'http://kredit-otziv.ru/kurs-valyut/',
                                  'title': 'Курс валют на завтра, сегодня, за неделю ЦБ РФ, Доллар, Евро и др.. | Кредит Отз...',
                                  'description': ''
                                },
                                'type': 'widget',
                                'data': 'comments'
                              },
                              'comments': {
                                'count': 0,
                                'can_post': 0
                              },
                              'likes': {
                                'count': 0,
                                'user_likes': 0,
                                'can_like': 1,
                                'can_publish': 1
                              },
                              'reposts': {
                                'count': 0,
                                'user_reposted': 0
                              }
                            }
                          ]
                        }
                      }";
    
    //... еще где-то в коде
    var data = JObject.Parse(json);
    var items = data["response"]["items"];
    
    string text = items[0]["text"].Value<string>();
    string name = items[0]["post_source"]["link"]["title"].Value<string>();


    Как-то так, подробнее здесь ;) www.newtonsoft.com/json/help/html/LINQtoJSON.htm
    Ответ написан
    Комментировать
  • Можете объяснить CSS3 анимацию?

    .container {
        transform: rotate(-180deg) translate(0px, 125px) scale(0.01, 0.01) ;
      }
    
    
    @keyframes appear {
      50%{
        transform: rotate(-360deg);
        }
    }

    Посмотрите еще вот здесь ссылка
    Ответ написан
    3 комментария
  • Что выбрать, Yii2 или Laravel?

    @kirill-93
    Оба фреймворка хороши, и достаточно просты. Чтобы научиться можно начинать и с того и с другого. Я лично некоторое время писал на Уии, но после того как попробовал Ларавел, возвращаться на уии уже не хочется. И еще, раз вы учитесь программировать, то вам как раз таки не нужно пользоваться кодогенераторами. Они чтоб экономить время, но обходиться без нужно уметь.
    Laravel, который больше мне нравится по коду и удобству его написания, но у которого недостаточно плюшек для быстрого начала?

    Чего там недостаточно то? Создали контроллер, вьюху, прописали роут и все заработало
    Ответ написан
    21 комментарий
  • Изучаем/не изучаем htaccess?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Самое главное что надо понять - нету никакого синтаксиса .htaccess!
    Есть только синтаксис конфигурации веб-сервера Апач.

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

    Вообще, с таим совковым подходом ты далеко не уедешь. Надо не зазубривать тонны команд. Надо учиться искать нужную информацию в интернете. Если тебе понадбится документация по натсройке mod_mime, то найти её - 5 сек. Вот что ты должен уметь.
    Ответ написан
    4 комментария
  • Можно ли использовать глобальные переменные?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    1. Про статью.
    Аффтар кликушествует и тупит.
    Единственная претензия, которую он родил, сводится к тому, что глобальную переменную можно переписать. Офигеть недостаток. А используя while, можно уйти в бесконечный цикл. Следуя его логике, while нельзя использовать, он разрушает структуру программы. И ещё моск.

    2. О глобальных переменных.
    Существует [по крайней мере] два способа использовать глобальные переменные.
    1. Для доступа к глобальным сервисам.
    2. Для передачи данных в функцию и получения результата из неё.

    Так вот, второй способ является гарантированным пропуском в АДЪ. Это реальный способ довести до самоубийства человека, котрый будет потом разбирать твою программу.
    В то же время, в первом варианте нет ничего зазорного. Все исползуют его, но из религиозных соображений задрапировав в статическую функцию, класс, или контейнер, но суть у всех будет ровно одна - получить доступ к глобальному сервису.

    3. О твоем коде.
    1. Учитывая п.2 из предыдущего раздела, становится понятно, что твой второй вариант нежелателен. При этом.
    2. Я не понял фразу про "тасакать". Куда и что ты собираешься таскать? Код коннекта должен лежать вызываться РОВНО ОДИН РАЗ, лежать, где-нибудь глубоко в бутстрапе, и не вызывать ни малейших ассоциаций со словом "таскать".

    И - да. Сто процентов отвечателей будут тебе писать не про твои переменные с хостом и паролем, а про саму $pdo. Потому что вопрос про неё является более логичным и куда боле актуальным: ведь переменные для коннекта требуются тебе 1 раз, а само соединение - десятки раз в разных местах скрипта.
    Ответ написан
    4 комментария
  • Есть ли плагин для моментального отображения изменений в браузере?

    ILoveYAnny
    @ILoveYAnny
    Есть и он называется консоль браузера, где ты руками правишь html код и css стили. Нечего моментальнее (перманентнее) нет.
    Ответ написан
    Комментировать
  • Как получить самую дальнюю дату из MySQL?

    w999d
    @w999d
    Web-developer
    последняя
    ORDER BY `date` DESC LIMIT 1

    ближе, еще не наступила
    WHERE `date` >= NOW() ORDER BY `date` ASC LIMIT 1

    ближе, уже прошла
    WHERE `date` <= NOW() ORDER BY `date` DESC LIMIT 1
    Ответ написан
    2 комментария
  • Как лучше сравнивать переменную со значением в условии PHP?

    Это так называемый йода-стайл. Делается специально, чтобы исключить случайное присваивание.

    Например, ты можешь случайно написать
    if ($user = 'admin') {

    И кто бы ни был юзер, отныне он станет админом. Ну, в рамках текущего запроса.

    А вот 'admin' = $user написать не получится.

    По той же причине крайне не рекомендуется использовать присваивание в условии, многие любят так делать, типа
    if ($user = loadUser()) {
    поскольку не всегда можно точно определить, это опечатка или так и задумано. Условие должно быть условием.
    Ответ написан
    9 комментариев
  • Кликабельная карта метро на сайте?

    abler98
    @abler98
    Software Engineer
    В примере эта карта свёрстана на фоне изображения, а вообще можно сделать это через map
    Ответ написан
    Комментировать
  • Дети и интернет: как контролировать?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    > p.p.s. Понимаю, что нужно детей воспитывать, а не давать чаду айфон 6+ по принципу "чем бы дитя не тешилось...". Но как это сделать в мире, где вокруг одни гаджеты и интернет со всеми вытекающими последствиями?

    Вы сами все понимаете. Важно не то, что ребенок увидит, а как он оценивает увиденное. Приоритеты и критичность оценки должны в нем воспитать, причем чем раньше тем лучше - к пубертатному возрасту, в идеале, родитель должен из наставника превращаться в старшего друга, а к 20-22 годам, просто в друга.

    P.S. Неплохо подкидывать ребенку правильные ресурсы, в которых он будет чаще находить полезные и для него и с вашей точки зрения ответы. Но при попытке спрятать или скрыть другие источники, вы промотивируете его именно их и искать.
    Просто поясняйте где информация более качественная и ПОЧЕМУ.
    Ответ написан
    Комментировать
  • Дети и интернет: как контролировать?

    gbg
    @gbg Куратор тега Компьютерные сети
    Любые ответы на любые вопросы
    Есть предложение детей натурально воспитывать, а не отдавать этот процесс на аутсорс интернету.

    Из комментария vilgeforce
    Критическое мышление прививайте, тогда вопрос дезинформации и какой либо морали будет волновать вас гораздо меньше.
    Ответ написан
    16 комментариев
  • Как создать свое событие в jQuery?

    @cmx Автор вопроса
    Очевидно и по существу, никакими обсерверами, биндами и триггерами здесь не пахнет.
    Решение оказалось не самое тривиальное, но архитектурно корректное и звучит как "Специальные события jQuery".
    В рамках моей задачи, рабочая реализация выглядит следующим образом:
    $.event.special.dblrightclick = {
    	setup : function(data, namespaces) {
    		var e = $(this);
    		e.bind("contextmenu", $.event.special.dblrightclick.handler);
    		e.data("x", null);
    		e.data("y", null);
    		e.data("time", null);
    		e.data("limit", data || 400);
    	},
    
    	teardown : function(namespaces) {
    		$(this).unbind("contextmenu", $.event.special.dblrightclick.handler);
    	},
    
    	handler : function (event) {
    		event.preventDefault();
    		var e = $(this);
    
    		if (e.data("x") == event.screenX && e.data("y") == event.screenY
    			&& (event.timeStamp - e.data("time")) < e.data("limit")) {
    			e.data("x", null);
    			e.data("y", null);
    			e.data("time", null);
    			event.type = "dblrightclick";
    			$.event.dispatch.apply(this, arguments);
    		} else {
    			e.data("x", event.screenX);
    			e.data("y", event.screenY);
    			e.data("time", event.timeStamp);
    		}
    	}
    };


    И, соответственно, ее использование:
    $("#widget").on("dblrightclick", ".button", function() {
    	alert("dblrightclick fired");
    });


    А также управление единственным параметром задержкой:
    $("#widget").on("dblrightclick", ".button", 200, function() {
    	alert("dblrightclick fired");
    });


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

    UPD Полное решение: https://github.com/comm1x/jquery-event-dblrightclick
    Ответ написан
    Комментировать
  • Как сделать анимацию колечками на кнопках, как у слинки?

    vasilyev
    @vasilyev
    php, 1c-bitrix
    .robov {
    height: 42px;
    width: 42px;
    cursor: pointer;
    border: 1px solid #BDC3E0;
    border-radius: 44px;
    background-image: url(//www.slinky.me/files/spritef.png);
    background-position: -1px -89px;
    text-indent: -9999px;
    display: block;
    -webkit-transform: rotate(0deg);
    }
    
    .robov:hover {
    transform: scale(1);
    -webkit-filter: contrast(1) sepia(0);
    -webkit-transform: rotate(-900deg);
    }


    Дальнейшее чтение: www.w3schools.com/css/css3_2dtransforms.asp

    (ссылкой промахнулся в первый раз)

    UPD: а это расходящиеся круги
    .robov:after {
    top: 0;
    left: 0;
    padding: 0;
    z-index: 1;
    box-shadow: 0 0 0 1px rgba(255,255,255,0.1);
    opacity: 0;
    -webkit-transform: scale(0.9);
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
    }
    
    .robov:after {
    pointer-events: none;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    content: '';
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    }
    
    .robov:hover:after {
    -webkit-animation: sonarEffect 1.1s ease-out 55ms infinite;
    -moz-animation: sonarEffect 1.1s ease-out 55ms infinite;
    animation: sonarEffect 1.1s ease-out 55ms infinite;
    }
    Ответ написан
    6 комментариев