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

    php666
    @php666
    PHP-макака
    У меня есть несколько доменов, я бы хотел на них разместить сайты, но лично у меня уже закончились идеи.
    для начала надо переосмыслить свои поступки - зачем содержать домены, если нет сайтов, идей и средств для реализации этих идей?

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

    php666
    @php666
    PHP-макака
    Отдельное поле в таблице товаров.
    На таблицу с отзывами вешать триггер, на случай добавления и удаления записи, который будет менять значение `count` в таблице товара.
    Ответ написан
  • Почему такая ошибка в коде?

    php666
    @php666
    PHP-макака
    Лол, все перечисленное, это основы языка, капля в море.
    Ответ написан
    Комментировать
  • Собираюсь убегать от 1С-Битрикс. А на что убегать-то?

    php666
    @php666
    PHP-макака
    Много шишек, нервов, денег и времени отнял 1С-Битрикс. Решил уйти на самописанный сайт.
    самописанный сайт отнимет "нервов, денег и времени" в 10 раз больше. Но правда в том, что самописный интернет-магазин (как вы выразились "сайт без cms, написанный с нуля.) вам никто не сделает. Либо поставят open source, либо сделают такое, что это будет дырявое решето стоящее на протезах и костылях (и что в конечном счете с грохотом упадет).

    Позволить себе интернет-магазин заточенный чисто под себя могут не многие. Это дорого. Очень дорого. Для этого нужен постоянный штат разработчиков.
    Ответ написан
    3 комментария
  • Как защитить номер телефона в доске объявлений от парсинга?

    php666
    @php666
    PHP-макака
    В качестве учебного проекта не надо раздувать из мухи слона. Это первое и самое важное.
    Пока на твой сайт не натравлен специальный робот - никто и никогда просто так не распарсит не изображение, ни иные механизмы. А поскольку ты не Авито, то это мнимая защита.

    У меня на сайте объявлений вот так сделано по части email-адресов. Запрос уходит вида
    /advert/frontend-ajax-get-email/id/110013/hash/8f3... - где последний параметр - хэш от email и соли. Не зная соли (и в целом алгоритма создания хэша) ты не получишь в ответе email, вот пример с невалидным хэшем:
    /advert/frontend-ajax-get-email/id/110013/hash/8f3...

    это 100% способ защиты от большинства парсеров и ПС.
    Ответ написан
  • Правда ли что рынок веб разработки "перегрет"?

    php666
    @php666
    PHP-макака
    "Ко-ко-ко, дефицит хороших сотрудников" -- повторяют один за другим вайтишнички. Вторая тема за день с шаблонными ответами как под копирку. При этом, каждая такая макака себя считает именно "хорошим сотрудником", достойная не менее полмиллиона рублей в месяц зарплаты.

    Конечно рынок веб разработки «перегрет». Порог вхождения низкий. Килотонны мануалов на русском языке и басни о богатых айтишниках привлекают сюда всех. Эти толпы может, на начальном этапе, действительно плохо делают свою работу, но большинство без сомнения станут весьма приемлемыми программистами. И рынок будет перегрет еще больше.

    Вот эти ребятки, что в этой теме отметились, они настолько все туповатые, что сами себе роют могилу, крича на весь интернет о "дефиците". Сами того не понимая, плодят себе конкурентов. Для примера - зайди на какой-нибудь бизнес-форум и спроси у любого пользователя, кто бизнесом занимается - "как ты деньги зарабатываешь?" - ни один идиот тебе не раскроет секрет. Никогда. Это только у айтишников так принято - трубить на всю ивановскую о дефиците. А лет через 10 большая половина этих обезьянок пойдет в такси работать, ибо рынок будет безбожно переполнен людьми с вполне обычными знаниями.

    И не забывайте о времени - через Н лет все, кто сейчас "на коне", станут вторсырьем, ибо индустрия на месте не стоит и знания ваши обесценятся. Вот смеху то будет, когда после 10 лет упорного труда вы ВНЕЗАПНО поймете, что индустрия рванула вперед, а вы все на [нужное_вписать] кодите. Быгыгы.
    Ответ написан
    51 комментарий
  • Как добавлять в корзину несколько товаров по нажатию кнопки или давать ссылку на корзину с товарами?

    php666
    @php666
    PHP-макака
    add.php?items[]=123&items[]=456&items[]=789
    Ответ написан
    Комментировать
  • Как лучше реализовать модерацию объявлений?

    php666
    @php666
    PHP-макака
    У меня есть свой проект - сайт объявлений, полностью самописный.

    Модерация у меня представлена так. Первый уровень безопасности - это стоп-слова:
    тыц

    public static $words = array(
    'кредит', 'кредиты', 'кредита', 'кредитов', 'кредиту', 'кредитам', 'кредитом', 'кредите', 'кредитах',
    'кредитование', 'кредитной', 'кредитная', 'кредитные',
    'займ', 'займы', 'займа', 'займов', 'займам', 'займом', 'займе', 'займах', 'залог', 'залога', 'залоги',
    'заемщик', 'заемщика', 'заем',
    'заёмщик', 'заёмщика', 'заём',
    'курсовая', 'курсовые', 'курсовых',
    'диплом', 'дипломы', 'дипломов', 'дипломные', 'дипломной', 'дипломных',
    'реферат', 'рефераты', 'рефератов',
    'осаго',

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

    'электроудочка', 'электроудочки', 'электроудочке', 'электроудочку', 'электроудочкой', 'электроудочкам', 'электроудочками', 'электроудочек',
    );

    Второй уровень - запрет урлов в заголовке и теле объявления.

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

    Только ручная модерация! Дело в том, что объявления регулярно пишут всяческие инфоцыгани, попрошайки, сектанты, проститутки, просто идиоты. Совершенно неблагодарное занятие содержать подобного рода сайт. Отдельная песня - это модерация разделов. Пользователи ВООБЩЕ не в состоянии отличить услугу от товара, категорию "автозапчасти" от "купля-продажа автомобилей" и т.д.
    Ответ написан
  • Как правильно считать посетителей сайта?

    php666
    @php666
    PHP-макака
    Поставить счетчик от mail.ru/liveinternet и т.п. Лучше всё равно не сделаете - задача нетривиальна и полна нюансов.
    Ответ написан
  • Какой движок использовать для сайта фрилансеров?

    php666
    @php666
    PHP-макака
    Хочу создать копию сайта фрилансеров.
    брось эту идею.
    твой сайт на бесплатном движке никому не будет нужен.
    время халявы закончилось.
    что бы проект в интернете жил и пользовался успехом - над ним надо работать.
    работать много и упорно.
    и еще вкладывать туда деньги. большие.
    а вы этого делать не умеете и не хотите.
    Ответ написан
    Комментировать
  • Какие области в веб - разработке осваивать в перспективе?

    php666
    @php666
    PHP-макака
    Какие области в веб — разработке осваивать в перспективе?

    Никакие. Процитирую:

    Никому не советую в IT. Особенно в веб. Это бесконечная гонка за востребованностью быть полезным на рутинной работе. Каждый год-два технологии обновляются, надо постоянно что-то учить-изучать, клиентам и работодателям надо, чтоб вы умели все больше и больше — это как если б врач каждые несколько лет перепрофилировался на другую медицинскую профессию: был травматологом, стал неврологом, потом урологом, эндокринологом, хирургом, медсестрой, хуй простой, нейрохирургом и т.д. — все, вроде, из одной области, но сильно разное. Т.е. ты выучился, работаешь себе, но при этом тебе надо учиться еще и еще, еще и еще, еще и еще.

    Вчера фигачили на jQuery, сегодня утром уже React актуален, днем его догоняет Vue, потом появляются технологии, с виду упрощающие разработку, но по итогу у тебя одновременно запущено 10 программ, дюжина окон терминала, ты начинаешь ёбаться головой об стол, но это не помогает, ведь завтра фейсбук, гугол или какой-нибудь кореец придумают что-то новое и твои навыки уже будут не удел, если ты не успеешь изучить это «что-то новое». Сейчас ты работаешь, тебя считают профессионалом, а через год ты хочешь сменить место работы, заходишь на какой-нибудь moikrug и понимаешь, что ты где-то что-то проебал, ведь год назад все было гораздо проще и понятнее.

    Зарплаты тут самые обычные, просто позволяют не выживать, как при среднестатистической зарплате, но позволять себе какие-то дорогие вещи вы не сможете, если не живете с мамой и вам родители не купили машину — да-да, львиную часть вашего бюджета будет сжирать аренда квартиры или ипотека, а так же кредит на машину до миллиона, а если повезет, то до полутора миллиона. А если вы ИП, то вам вообще никто и ни на что не даст кредит, ибо банки не любят ИП.

    Чтоб стать Senior-разработчиком, который может зарабатывать ползарплаты депутата гос.думы, надо не просто много работать и учиться, уделяя этому ВСЮ жизнь на протяжении десятка лет, надо еще и быть предрасположенным к программированию, т.е. надо иметь определенный склад ума. Да, тут есть интеллектуальный порог, большинство не может выйти из Middle, который получает максимум $2000 — и то, должно сильно повезти, чтоб и зарплата хорошая, и работодатель адекватный, и с командой все классно было.

    Я, как стал фронтенд-разработчиком, просрал друзей, т.к. много работал и учился (а если этого не делать, то вы станете не удел); просрал несколько лет жизни одним мимолетом, т.к. работа рутинная с утра до вечера; заработал проблемы со спиной, т.к. невозможно сидеть по 8 (а то и по 12) часов в сутки с ровной спинкой — заебешься контролировать; с ожирением можно бороться залом, но вы становитесь нелюдимым, вам не нравится находиться в незнакомом обществе.

    Можно, конечно, пойти в местную конторку за 25к, исправлять чужой и свой устаревший говнокод в говнопроектах для бизнеса в вашем городе, смотреть как работодатель покупает себе новую Audi, дом в Сочи, зато у вас нормированный рабочий день, не надо учить ничего нового, вы можете вечером в пятницу пойти попить пивка с друзьями, но я даже не знаю какой вариант лучше — этот, или тот, что описан мной выше. Еще можно пойти на фриланс и осознать, что это похоже на городской рынок, на котором у кого кроссовки дешевле, у того их и покупают.

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

    PS: можно быть слепым котенком и думать: «вааау, как классно я живу, вон полторы тыщи баксов скопил за несколько месяцев, куул, поеду в отпуск не в Турцию, а еще мои знакомые у меня деньги занимают, значит я не так плох» — но идите на хуй с такой «счастливой» жизнью.


    ААААА, Я НА ЭТО ВСЮ ЖИЗНЬ ПОТРАЧУ.
    ну да. ты, наверно, насмотрелся желтой прессы, где в IT входят за месяц и потом зарабатывают 100500 миллионов лежа на пляжу? я тебя огорчу. всё совсем не так. абсолютно.

    IT - это на всю жизнь. Если тебя пугает 2 месяца, то не лезь в это.
    Ответ написан
    75 комментариев
  • Как происходит процесс разработки интернет-магазина в 2019?

    php666
    @php666
    PHP-макака
    Вообще актуальна ли сейчас разработка интернет-магазинов не на CMS?
    "не на CMS" вы интернет-магазин не напишите - не хватит ни времени, ни опыта, ни ресурсов.
    Ответ написан
    4 комментария
  • Что сейчас с рынком доходных сайтов?

    php666
    @php666
    PHP-макака
    Просто общался с человеком, который занимается сайтами, он говорит, что все плохо, и сложнее стало, и доходы ниже...
    было: zCbJ7O6B.png
    стало:
    ahaxvFVV.png
    Ответ написан
    2 комментария
  • Скорость работы MySQL или Файлы?

    php666
    @php666
    PHP-макака
    Крайне сомневаюсь, что вопрос имеет какое-то практическое значение.

    И да. Software Architect мог бы уже написать цикл от 0 до 100к, генерировать эти файлы с записями, протестировать и нам рассказать.
    Ответ написан
    Комментировать
  • Нужно ли хранить путь к картинке в БД?

    php666
    @php666
    PHP-макака
    Все имена файлов загружаем как хэш от md5 - нет ни одной причины их называть человекопонятными именами.

    Имея имя файла делаем разграничитель директорий. Например, файл называется cc49db9055039eacc73d46d10af535cc.jpeg
    Соответствунно делаем директории (если они еще не созданы) при загрузке файла - /i/800x800/c/c/4/
    Последние 3 директории - создаются автоматом при сохранении изображения. Соответсвуют первым трем буквам имени файла.

    В базе храним так:
    ID записи картинки
    ID сущности
    cc49db9055039eacc73d46d10af535cc.jpeg - имя файла
    2018-10-31 12:03:27 - дата загрузки

    По имени файла всегда можно получить путь:

    <?php
    class DirectoryGenerator
    {
        /**
         * Имя файла.
         *
         * @var string
         */
        private $file_name;
    
        /**
         * Глубина создаваемой вложенности директорий.
         * @var int
         */
        private $depth = 3;
    
        /**
         * DirectoryGenerator constructor.
         *
         * @param string $file_name имя файла
         */
        public function __construct(string $file_name)
        {
            if (!strlen($file_name)) {
                throw new \InvalidArgumentException(__METHOD__ . ': Указан параметр нулевой длинны');
            }
    
            $this->file_name = $file_name;
        }
    
        /**
         * Создает директории (если они ещё не созданы) на основе имени файла
         * (например, d2d8f9c20083bd8483ac5d5526f923b9.jpeg) и возвращает путь.
         *
         * @param string $destinationDir директория назначния
         * @return string путь, например: i\700x600\d\2\d\
         */
        public function create(string $destinationDir): string
        {
            $destinationDir = rtrim($destinationDir, '\/');
    
            for ($i = 0; $i < $this->depth; $i++) {
                $destinationDir .= DIRECTORY_SEPARATOR . $this->file_name[$i];
    
                if (!is_dir($destinationDir)) {
                    if (!mkdir($destinationDir, 0775)) {
                        throw new \RuntimeException(__METHOD__ . ': Не удалось создать директорию ' . $destinationDir);
                    }
                }
            }
    
            return $destinationDir . DIRECTORY_SEPARATOR;
        }
    
        /**
         * На основе имени файла (например, d2d8f9c20083bd8483ac5d5526f923b9.jpeg)
         * возвращает путь к файлу для HTTP, вида /d/2/d/8/f/.
         *
         * @todo переименовать, название не отражает сути
         * @return string HTTP-путь к файлу
         */
        public function getHttpPath(): string
        {
            $destinationDir = '';
    
            for ($i = 0; $i < $this->depth; $i++) {
                $destinationDir .= '/' . $this->file_name[$i];
            }
    
            return $destinationDir . '/';
        }
    }
    Ответ написан
    Комментировать