Перенаправление PHP после неправильного ввода URL

Я занимаюсь разработкой новостного веб-сайта, и у меня возникла одна проблема ...

Когда пользователь нажимает на новостную статью, она ссылается на www.mydomain.com/news/article-name/

Однако, если вы удалите название статьи в URL-адресе, что приведет к www.mydomain.com/news/, PHP выдает ошибки. Я отключил ошибки PHP, и когда я это сделаю, веб-сайт, конечно же, удалит тексты статей, содержание статьи и изображение.

Когда включаются ошибки и изменяется URL-адрес, я получаю следующую ошибку на странице ... «Примечание: неопределенный индекс: news_id»

У меня такой вопрос ... ... как перенаправить пользователя обратно на мою домашнюю страницу, если он намеренно или случайно изменил URL-адрес?

Мой код такой ...

<?php
require_once('header.php');

// Preventing the direct access of this page.
if (!isset($_REQUEST['slug']))
{
    header('location: index.php');
    exit;
}

// Getting the news detailed data from the news id
$statement = $pdo->prepare("SELECT * FROM tbl_news WHERE news_slug=?");
$statement->execute(array($_REQUEST['slug']));
$result = $statement->fetchAll(PDO::FETCH_ASSOC);
foreach ($result as $row) {
    $news_title = $row['news_title'];
    $news_content = $row['news_content'];
    $news_date = $row['news_date'];
    $publisher = $row['publisher'];
    $source = $row['source'];
    $photo = $row['photo'];
}

// Update data for view count for this news page
// Getting current view count
$statement = $pdo->prepare("SELECT * FROM tbl_news WHERE news_slug=?");
$statement->execute(array($_REQUEST['slug']));
$result = $statement->fetchAll(PDO::FETCH_ASSOC);                           
foreach ($result as $row) 
{
    $current_total_view = $row['total_view'];
}
$updated_total_view = $current_total_view+1;

// Updating database for view count
$statement = $pdo->prepare("UPDATE tbl_news SET total_view=? WHERE news_slug=?");
$statement->execute(array($updated_total_view,$_REQUEST['slug']));
?>

<!-- Blog Start -->

Я получил его, используя следующие

<?php
require_once('header.php');

// Preventing the direct access of this page.
if (!isset($_REQUEST['slug']))
{
    header('location: index.php');
    exit;
}
else
{
    // Check the news slug is valid or not.
    $statement = $pdo->prepare("SELECT * FROM tbl_news WHERE news_slug=? AND status=?");
    $statement->execute(array($_REQUEST['slug'],'Published'));
    $total = $statement->rowCount();
    if ( $total == 0 )
    {
        header('location: index.php');
        exit;
    }
}

Включите в вопрос точное сообщение об ошибке.

Jason K 09.04.2021 21:43

Отредактировал его, но в основном сообщение об ошибке гласит: «Примечание: неопределенный индекс: news_id»

Krazeest 09.04.2021 21:55

Где в этом скрипте находится news_id? Я предполагаю, что вам нужно посмотреть на объект $ statement, чтобы увидеть, были ли затронуты какие-либо строки. Затем вы можете решить, есть ли у вас действующий news_slug.

Jason K 09.04.2021 22:02
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
3
33
1

Ответы 1

извлеките идентификатор из URL-адреса, если этот идентификатор не совпадает с вашей базой данных, используйте перенаправление

Другие вопросы по теме