Ответы пользователя по тегу PHP
  • Можно ли как-нибудь уместить код PHP из 2 файлов в 1?

    Можно и через один файл сделать, если передать через POST параметр и по нему решить, добавлять ли новую статью или удалять её,

    session_start();
    require "config.php";
    
    $deleted = $_POST['deleted'];
    if ($deleted) {
        removeArticle();
    } else {
        addArticle();
    }
    
    function addArticle()
    {
        $categories_id = $_POST['id'];
        $title = $_POST['title'];
        $text = $_POST['text'];
        $date = date("Y.m.d");
    
        $path = 'static/images/' . time() . $_FILES['image']['name'];
        move_uploaded_file($_FILES['image']['tmp_name'], '../' . $path);
        if(!move_uploaded_file($_FILES['image']['tmp_name'], '../' . $path)) {
            $_SESSION['message'] = 'Ошибка при загрузке фотографии!';
            header('Location: ../admin.php');
        }
    
        mysqli_query($connection, "INSERT INTO `articles` (`id`, `title`, `image`, `text`, `categorie_id`, `pubdate`, `views`) VALUES (NULL, '$title', '$path', '$text', '$categories_id', '$date', '0')");
        $_SESSION['message'] = 'Статья добавлена';
    
    }
    
    function removeArticle()
    {
        $idnews = $_POST["id"];
    
        $query = mysqli_query($connection, "SELECT * FROM `articles` WHERE `id` = '$idnews'");
        if (mysqli_num_rows($query) > 0) {
            mysqli_query($connection, "DELETE FROM `articles` WHERE `id` = '$idnews'");
            $_SESSION['message'] = 'Статья успешно удалена!';
            header('Location: ../admin.php');
        } else {
            $_SESSION['message'] = 'Статья с данным ID не найдена!';
            header('Location: ../admin.php');
        }
    }
    Ответ написан
    Комментировать
  • Данные не уходят в базу?

    Нужно посмотреть, какого типа столбцы в таблице people. Если для id это int(11), то число 111111111111 точно не уместится и данные не вставятся в таблицу. Ведь для int(11) диапазон числа 2147483648, -2147483648

    И по хорошему нужно валидировать данные перед добавлением в БД и выводить ошибки, если данные некорректны.
    Ответ написан
  • Как сделать проверку формы у телеграм запроса?

    Можно выделить код отправки в телеграмм в метод.
    function send_to_telegram($name) {
        $token = "Сюда надо вставить ваш токен";
        $chat_id = "а Тут вставьте ваш ид";
        $arr = array(
            'Nickname: ' => $name, // Тут подхватывает поле с сайта и отправляет 'N1kname' можете сделать как вам удобно
         );
        
         foreach($arr as $key => $value) {
              $txt .= "<b>".$key."</b> ".$va$namelue."%0A";
         };
    
         $sendToTelegram = fopen("https://api.telegram.org/bot{$token}/sendMessage?chat_id={$chat_id}& parse_mode=html&text={$txt}","r");
    }


    и вызвать этот метод после прохождения валидации и отправки письма
    send_mail($message); // отправим письмо
    send_to_telegram($_POST['user_name']);
    Ответ написан
    1 комментарий
  • Как правильно добавить метод к классу orderItem?

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

    Для решения Вашей задачи я бы предложил найти в админке справочник "Наименование в заказе" и добавить в него поле auto и далее вести все операции с этим полем.
    Ответ написан
    4 комментария
  • Как задать несколько файлов-обработчиков для атрибута action?

    Можно сделать свой скрипт process.php в котором будет сначала капча проверятся, а потом делаться запрос в гугл доки. Этот скрипт нужно добавить в action
    Ответ написан
    Комментировать