2015-09-03 3 views
0

У меня есть контактная форма, и после того, как проверка завершена, я хотел бы перенаправить ее в другой файл messageSent.php. Я думал, что использование include будет работать, но это просто добавляет всю страницу о странице контактов.Вызов заголовка PHP для перенаправления внутренней страницы

Я прочитал, чтобы использовать функцию header() для перенаправления страницы. Но все примеры показали использование местоположения URL-адреса в реальном времени. Мои файлы все внутренние, и я тестирую локально.

Как правильно вызвать функцию header() для перенаправления на страницу в моей корневой папке?

PHP:

if(!empty($_POST)){ 
$POST = filter_post($_POST); 
$invoice = array_splice($POST,3,1); 
$MSG = check_empty($POST); 
$email = test_input($_POST["email"]); 

if(!array_filter($MSG)){ 
    if(!filter_var($email, FILTER_VALIDATE_EMAIL)){ 
    $MSG[] = "Invalid Email Format ([email protected])"; 
    } 
    else{ 
     $POST['invoice'] = $invoice['invoice']; 
     if(send_mail($POST)){ 
      include '/Users/orobosaenagbare/Dropbox/Websites/Se7en Service/messageSent.php'; 
     } 
     else{ 
      $MSG[] = "Email Failed"; 
     } 
    } 
} 
} 
+1

Путь, который вы отправляете с 'header ('Location: path');' может быть относительным: 'header ('Location: messageSent.php');' – samlev

+0

безупречно работает. Благодаря! – blackRob4953

+0

, но URL-адрес, похожий на «http: // localhost: 8888/contact.php», не будет работать повсеместно, как только я поместил все это вживую. Просто пытаюсь свести к минимуму и ошибки в будущем. @Popnoodles – blackRob4953

ответ

1

Вы можете просто позвонить:

header('Location: relative/path/to/file.php'); 

И он должен работать. В зависимости от локального веб-сервера и корневого каталога вашего веб-сайта вы можете использовать абсолютный путь из корневого каталога сети, предварительно используя /.

Важно отметить, что перед любым выходом следует вызывать header().

Смежные вопросы