Как создать уникальную целевую страницу PHP, когда через GET передаются неверные значения? - PullRequest
0 голосов
/ 21 июня 2011

У меня есть URL-адрес, которому передаются неправильные значения при загрузке, и, поскольку в скрипте есть шаблон PHP, поддерживающий ссылку, я не получаю ошибку 404.Вот мой пример:

http://www.examplesite.com/template.php?value=incorrect

Как видите, страница "template.php" будет загружена, но вся информация, связанная с этой страницей через таблицу базы данных, пуста из-за "неверное значение, которое передается.Теперь по моему вопросу.

Я бы хотел, чтобы это перенаправлялось на уникальную целевую страницу, когда таким образом передается неправильное значение, а не загружается страница с пустыми значениями.Это возможно?Если да, то как?

Ответы [ 3 ]

1 голос
/ 21 июня 2011

Используйте http_redirect, как задокументировано здесь , но внимательно прочитайте документацию, вы должны выполнить перенаправление перед записью любого другого вывода.

1 голос
/ 21 июня 2011

В первой строке вашего скрипта должен быть следующий код (в template.php):

<?php
$value = $_GET['value'];

$sql = "SELECT count(*) FROM tblName WHERE col1 = '$value'";
$rs = mysql_fetch_assoc(mysql_query($sql, $dbCONN));

if ($rs[0] == 0) {
    header("Location: /page-not-found.php");
} else {
    <process your actual code>
}
?>
1 голос
/ 21 июня 2011

Вы можете проверить и перенаправить пользователя на целевую страницу, если значение, переданное через GET, неверно.

  • Отфильтруйте переменную GET.
  • Сделать запрос к базе данных.
  • Проверить результат запроса, если он пуст, перенаправить пользователей на целевую страницу.
   if($db_value == null)
   {
     header('location:http://www.example.com/landingpage');
     die();
   }
...