Задать вопрос
Ответы пользователя по тегу PHP
  • Как обновить данные из БД с помощью AJAX?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) У вас криво вставлена разметка, вы там теги штоле нормально расставьте
    2) оба селекта имеют одинаковое имя: select name="profession"
    3) В чем собсно проблема? Не нашли как отправить значения формы аяксом? (Результатов: примерно 1 120 000)
    Ответ написан
  • Как исправить ошибку?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    (Ошибка в foreach)
    Во первых не ошибка, а варнинг.
    Во вторых очевидно что $products пустой, в зависимости от того как организован код, $products либо не виден в приведенном шаблоне, так как область видимости верхнего кода не совпадает с областью видимости нижнего кода (что вероятнее всего), либо запрос возвращает пустой набор (но тогда бы варнинга не было, так как массив пустой, но все же подходящий как аргумент для форич).

    PS: Вообще на ваши вопросы ответы есть, а отмеченных решений нет, что говорит либо о наплевательском отношении к людям которые вам помогали, либо о незнании что вообще такой функционал существует (сомнительно) и помогает другим решать похожие проблемы .
    Ответ написан
    7 комментариев
  • Php фреймворки ещё живы?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    запрос Гугл laravel Результатов: примерно 44 600 000 (0,78 сек.)
    еще вопросы?
    Ответ написан
    Комментировать
  • Как отправить почту через PHP с использованием SMTP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Желательно без использования сторонних библиотек типа PHP mailer.
    Ничего не мешает вам сделать это самостоятельно, посмотреть спецификацию протокола смтп, установить сокет соединение с нужным смтп сервером на нужном порту, пройти аутентификацию, переслать/получить ключ в случае если сервер требует сертификат, передать сообщение, получить подтверждение и ответ сервера, закрыть соединение. Делов на пару дней.
    Ну, или взять готовую билиотеку, покрытую тестами и использующуюся в миллионах проектов.
    Ответ написан
  • PHPWord. Как добавить строку в уже существующую таблицу с нужными данными?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Комментировать
  • Как достать картинку из видео файла при помощи js или php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    ffmpeg
    Ответ написан
    Комментировать
  • Как исправить ошибку запроса кУРЛ?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    verbose
    Ответ написан
    Комментировать
  • Какие есть книги по расчёту оборудования под инфраструктуру сайта?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Во первых, в связи с быстроменяющимися технологиями такие книги устаревали бы к моменту выхода, так как верстка и написание их занимала бы больше времени чем время между анонсами нового серверного железа.

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

    В третьих - профиль нагрузки у очень похожих приложений может сильно отличаться, в силу специфики приложения.

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

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    А если я авторизовался - без проблем, можно видеть все подкюченные файлы. Я это имею в виду. Или же, если стили и скрипты не подключенны на странице, а просто находятся в общей папке, то спорсить их нельзя?
    Во первых - если у вас скрипты или стили несут некую угрозу безопасности сайта, то уже что-то пошло не так.
    Во вторых - да, можно использовать серверные скрипты для отдачи контента цсс и жс. Но никто так не делает, это неудобно, непрактично, получаем кучу гемороя на ровном месте и никакого профита.
    Ответ написан
    Комментировать
  • Пытаюсь запросить данные из MySQL через PHP. Где ошибка?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Выводится только "соединение установлено", а так - ничего
    Во первых - включить вывод ошибок, в логи же вы не смотрите...
    Во вторых - куча ошибок, непонятно откуда вообще появившихся. Все плохо.
    $link = mysqli_query($link, "SELECT * FROM 'table-name' WHERE USER_ID = 1620");
    Сам линк зачем-то затирается результатом выполнения запроса, внутри запроса имя таблицы зачем-то в кавычках (либо убрать, либо использовать обратные кавычки), потом вообще повтор и бред -
    $query = "SELECT * FROM 'table-name' WHERE USER_ID = 1620"; //снова кривой запрос, теперь уже в переменной, зачем?
    $result1 = mysqli_query($link, $query) or die(mysqli_error($link)); //Линк тут уже заменен результатом выборки, 
    //так что там не ресурс подключения, но варнинги мы не смотрим, так что пофиг же, да?

    Похоже что код взят из какого-то туториала 15летней давности, и над ним издевался ничего не понимающий вивисектор...
    Ответ написан
    Комментировать
  • Как можно отфильтровать пустые POST запросы?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    у меня есть файл PHP который записывает все входящие POST запросы в БД
    Ох, я уже хочу посмотреть на этот сайт... Так красиво работа с пдо еще нигде не применялась. Форма ничего не требует, а значит можно не заполнять, собсно по этому и запросы пустые. В принципе надо сказать спасибо что пустые, а не с инъекциями...
    Ответ написан
    Комментировать
  • Как реализовать добавление товара с количеством в корзину?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Awake, вопрос: Нахрена хранить это в стораже, если все равно лазеете на сервер при каждом чихе. Храните в сессии, или в бд, на сервер отсылайте только прибавить/убавить/удалить. Обратно получайте хтмл корзины, ну или жсон структуру и из нее уже хтмл лепите.

    Если очень хочется хранить в стораже - храните жсон строку под индексом товара, в котором уже цена, количество, от вашего кода нифига не изменится, кроме пары строк.
    будет у вас структура типа
    {
       "1":{
          "id":1,
          "qty":2,
          "price":666
       },
       "2":{
          "id":2,
          "qty":1,
          "price":77
       }
    }
    Ответ написан
    1 комментарий
  • Оптимальное решение для наложения большого количества текста со стилями на изображения?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    yarovikov,
    Да и текст поверх картинки верстать лютый гемор с адаптивностью. Там несколько столбцов текста, не считая остального
    Так не делайте адаптивно, тупо на А4 верстайте. Если вы думаете что расположить правильно на картинке текст сильно проще чем в придуманной специально для этого разметке - вы сильно ошибаетесь. А если юзер хочет скачать картинку - сделайте кнопку скачать, и отдавайте скрин через html2canvas, или более продвинуто - печать - сохранить в пдф, вообще красота, все векторное, не искажается, можно печатать в любом высоком разрешении....
    Ответ написан
  • Как нормально входить в phpmyadmin?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    в конфигурационном файле phpmyadmin config.sample.inc.php прописал... а после этот конфигурационный файл просто сам удаляется
    По тому что читать надо, это образец конфиг файла, скопируйте в новый файл с названием config.inc.php, и нечего меняться не будет.
    Ответ написан
  • Когда заливаю сайт на хостинг, то ломается кодировка, как решить?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Во первых надо выяснить где у вас ломается кодировка. Попробуйте залить обычный хтмл файл, вывести какой-то текст через пхп, запросить и вывести какие-то текстовые строки из бд - какой вариант даст поломанную кодировку?

    Во вторых - проверить что установленно в пхп.ини в качестве default_charset (должно быть default_charset = "utf-8").

    В третьих, конечно же проверить кодировку подключения к бд, которая должна быть выставлена как utf8mb4.

    Ну и в четвертых - для использования мультибайт функций нужно установить mb_internal_encoding("UTF-8");
    Ответ написан
    3 комментария
  • Как вывести в переменную данные из file_get_contents?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) при чем тут "вывести в переменную данные из file_get_contents"?
    2) все выводится, ищите ошибку в другом месте
    3) Если вы получаете xml, то зачем вам регулярки, есть средства, предназначенные для работы с xml
    Ответ написан
    Комментировать
  • Генерация зеркального текста для печати настольных табличек - что лучше изображения или PDF?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Наилучший вариант, который вижу я:
    Делаете хтмл шаблон, с разметкой под принтер на А4, выводите все страницы в хром, контрол+пэ, выбираете печатать в пдф. Готово, вы великолепны!

    по сути там просто сложенный лист формата А4 (с обрезанными краями), но главное с зеркальной инфой на обеих сторонах.
    Не совсем понял. Где там зеркально что-то? Разве не перевернуто?
    Ответ написан
    5 комментариев
  • На какой технологии или плагине работает подгрузка блока контента на сайте?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Подскажите примеры плагинов
    Для чего плагины то? Для фотошопа?

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

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Я изменил код на этот:
    Во первых, код принимает загрузку только жпег и пнг,
    во вторых, включите вывод ошибок, иначе будете до бесконечности гадать что не так,
    в третьих вполне возможно (и наиболее вероятно) что текущая версия гд на вашем сервере просто не поддерживает вебп.
    Для начала так:
    ...
    ini_set('error_reporting',E_ALL);
    ini_set('display_errors', 1);
            if (move_uploaded_file($_FILES['image']['tmp_name'][$tmp_i], $totalPath)) {
    							$image;
    							if ($ext == 'jpg' or $ext == 'jpeg') {
    								$image = imagecreatefromjpeg( $totalPath );
    							}
    							if ($ext == 'png') {
    								$image = imagecreatefrompng( $totalPath );
    							}
    							
    							if (isset($image)) {
    								
    								$imageWidth=imagesx($image);
    								$imageHeight=imagesy($image); 
    								$newImageWidth = 600;
    								$newImageHeight = ($newImageWidth * $imageHeight) / $imageWidth;
    								
    								$image = imagescale( $image, $newImageWidth, $newImageHeight);
    								
    								$logoWidth=imagesx($logoImage);
    								$logoHeight=imagesy($logoImage);
    								
    								imagecopy(
    								  $image,
    								  $logoImage,
    								  0, ($newImageHeight/2) - ($logoHeight/2),
    								  0, 0,
    								  $logoWidth, $logoHeight 
    								);
    								imagewebp( $image, $totalPath, 90 );
    
    								imagedestroy( $image );
    								imagedestroy( $logoImage );
    							}
    						}
    Ответ написан