• Как сделать ссылку значком?

    @pereyaslavskiy
    Вот пару вариантов:
    https://jsfiddle.net/hxg86k0b/
    Ответ написан
    Комментировать
  • Как правильно экранировать символы в SQL запросы, если нужно отправить HTML-код?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    HTML никак специально экранировать не нужно. И вообще ничего экранировать не нужно. Экранирование - это треш, угар, прошлый век и инъекции. Данные в БД надо просто посылать отдельно от запроса.

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

    Причем твоя лично проблема здесь совсем не в том, "как экранировать". HTML никак особо экранировать не нужно, базе данных абсолютно всё равно, что ты внее вставляешь. Твоя проблема в том, что ты в принципе не знаешь пхп и путаешься в основах языка, используешь устаревшую версию, которая не будет работать на живом сайте. И даже самый базовый синтаксис тебя пугает. Поэтому извини, я буду писать ответ не для тебя, а для тех, кто, в который раз, задается этим вечнозеленым вопросом, но по какой-то причине не смог освоить базовые навыки работы с гуглем/яндексом.

    Чтобы вставить данные в mysql, и вообще никогда не думать ни про какое "экранирование", надо
    1. Все переменные в запросе заменить на знаки вопроса
    2. Подготовить запрос к исполнению
    3. Привязать переменные к знакам вопроса
    4. Выполнить запрос.

    Как я уже говорил, функций, которые начинаются на mysql, в языке давно нет. Остаются только те, которые начинаются на mysqli и PDO. Вот для них я и приведу примеры.

    mysqli
    $type = 'testing';
    $reporter = "John O'Hara";
    $query = "INSERT INTO contents (type, reporter) VALUES(?, ?)"; // заменем
    $stmt = $mysqli->prepare($query); // подготавливаем
    $stmt->bind_param("ss", $type, $reporter); // привязываем
    $stmt->execute(); // исполняем

    Важно! Чтобы этот код работал, сначала надо правильно установить соединение mysqli
    PDO
    $type = 'testing';
    $reporter = "John O'Hara";
    $query = "INSERT INTO contents (type, reporter) VALUES(?, ?)"; // заменяем
    $stmt = $pdo->prepare($query); // подготавливаем
    $stmt->execute([$type, $reporter]); // привязываем и исполняем

    Важно! Чтобы этот код работал, сначала надо правильно установить соединение PDO

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

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Сделайте свой див так, чтобы можно было менять ему размер мышкой и перетаскивать на странице. А уж пользователь сам разместит как ему удобно.
    Ответ написан
    1 комментарий
  • Как добавить перенос в PHP при записи в базу данных?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    $summ = $param1 .= $param2
    А это ничего что у тебя этот код меняет значение $param1?

    Как ты уже мог заметить на примере говнокода из соседнего ответа, оператор конкатенации в пхп - это точка, а не точка со знаком равно.
    $summ = $param1 . "\r\n" . $param2;
    Не говоря уже о том, что конкатенация в данном случае вообще не нужна, можно просто написать все в одну строку,$summ = "$param1\r\n$param2";. Впрочем, это исключительно дело вкуса.

    В качестве домашнего задания попробуй подумать, при чем здесь база данных.
    Ответ написан
    1 комментарий
  • Как понять такое описание?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Никак не надо понимать.
    Автор сам плохо понимает, о чем пишет.

    Располагать на одном уровне абсолютно нормально, у него выше куча таких примеров.

    Исключение работает как локальный die. Или даже скорее return. То есть код после него исполняться не будет. То есть вместо кучи вложенных иф можно делать кучу throw. Ну в общем получить такой аналог goto :catch.

    Но проще всего конечно спросить у самого автора, что он имел в виду, благо это гитхаб, а не бумажная книжка. Создать issue это два клика
    Ответ написан
    3 комментария
  • Формат даты в php?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    В том что в РНР нет никакого "формата даты".
    Есть функция strtotime, которая пытается угадать какую дату ты имел в виду.
    Угадывать никогда не надо, надо вcегда знать точно.

    Поэтому либо меняй исходный формат, либо парсь его руками. date_create_from_format(), или, если боишься объектов, то explode()
    Ответ написан
    Комментировать
  • Платежи на Django. Как реализовать?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    Как и к сайту на любом другом языке/фреймворке, подключаешь платёжный аггрегатор или банковский эквайринг.
    Ответ написан
    Комментировать
  • Сложный и интересный проект для новичка?

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

    ## Сайт checklist
    Веб-сервис и мобильное приложение для краудсорсинга чеклистов для всего: зарегать ИП, получить визу, что делать при ДТП, как влезть в ипотеку, как вылезть из неё, чем заняться с ребенком на выходных (N-ле

    - Коллекция чек-листов снабженных тегами, доступная для краудсорсинга.
    - Краудфандинг составления и поддержки нового листа.
    - Фильтрация чек-листов.
    - Фильтрация пунктов.
    - Тегирование пунктов.
    - Графовые алгоритм обхода чек-листа.
    - Мастер обхода чек-листа.
    - Отчет по чек-листу.
    - Вложенные чеклисты, гиперссылки между разными листами.
    - Параметризация.
    - Экспертная система, логические связи (расширенный режим).

    Примеры:
    - Что делать при ДТП
    - Открыть ИП
    - Осмотр авто при покупке (подветки для разных конкретных моделей)
    - Первая помощь при...
    - Диагностика инсульта
    - Зомби-акопалипсис: как приготовиться
    - Атомный взрыв неподалёку - что делать
    - Планетарная катастрофа - как выживать
    - Поход выходного дня - что взять
    - Подготовка авто к поездке
    - Путешествие: Алжир (виза, прививки, документы, отели, транспорт)
    - Как влезть в ипотеку
    - Как вылезть из ипотеки
    - Как быстро заработать (во все тяжкие)
    - Покупка квартиры (на что обратить внимание)
    - Самостоятельное строительство дома (общий план)
    - Чем заняться с ребёнком N-лет
    - Как отметить новый год
    - Что интересного в районе <пос. Майский>
    - Номера телефонов и документы в автомобиле

    ## Эротический краудфандинг
    Интернет ресурс, где девушки могут делать крауд-фандинговые кампании

    - Крауд-фандинговая кампания по сбору средств на проект
    - оформление проекта (доказательство личности в виде фото с сигном, некое обещание, порог недовольных результатом, целевая сумма)
    - посетители анонимно финансируют проект в биткоинах
    - если кол-во лайков среди профинансировавших (в соответствии с весами) > порогового, учредитель получает сумму за вычетом комиссии
    - если кол-во лайков не превысило порог, сумма возвращается обратно инвесторам

    ## Простой открытый сервис для обмена сообщениями
    - HTTP API, Web-sockets
    - p2p rtsp
    - опциональное end-to-end шифрование
    - хранение истории на клиентах
    - возможность использования нескольких серверов
    - возможность использования альтруистичных клиентов для проксирования трафика p2p
    - поиск узлов на основе блокчейн технологий и DHT таблиц

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

    ## Поэтический онлайн редактор
    - выбор стопа, стиля и жанра
    - шаблон с плейсхолдерами, разбивающий текст на слоги
    - облако рифм
    - подражающий автогенератор
    - многосегментный словарный банк (дифференциально-слоистая древовидная структура, своя специфика в верхнем слое, поэлементное ранжирование сегментов)
    - тезаурус
    - словарь сочаетаемости
    - N-граммы поэзии по авторам и стилям
    - корпус поэзии
    Ответ написан
    13 комментариев
  • Программа синхронизации папок для веб разработчика?

    Zoominger
    @Zoominger Куратор тега Веб-разработка
    System Integrator
    git
    Не осилил - не программист.
    Ответ написан
    4 комментария
  • Почему не работает GET зарос через curl на PHP?

    vanesxl
    @vanesxl Автор вопроса
    Проблема была в том что я в переменную записывал строку с пробелом типа:
    $msg = "test test";
    Сделал вот так:
    $msg = urlencode("test test");
    Все заработало!
    Ответ написан
    Комментировать
  • Браузер для чувствительной инфы в виртуальной машине, имеет ли смысл?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Стандартная практика делать слепок виртуальной машины и откатываться до предыдущего (чистого состояния) после запуска серого файла (это ключеделалка?)

    Другая практика это минимальная машина для платежей. Внутри нее устанавливаете менеджер паролей на ваш вкус и используете ее только для доверенных операций. Клиент банк, карточки.

    P.S. судя по вашему вопросу вам это явно не нужно, не обижайтесь. Поставьте касперского и не тыкайте на подозрительные ссылки, этого будет более чем достаточно.
    Ответ написан
    9 комментариев
  • Какую php библиотеку использовать для работы с БД?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Для начала надо определиться, о каком инструменте речь.
    Есть три вида инструментов

    1. DBAL - просто класс для выполнения запросов. PDO практически на 90% покрывает задачи такого класса.
    Запросы пишутся вида
    $user = $db->prepared_query("SELECT * FROM users WHERE id = ?", [$id])->fetch();

    2. Query builder - построитель запросов.
    $user = $db->select('*')->from('users')->where('id', $id);

    3. ORM - запросы скрыты внутри, мы пишем только штуки типа $user = User::load($id);

    Максимально гибким, разумеется, является первый.
    Ответ написан
  • Как написать тест на javascript?

    AngryYumy
    @AngryYumy
    Заплати фрилансеру чеканой монетой
    Не ну это вершина наглости. Мне тут срочно нужно сдать проект, а разбираться один вечер мне лень. Ну вот вам разметка нафигате мне ща по фасту хлопцы.
    То что вам нужно можно узнать потратив всего один вечерок на изучение js ( пару часов).
    А с готовым проектом по ТЗ есть очень много хороших фриланс бирж.
    Ответ написан
    1 комментарий
  • Как написать тест на javascript?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    знаю. понимаю что надо сделать if. но как именно?
    суть вопроса в этом заключается.
    Надо знать JS на уровне "сел изучать".
    Ответ написан
    2 комментария
  • Сервер крутит все кулеры на максимальных оборотах, что делать?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    В биос и конфигурить.
    Ответ написан
    Комментировать
  • Как получить XML по https?

    @andreysuha
    Что то знаю
    Попробуйте поменять порт на 443
    Ответ написан
    4 комментария
  • Почему не добавляются переменные в SQL запрос PHP кода?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Переменные у тебя в строку пхп подставляются.
    А вот запрос не исполняется.

    Потому что переменные в запрос подставляются СОВСЕМ не так.

    $stmt = $mysqli->prepare("INSERT INTO `masters` (`id`, `email`, `password`, `name`, `login`, `phone_number`, `rating`,
            `avatar`, `photo1`, `photo2`, `photo3`, `photo4`, `photo5`, `town`, `area`) VALUES (NULL, ?,
            ?,?,?,?, '0', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)");
            $stmt->bind_param("sssss",  $email, $password, $name, $login, $phone) ;
            $stmt->execute();


    Если еще какая-то проблема, то добавь
    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

    перед коннектом
    Ответ написан
    4 комментария
  • С чего начать при подключении api стороннего ресурса?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Строки "вставлять" в функцию file_get_contents().
    Полученный результат "вставлять" в функцию json_decode().

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

    У вас в коде возможна sql инъекция.
    'SELECT * FROM `users` WHERE `id` = "'.$user_id.'"
    Инструкция как их избежать:
    habr
    php.net
    Ответ написан
    Комментировать