2013-02-15 88 views
0
$result = $mail->send($recipient, $headers, $html); 
    if($result === 1) 
    { 
     $report= "1"; 
     header("Location: objednavka.php?reaction=".$report); 
     //echo("Your message has been sent!"); 
    } 
    else 
    { 
     $report= "2"; 
     header("Location: objednavka.php?reaction=".$report); 
     //echo("Your message was not sent: " . $result); 
    } 

如果此郵件函數耗盡if語句,則判定它是否成功。如果我使用echo()部分,它會寫入您的消息已發送。但如果我想將用戶重定向到另一個頁面,它不起作用。爲什麼?我怎樣才能成功地調用頭函數?爲什麼忽略header()函數我的方法的結果?

+1

發生了什麼事?你看到任何錯誤?啓用錯誤報告,那麼你可以看到錯誤! – 2013-02-15 21:18:12

回答

0

PHP - header()

請記住,標題()必須被調用發送任何實際輸出之前,無論是普通的HTML標籤,文件中的空行或PHP中的空行。

+0

hm ...那麼這對我來說意味着什麼?我怎麼解決這個問題? – zoli777 2013-02-15 22:43:04

0

你忘了設置相應的狀態代碼(header()

header("Location: objednavka.php?reaction=$report", true, 301); 
+0

@他用$ mail-> send()我認爲它的不同在這裏... – 2013-02-15 21:33:31

+0

@Akam好點,謝謝。我只看到標題 – KingCrunch 2013-02-15 21:35:14

+0

中的'mail()'是的,我在這裏使用了PEAR Mail函數。那麼任何想法如何重定向用戶?哦,我沒有得到任何錯誤。郵件已成功發送,所以該功能正常工作,只有重定向不希望工作:/ – zoli777 2013-02-15 22:42:11