php
  • redirect
  • swiftmailer
  • 2012-06-17 78 views 0 likes 
    0

    我不知道關於php的一些事情,但是沒有多少幫助和研究,我設法使用Swift Mailer創建工作聯繫表單。它發送的消息沒問題,但我希望它在發送消息後將其重定向到thank_you.html頁面。我嘗試了所有可能的方式,但不起作用。你可以幫幫我嗎?下面是代碼:將SwiftMailer中的聯繫表格重定向到成功頁面不起作用

    <?php 
    
    include("Swift/lib/swift_required.php"); 
    $host = '[email protected]'; 
    $password = 'xxxxx'; 
    $subject = "zapytanie ze strony"; 
    $body = "Zglaszajacy: ".$_POST["fullname"]."\r\n"; 
    $body .= "Telefon: ".$_POST["phone"]."\r\n"; 
    $body .= "E-mail: ".$_POST["email"]."\r\n"; 
    $body .= "Tresc: ".$_POST["description"]."\r\n"; 
    
    $transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, 'ssl') 
    ->setUsername($host) 
    ->setPassword($password); 
    
    $mailer = Swift_Mailer::newInstance($transport); 
    
    $message = Swift_Message::newInstance($subject) 
    ->setFrom(array($host => 'Klient')) 
    ->setTo(array('[email protected]'=> 'xxxxxx')) 
    ->setBody($body); 
    
    $result = $mailer->send($message); 
    if ($result) 
    { 
        header('Location: http://www.xxxxx.org/thank_you.html'); 
    } 
    echo $result; 
    
    
    ?> 
    

    我添加的那部分自己:

    if ($result) 
    { 
        header('Location: http://www.xxxxx.org/thank_you.html'); 
    } 
    

    ,它不工作。郵件已發送,但沒有任何形式發生。它只是呆在那裏。請把我喜歡在這一個總的門外漢;)

    回答

    0

    從PHP文檔header()

    請記住,標題()必須被調用時 發送的任何實際輸出之前,無論是普通的HTML標籤,文件中的空行或PHP中的空行。 使用include或require, 函數或其他文件訪問函數讀取代碼,並在調用header()之前輸出空格或空行 是非常常見的錯誤。使用單個PHP/HTML文件時存在相同的問題 。

    在接到header的電話之前,您的代碼或包含的快捷郵件代碼可能會輸出一些空格。

    嘗試在代碼開始時使用ob_start(),然後在末尾使用ob_end_flush()

    相關問題