Профиль пользователя заблокирован сроком с 10 апреля 2022 г. и навсегда по причине: систематические нарушения правил сервиса
  • Какое самое лучшее решение для бэкапа и восстановления MySQL-баз через PHP?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    mysqldump
    Ответ написан
    Комментировать
  • Что за непонятная ошибка в mysql ?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Этот код нельзя исправить.
    Его можно только выкинуть на помойку, весь.

    Весь этот код - ад и преступление против человечности.
    Ответ написан
    Комментировать
  • Как из переменной создать столбцы в таблице?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    f1-f8 - столбцы.

    Таких столбцов в БД быть не должно.
    Таблица спроктирована неправильно
    Ответ написан
    Комментировать
  • Какой метод лучше использовать для определения пустой и инициализированной переменной?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Если выбирать из этих двух
    То второй метод лучше. Он хотя бы иногда будет работать.
    В отличие от первого,
    Который просто безумный треш.

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

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    И то и другое.
    Сделать кэширование, причем при каждом добавлении/редактировании/удалении кэш сбрасывается.
    Если где-то забудем - не беда, просто цифра повисит немного дольше. Потом заметим и исправим.

    Про сложности первого вопроса, куда и зачем там ходить - не понял.
    Ответ написан
    Комментировать
  • В чем проблема с SQL запросом к MySQL в PHP?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Проблема с пользователем, который экранировал этот запрос.
    Для решения проблемы надо отправить пользователя учить правила составления запросов.
    Ответ написан
  • Как сделать пошаговое выполнение скрипта в CRON?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    как прервать выполнение скрипта

    Не надо этого делать.
    Ответ написан
    4 комментария
  • PDO короткий запрос, как?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Единственное неудобство PDO в том, что execute() не возвращает стейтмент. Это легко исправить, как показано в коде из ответа выше.

    Получаем 2 строки:
    $sql = "SELECT ...";
    $data = DB::prepare($sql)->execute([$param1,$param2, ...])->fetch();

    Вместо fetch() подставляем любой желаемый вариант получения данных.

    Но можно, в общем, и свой враппер написать, попроще

    function pdq($sql, $params = array())
    {
        global $pdo; 
        $stmt = $pdo->prepare($sql);
        $stmt->execute($params);
        return $stmt;
    }
    $sql = "SELECT ...";
    $data = pdq($sql, [$param1,$param2, ...])->fetch();


    $pdo получать как написано здесь phpfaq.ru/pdo#connect
    Ответ написан
    Комментировать
  • Как вывести картинку из базы?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    В начале 90-х ходила шутка про нового русского и мерседес с засорившейся пепельницей.
    Вы будете смеяться, но логика пользователей похапе конгениальна логике того малинового пиджака.
    Если что-то не работает, то видимо, машина не та, и её надо сменить. "Я делаю неправильно, надо по-другому".
    И вопрос формулируется как "какую машину мне взять" АКА "как правильно делать то-то".

    Мысль о том, что делает он правильно, но "пепельница засорилась" т.е. "что-то пошло не так" никогда не приходит ему в голову. И вопрос никогда не формулируется как "как мне проверить, что я все сделал правильно?"

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

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    в гугле?
    Ответ написан
    Комментировать
  • Что делать если PHP возвращает ошибку при получении данных?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Это не РНР, дружок. Это твой собственный код, бессмысленный и беспощадный.
    Ты сказал РНР умирать с бессмысленным сообщением об ошибке - он и умирает. Неча на зеркало пенять.

    Перед коннектом пишешь
    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

    И чтобы духу этого идиотского or die() в твоих скриптах больше не было.
    Ответ написан
  • В чем может быть проблема SOAP?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Похожий случай был в одном пионерском кружке:
    Юные натуралисты посадили таракана на стол и постучали - таракан услышал и побежал.
    Тогда пионеры оторвали таракану лапки и снова постучали по столу. Таракан остался на месте.
    "Не слышит" - догадались юные исследователи, и сделали вывод из своей лабораторной работы: у таракана уши в ногах.


    Умением делать выводы из наблюдаемых явлений пользователи похапе мне до боли напоминают тех юных натуралистов.

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

    Сервер нам пишет, что проблема с документом. Это значит, что в первую очередь надо узнать, что мы получили. То есть, посмотреть глазками на этот самый документ.
    Сделать это несложно - встроенный клиент предоставляет такую возможность:
    <?php
    $client = SoapClient("some.wsdl", array('trace' => 1));
    $result = $client->SomeFunction();
    echo "Ответ:\n" . $client->__getLastResponse() . "\n";

    Здесь мы видим, что при создании клиента надо задать параметр trace, а при обработке ошибки добавить к ней $client->__getLastResponse().

    И только после того как мы увидим результат, можно будет делать глубокомысленные выводы о причинах проблемы и возможных путях ее решения.
    Ответ написан
  • Short_open_tag = on не работает, что может влиять?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    1. перезапустить php-fpm
    2. убедиться, что РНР обрабатывается именно по этой технологии
    3. запись вида <?=$someVar?> прекрасно работает и при short_open_tag = off
    Ответ написан
  • Как вызвать require once внутри цикла?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    все-таки, такие вопросы можно встретить только по РНР.

    require.php
    <?php
    function proverka($stroka)
    {
        // здесь код, который проверяет строку
    }


    основной файл.php
    <?php
    require 'require.php';
    while ($stroka = fetch())
    {
        proverka($stroka);
    }


    Это тоже говнокод, но больше ты все равно не осилишь

    А по поводу этого
    получается тоже, что и при require once из переменной.

    разбирайся со своим кривым HTML
    Ответ написан
    Комментировать
  • Как написать красивую тему для wordpress?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Вопрос выглядит точь-в-точь как одна старая история...
    Ответ написан
    Комментировать
  • Как правильно приклеить комментарии к новостям?

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

    ТЫ НЕ СПОСОБЕН НА ОБА

    Прои взгляде на несчастную модель на глаза наворачиваются кровавые слезы.
    Более-менее современная технологичная установка попросту изуродована ударами варварской дубины. НУ ХОТЯ БЫ ПОСМОТРЕТЬ, КАК СДЕЛАНО В СОСЕДНЕМ МЕТОДЕ и не лепить SQL руками можно было? Дай классической похапе-обезьяне Ларавель - она и из него сделает привычную mysql_query.

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

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Отучайся задавать вопросы по мелким техническим деталям, в которых ты запутался.
    Спрашивай сразу про основную задачу, чтобы тебе объяснили, как ее делать ПРАВИЛЬНО.

    "я получаю по одной строке из бд" - ЗАЧЕМ?
    "запросом выше я хочу узнать, а последняя ли" - зачем?
    Ответ написан
  • Как вывести записи в массив?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    В одном из столбцов таблицы БД есть наборы слов через запятую

    Вот это и есть главная проблема.

    Слова эти должны лежать в отдельной таблице, в столбик.

    Тогда и выбирать их будет просто.
    Ответ написан
    Комментировать
  • Почему скрипт не видит подключение к базе?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Самый популярный вопрос на тостере. Причем именно в под тегом mysqli, хотя казалось бы - при чем тут БД.

    Специально для несчастных мигрантов с mysql_query: статический PDO wrapper

    <?php
    include_once('connect.php');
    function get_data($uid)
    {
        $sql = "SELECT * FROM test_db_vytrat t 
               LEFT JOIN test_db_vytraty_cat c ON t.cat=c.cid 
               WHERE t.user_id = ?";
        return DB::prepare($sql)
            ->execute([$uid])
    #        ->fetch()
            ->fetchAll()
        ;
    }
    $data = get_data(1);
    var_dump($data);
    Ответ написан
    Комментировать