2012-10-18 70 views
0

我有一個聯繫表格在http://www.brisbanediveacademy.com.au使用php。我試圖在表單提交後重定向到iframe中的新頁面。目前我無法將它重定向到任何地方。聯繫表格iframe重定向

這是我的PHP

<?php 
$errors = ''; 
$myemail = '[email protected]'; 
if(empty($_POST['name']) || 
    empty($_POST['email']) || 
    empty($_POST['message'])) 
{ 
    $errors .= "\n Error: all fields are required"; 
} 
$name = $_POST['name']; 
$contact = $_POST['number']; 
$inquiry = $_POST['inquiry']; 
$email_address = $_POST['email']; 
$message = $_POST['message']; 
if (!preg_match(
"/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", 
$email_address)) 
{ 
    $errors .= "\n Error: Invalid email address"; 
} 
if(empty($errors)) 
{ 
    $to = $myemail; 
    $email_subject = "Website contact Form Enquiry: $inquiry"; 
    $email_body = "You have received a new message. ". 
    " Here are the details:\n Name: $name \n Email: $email_address \n Contact Number: $contact \n Message: \n $message"; 
    $headers = "From: $myemail\n"; 
    $headers = "Reply-To: $email_address";"\r\n"; 
    mail($to,$email_subject,$email_body,$headers); 
} 
?> 

任何幫助將是巨大的。

感謝

+0

這裏是重定向代碼? –

+0

我已檢查過您的網站。問題是在設置標題重定向之前,您有空白空間或打印某些內容。在打印頁面上的任何內容之前,刪除這些空格或行並設置標題。 –

+0

你能舉一個例子對不起,不是100%確定你的意思。我在那裏有重定向,但最近把它們取出來了。 –

回答

0

我可以看到這個錯誤報告

Warning: Cannot modify header information - headers already sent by (output started at /home/brisbane/public_html/contact/mail.php:9) in /home/brisbane/public_html/contact/mail.php on line 37

這意味着,header('Location:..')之前的代碼有某種類似的回聲導向的輸出代碼。找到您的設置錯誤日誌,檢查回聲。最好你可以檢查mail.php的第37行。大多數情況下,這是因爲你的php conf有display_errors true和error_reporting設置爲最低級別。所以即使產生了通知,它也會在你做之前設置標題。在剛剛添加這些行後<?php

error_reporting(E_ERROR); 
    ini_set('display_errors','false'); 

即使是第二行也只會做。

編輯: 正如您所問,重定向是可能的這行代碼。

header("Location: url-to-redirect");

,如果你沒有在文件中這行代碼,請確認你正在做正確的事情您的要求。

希望這會有所幫助。

+0

你知道如何重定向到iframe中的新頁面嗎? –

0

在你應該有一個重定向代碼類似下面的代碼,

<?php 
/* Redirect browser */ 
header("Location: http://www.brisbanediveacademy.com.au/"); 
?>