Ответы пользователя по тегу PHP
  • Что значит такое выражение if(0 !== 0): в php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Альтернативная запись условного блока, if(): ... endif; в настоящее время применяется редко, чаще просто используют {}
    что касается условия - скорее всего временная заглушка, всегда возвращающая false, возможно предполагалось что в зависимости от условий там что то будет выводиться, а пока не нужно заглушили таким кодом.
    Ответ написан
  • Как исправить Unexpected token in JSON at position 0?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    ...
    $result_contactID = json_decode($result, 1);
    var_dump($result_contactID);
    Ответ написан
  • Как перенаправить на другую страницу?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Во первых
    dataType: "json", // тип передачи данных
    это не тип передачи, а тип данных ожидаемого ответа. То есть в ответ должен прилететь json.

    Во вторых:
    но die не срабатывает.. ПОЧЕМУ? На любой другой странице срабатывает, а здесь нет... может потому что ajax-oм отправляла данные сюда? ПОДСКАЖИТЕ ПОЖАЛУЙСТА)))))
    die срабатывает, просто вы не понимаете что делаете, и от этого у вас лажа. Сервер возвращает СКРИПТУ строку, которая кроме того что нифига на json, еще и не "добавляется" в хтмл, а возвращается к скрипту в виде переменной возврата. В консоли браузера смотрите - там должна быть соответствующая ошибка, а во вкладке нетворк еще и тело ответа.

    Конкретно в вашем случае - вроде часть скрипта писал кто-то другой, кто что-то понимает, а вы воткнули свой die с левым бредом.
    Ответ написан
  • Как повторно вызвать mysqli_fetch_array?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    $result = $select->fetch_all(MYSQLI_ASSOC);
    var_dump($result);
    Ответ написан
    Комментировать
  • Как подключить форму React к PHPMailer?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    При загрузке страницы в консоли это сообщение
    просто не догрузился какой-то ресурс, картинка или шрифт, смотрите в нетворке подробности.

    После заполнения и отправки формы в консоли это
    ...
    Во вкладке Network это

    Смотреть надо не ответ(хотя и его тоже), а что отправляет ваш скрипт, смотрите вкладку headers, там в отправляемых данных видно что уходит, и что нет, подозреваю что запрос уходит без данных name, email, text. А почему уже смотрите свой скрипт.
    Ответ написан
    Комментировать
  • Можно ли на PHP поднять свой HTTP сервер, и надо ли это?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    во первых - node не язык, а "программная платформа, основанная на движке V8 (транслирующем JavaScript в машинный код)", и включает в себя в том числе сервер.
    во вторых - php -S localhost:8000 - пых так тоже умеет )
    Ответ написан
    2 комментария
  • Как отправить сообщение на локальный сервер?

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

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

    Выход - добавьте поле в таблицу сами(только бэкапы сделайте), скорее всего что то типа:
    ALTER TABLE `tablename` ADD `unique_id` VARCHAR(24) NULL , ADD INDEX (`unique_id`);
    Ответ написан
    3 комментария
  • Ошибка с выводом переменной?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) $id = $_GET['edit']; здесь $id в итоге может быть вообще пустой, или с шикарным sql инжектом.
    2)
    $get = mysqli_query($db, "SELECT * FROM users WHERE id = '$id'");
    можно только надеяться что выше есть объявление $db

    3)$str = mysqli_fetch_array($get); неплохо бы проверить что запрос что-то вернул вообще
    4) if(isset($_GET['edit'])) если это условие не выполняется, переменная $str вообще нигде не будет создана.

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    хочу написать программку которая будет парсить данные с разных форумов
    cURL

    и постить их в группе.
    VK API
    Ответ написан
    Комментировать
  • Почему не работает функция php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Ни каких ошибок не появляется.
    Это не говорит о том что их нет. Для отладки на дев окружении должны быть включены выводы всех нотисов и варнингов, либо через конфиг php.ini, либо в коде при старте указать
    ini_set('error_reporting', E_ALL);
    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    Ответ написан
  • Как вывести переменную из if?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Я понимаю что эта переменная видна только в if. Как ее вывести?

    Дело не в том что она "видна" в иф, дело в том что если иф не выполняется, то эта переменная вообще не будет существовать, соответственно вывод ее ниже выдаст варнинг - нет переменной. Вариантов 2:
    1) более правильно все используемые переменные определять перед исполнением скриптов(как советует Михаил Братеньков). Нормальные редакторы(пхпсторм например) такие куски кода определяет сразу.
    2) Более кривое решение - в месте использования переменной для вывода проверять ее существование(более менее правильный вариант), или "засобачить" переменную(<?php echo @$dif; ?> - совсем кривой подход), такой подход оправдан только в ограниченном ряде случаев, например если много переменных могут быть не определены и код нужно рефакторить, но некогда.
    Ответ написан
    2 комментария
  • Ошибка функция при переносе сайта на хостинг?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Замечание: Эта функция была добавлена в PHP 7.0, а для версий с 5.2 по 5.6 включительно доступна » пользовательская реализация.
    Читайте доку
    Ответ написан
    Комментировать
  • Лайки на карточке товара?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    В файле index.php, есть код, который изменяет содержимое index.php?

    1) Открываем файл __FILE__
    2) читаем содержимое(если надо)
    3) меняем содержимое
    4) Закрываем файл
    5) Profit!
    Ответ написан
  • Есть класс (сервис) к которому надо передать провалидировнную конфигурацию. Как это лучше делать?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Для формы есть свой класс, который умеет парсить post запрос в объект.
    Это же по сути DTO объект? Передавайте DTO, если через консоль - сериализируйте и бэйз64энкод, в контроллере консольного приложения уже принимайте параметр, преобразуйте обратно и уже скармливайте объекту работы с апи.
    Ответ написан
    Комментировать
  • Как сделать покупку на PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    user_id из куки? Серьезно? Жееесть...

    $billing_id = addslashes( trim($_POST['operation_id']) );
    $amount   = addslashes( trim($_POST['amount']) );
    $user_id  = addslashes( trim($_COOKIE['user_id']) );
    var_dump($billing_id);
    var_dump($amount);
    var_dump($user_id);
    
    $sql = "INSERT INTO `dannye` (`billing_id`, `amount`, `user_id`) VALUES ($billing_id, $amount, $user_id)";
    var_dump($sql);
    $result = mysql_query ($sql);

    Дальше смотреть что вывелось, много думать, если визуально все вышло норм - попробовать запустить получившийся sql "руками" из консоли или phpmyadmin.
    Ответ написан
    1 комментарий
  • Как генерировать новые страницы для array_slice?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    делаю пагинацию сайта, данные беру с массива. На php-форуме посоветовали делать с помощью array_slice
    по уму нужно из базы получать нужное количество данных через limit, а не вытаскивать все данные и потом их разбивать, используя 1% от всего объема данных. В остальном kafkiansky описал примерный алгоритм достаточно подробно, все что касается реализации в коде зависит от вашего основного движка и ваших познаний в реализации алгоритмов в коде.
    Ответ написан
    Комментировать
  • Как заставить foreach перебирать не с начала?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    для таких итераций используют не foreach(), a for(), соответственно счетчики могут быть использованы в любом месте с любого значения.
    Ответ написан
    4 комментария
  • Как в php отправить файл по post запросу?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    curl + google
    https://www.google.ru/search?q=curl+send+file

    или если без то curl то file_get_contents(), а не file_put_contents()
    https://www.google.ru/searchq=php+send+file+file_g...
    Ответ написан