Задать вопрос
  • База PHP + JQuery за неделю! Каков алгоритм действий?

    Sanasol
    @Sanasol Куратор тега PHP
    нельзя просто так взять и загуглить ошибку
    За неделю вы ничего не выучите.
    Все курсы, книги или что там еще "научись делать сайты за 23 часа/дня/секунды" и т.п.
    Это мусор.

    В лучшем случае вы hello world напишите за неделю.
    Шансов устроиться на вакансию это прибавит примерно нисколько.
    Уровень ниже плинтуса или половина плинтуса роль вряд ли сыграет.

    Проще тогда уже пойти и сказать как есть, что вы очень полный стажёр.
    Раз они ищут стажёра, они возможно готовы к такому.
    И если повезёт, возьмут и уже научат чему-нибудь.
    Ответ написан
    2 комментария
  • Пользователь может изменить сессионный массив в PHP?

    Sanasol
    @Sanasol Куратор тега PHP
    нельзя просто так взять и загуглить ошибку
    Вытаскиваю из базы в $_SESSION у пользователя.

    шта?

    Не представляю как данные в session связаны с проверкой баланса, точнее боюсь представлять.

    Нет, пользователь не может изменить сессию никак.
    Ответ написан
    Комментировать
  • Какие можете дать советы по постоянной работе в ночное время?

    @imikh
    Постоянная работа по ночам - ужас для организма и нервной системы. Солнечный свет нужен.
    Как варианты, кроме полноценного сна и питания (совершенно согласен с xmoonlight):
    - Витамины, особенно группы D
    - Переехать в соответствующий часовой пояс. Если это US, то Мексика к примеру, там относительно дёшево сейчас. Или Южная Америка.
    Ответ написан
    5 комментариев
  • Как получить данные с input?

    BenderLib
    @BenderLib
    JS
    Например можн делать вот так:
    <div>
    	<form name="publish">
    		<input type="text" name="message" placeholder="введите сообщение"/>
    		<input type="submit" value="отправить"/>
    	</form>
    </div>

    Когда нажимаем на копку отправить то данные забираем. При помощи например данного кода на JS
    document.forms.publish.onsubmit = function() {
      var message = this.message.value;
      console.log(message)
      return false;
    };


    Либо как написали выше можно делать:
    document.getElementsByTagName("input")[0].value
    Но тут есть свои нюансы

    Ответ на Ваш комментарий:
    Если нет кнопки в форме то можно воспользоваться событием onchange
    Например вот форма без кнопки с событием onchange которое вызывает функцию на JS:
    <div>
      <form name="publish">
        <input type="text" name="message" placeholder="введите сообщение"/ onchange='eventForm(this.value)'>
      </form>
    </div>
    
    <script>
    function eventForm(value) {
      if (value == 'test') {
        alert('Вы ввели то что нужно')
      }
    }
    </script>


    Подробно о событии onchange можете посмотреть тут: https://learn.javascript.ru/events-change
    Ответ написан
    2 комментария
  • Какие можете дать советы по постоянной работе в ночное время?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    После ночной работы ОБЯЗАТЕЛЬНО: хорошее питание и полноценный сон.
    А в остальном - никаких проблем абсолютно!
    Ответ написан
    2 комментария
  • Как делаются персональные (конкретно по твоим критериям) рассылки?

    Смешались в кучу конилюди.

    1. Никто не делает большие рассылки PHP-мейлером. Используется, например, скрипт, который генерирует письма и ставит их в очередь MTA и в дальнейшем письма рассылаются MTA (при правильной конфигурации, например, Postfix разослать миллион писем с одной машины за несколько часов не проблема). При необходимости скрипт запускается в несколько потоков / на нескольких машинах. Еще чаще вместо локального MTA используется API поставщика услуг электронных рассылок (ваши представления о нем не верны, просто вы не умеете им пользоваться), т.к. миллион писем от вас не примет ни одна почтовая служба, пока вы не накопите нормальную репутацию.
    2. Пользователи сегментируются. Чем сильней сегментируются - тем лучше. В первую очередь по активности, если пользователь год не заходил на сайт, а вы ему каждую неделю что-то шлете - ваши письма почти наверняка окажутся в спаме. Так же возможно сегментация по полу, возрасту, географии, уровню дохода, новый пользователь / постоянный пользователь / уходящий пользователь / потерянный пользователь. По сегментам определяется частота и типы рассылок.
    3. Рассылки персонализируются с учетом предыдущей активности пользователя и его сегментов.
    4. Рассылки сплит-тестируются. Выбираются наиболее эффективные.
    5. Рассылки триггерятся. Спамить пользователя раз в неделю давая ему простыню со списком товаров малоэффективно. Гораздо эффективней зацепить его в определенный момент времени конкретным предложением. Например если мужчина покупал что-то женское (духи, цветы, кофеты) - напомните ему об этом ровно через год и предложите что-то, что может хорошо сочетаться (обновлять, дополнять, заменять) с первой покупкой. Если он покупал подарок для новорожденного - предложите через год подарок для годовалового ребенка. Дни рождения и прочие знаменательные даты любят повторяться. Если он покупал велосипед, потом через месяц что-то к нему - предложите еще через месяц (к следующей ЗП) скидку на еще какой-то аксессуар именно к этому велосипеду (если велосезон еще не окончен, разумеется). Хорошее предложение должно приходить не раз в неделю, а тогда, когда оно наверняка заинтересует.

    P.S. почитайте материалы по e-mail маркетингу.
    Ответ написан
    5 комментариев
  • Как изменить часть строки?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    1. Не мучайте файловую систему, всякими переборами... которые там не нужны.
    2. Если Вам нужно уникальное имя файла - его можно сгенерировать множеством способов, например, функция microtime вернёт время в милисекундах. И так как, чисто гипотетически, вероятность загрузки > 1000 файлов в секунду равна примерно нулю (в Вашем случае точно) - цифры всегда будут уникальными, не зависимо от папок... Если планируется >1000 файлов в минуту, можно ещё подставлять рандомное число.
    3. Для замены строк, есть str_replace
    4. Расширение файла получить не сложно, есть масса способов того
    5. Есть масса способов, получить имя файла без расширения, что бы аменить его через [п.3]

    Надеюсь, Вы понимаете, к чему я это всё... Вам нужно просто хорошенько обдумать задачу, в будущем этот навык будет крайне полезен.
    Ответ написан
    Комментировать
  • Как изменить часть строки?

    DmitryIvaneychik
    @DmitryIvaneychik
    Developer in VoxImplant
    Ну я полагаю, правильнее сразу менять, смысл дважды его пересохранять.
    Вы же явно используете что-то вроде php.net/manual/ru/function.move-uploaded-file.php

    Вот Вам про расширения: https://habrahabr.ru/post/37753/

    Ну а сгенерировать уникальное имя можно и стандартными средствами: php.net/manual/ru/function.tempnam.php
    Ответ написан
    Комментировать
  • Одна Activity и множество Fragment, best practices?

    @alaershov
    Android-developer
    Я бы на вашем месте отказался от архитектуры "Одно Activity на всё приложение", и сделал всё на обычных Activity.
    Проблема у вас, судя по всему, в разбиении функций приложения на слабо связанные модули. Разрисуйте и распишите ваши экраны и функции, которые принадлежат каждому из них, и подумайте, какие из функций зависят друг от друга, а какие нет.
    Почитайте про принципы SOLID, которые помогут понять, как лучше разделять ответственность классов между друг другом: https://realm.io/news/donn-felker-solid-part-1/
    Отделите бизнес-логику от UI-логики и логики хранения данных с помощью архитектуры Clean: fernandocejas.com/2014/09/03/architecting-android-...
    Организуйте связь UI и бизнес-логики с помощью подхода MVP, где Model - это UseCases (они же Interactors) из Clean: antonioleiva.com/mvp-android
    Попробуйте Moxy (https://github.com/Arello-Mobile/Moxy) в качестве библиотеки для реализации MVP, она избавит вас от написания большого количества boilerplate-кода и части проблем с переворотом экрана.
    Ответ написан
    Комментировать
  • Как организовать выполнение функции в цикле с setInterval()?

    crazy_leo
    @crazy_leo
    Frontend Developer
    Array.prototype.asyncEach = function (each, done) {
      var i = -1, a = this
      function iter() {
        if (++i === a.length) { done && done(); return }
        each.call(a, a[i], iter)
      }
      iter()
    }
    
    // Example
    (new Array(10)).asyncEach(function (item, next) {
     setTimeout(function () {
       console.log("tick")
       next()
      }, 1000)
    })
    Ответ написан
    Комментировать
  • Как обратиться к свойству метода объекта, если название метода хранится в переменной?

    Разбить строку "child->property" на child и property и $object->{$var}->{$var}
    Ответ написан
    Комментировать
  • Mysql даёт оверхед 50 раз в обычной MyISAM таблице с BLOB. Как уменьшить?

    romy4
    @romy4
    Exception handler
    200кб → в базу → чёрный ящик → 10мб/с
    если рассмотреть чёрный ящик, то база кроме всего прочего работает не с каждым байтом данных, а с блоками по 4кб каждый. в каком порядке она их записывает — неизвестно
    например, добавляя один байт данных в строке база может не найти под него место и тогда надо создавать новый 4кб блок, записывать его на диск, и записывать старый блок на диск помеченный как освободившийся (итого на 1 ваш байт - 8 кб записи) и т.д.
    Но точно я вам никогда не скажу почему пишет там много, потому что только вы можете тулзами посмотреть с какими файлами работает база.
    Ответ написан
    1 комментарий
  • В ссылке множество элементов, при нажатии на некоторые из них не нужно переходить по самой ссылке, как это реализовать для смартфонов ??

    sadisme
    @sadisme
    font-size:30rem
    Если вы позиционирование используете, то зачем помещать ссылку в ссылке? Разместите их рядом, а позиционированием уже друг на друге разместите.
    Ответ написан
    8 комментариев
  • Как создать такую микро разметку?

    @Johnny007
    В коде по указанным вами страницам и не будет :)

    Разметку делают на страницах рецептов. https://puu.sh/sjKgl/272d2069a3.png
    У "еды" норм сделано, с них копируйте :) https://puu.sh/sjKoQ/b1c6ded95e.png
    Ответ написан
    1 комментарий
  • Почему такой большой размер js файла после gulp?

    b0nn1e
    @b0nn1e
    Alcohol & Ruby on Rails
    Потому что sourcemaps
    Ответ написан
    Комментировать
  • PHP фреймворк для начинающего разработчика?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Фреймворков в целом, которые достигли должного уровня популярности и народного признания - не так уж много (если говорить о PHP-фреймворках).

    Для начинающего, с целью понять сущность MVC, "пощупать" некоторые аспекты фреймворка, такие например, как загрузка библиотек и пр. подобности, я бы порекомендовал Вам CodeIgniter. Отличная документация, довольно много людей, кто сможет Вам ответить на возникающие вопросы, есть документация на русском. А так же, минимальное количество "лишнего" из коробки, например, шаблонизаторов (которые Вы можете самостоятельно подключить, если очень хочется).

    После этого фреймворка, промежуточным, можно было бы считать Kohana, но, он что-то то "умирает", то снова "воскресает"... С документацией на него, по моему, всё так же плохо (читай "не очень хорошо") как и всегда... но, по нему есть несколько неплохих видео-уроков.

    Суда же можно отнести Yii, на мой взгляд, он застрял где-то между "большими" и "маленькими" фреймворками. Маленьким его уже не назовёшь, по ряду признаков, а до большого и целостного - он ещё не дотягивает. Но, он довольно популярен на просторах бывшего СССР (по понятным для многих причинам), в виду чего имеет довольно большое русскоговорящее сообщество и целую толпу ярых фанатов.

    Далее, в обязательном порядке будет идти Laravel - превосходная документация, примеры и фантастическое количество видео-уроков (если хорошо понимаете английский). Отличный фреймворк собранный на базе Symfony. Относится уже к "большим".

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

    P.S. Я понимаю, что Вы спрашивали "какой фреймворк учить первым?", а не какие они бывают вообще. Но, дабы предостеречь Вам от вопросов типа "какой фреймворк учить вторым?" или "почему Symfony в роли первого фреймворка так тяжело изучать?" и массы прочих подобных - озвучил одни из самых популярных фреймворков в мире веб-разработок в ракурсе PHP.
    Ответ написан
    1 комментарий