2011-08-08 188 views
0

我做了一個新網站,我有以下問題:當我嘗試從網站發送電子郵件時,它給我一個錯誤,但是郵件成功發送到郵箱Codeigniter電子郵件問題

Severity: Warning 
Message: Cannot modify header information - headers already sent by (output started at /home/content/73/8079773/html/system/language/arabic/email_lang.php:1) 

Filename: libraries/Session.php 

Line Number: 671 

我在這裏錯過了什麼?順便說一下,我使用codeigniter框架,並從我的本地主機成功發送電子郵件。

+0

這與正在發送的電子郵件無關。之後您是否重定向用戶?你可以發佈你的控制器嗎? –

回答

2

確保您在阿拉伯語email_lang.php文件有NO空格前<?php打開標籤。

+0

最後,你有權利在<?php之前有空白,我想我必須檢查我的阿拉伯語'email_lang。 PHP'謝謝問題解決 – osos

2

這是什麼意思是你試圖修改標題不止一次。在發送特定標題之前,您不能將任何標記發送到瀏覽器,否則您將收到此錯誤,並且標題將無法正確發佈。

庫/ Session.php中的第671行很可能會向瀏覽器發送標題,但您可能在調用標記發送給瀏覽器之後調用此文件。在將任何內容發佈到瀏覽器之前,確保包含庫/ Session.php。

更多在這裏:http://php.net/manual/en/function.header.php

+0

好吧那麼,爲什麼只有當我嘗試從Web主機發送電子郵件,但當我嘗試從本地機器發送它時,它才工作正常? – osos

+0

您的本地計算機可能沒有打開錯誤處理。當您通過遠程主機發送它時,可能會輸出錯誤。如果打印錯誤,則不能執行標題重定向。 – grep

+0

mmm,但我的本地機器的錯誤處理已打開,無論如何,我會考慮這一點,感謝您的幫助.... – osos

1

很可能你輸出的東西到頁面上,這是不允許的頭重定向發生。如果您不打印/回顯任何內容,請確保該腳本不會導致打印出任何錯誤,因爲這會導致相同的結果。