2009-08-10 152 views
0

我有一個ajax登錄腳本,使用原型,其中我ajax的憑據通過php頁面檢查信息是否正確。如果是,我嘗試設置一個cookie,然後返回0或1,具體取決於它是否正確。如果Ajax調用正確,則返回0,然後在原始頁面上進行js調用以重定向到站點。我不斷收到一個無法修改標題信息的錯誤。我究竟做錯了什麼?Ajax登錄腳本標題問題

感謝

+1

請將您的代碼。 – 2009-08-10 07:10:17

+0

你的「頭文件已發送」錯誤也應該告訴你哪個輸出導致錯誤,例如「輸出開始在..在線..」這應該指向你在正確的方向。 – robjmills 2009-09-05 17:31:00

回答

2

檢查你的PHP不輸出其設置cookie前行的任何內容。這包括空白 - 所以一定要確保你的代碼不會是這樣的:

<!-- some comment, new line, or something else before the php opening tag --> 
<?php // This should be on line 1, with no space before it. 
+1

+請確保在塊之外沒有包含任何空格,包括關閉最後一個?>之後。這就是爲什麼許多框架建議在文件中省略關閉?>,因爲PHP解釋器停在文件的末尾。另請參閱http://stackoverflow.com/questions/236493/what-are-the-arguments-in-favor-of-php-closing-tags-for-php-only-files – Residuum 2009-08-10 08:14:35

+0

還檢查您是否打印/在完成設置cookie之前回應任何內容。如果你使用輸出緩衝,那麼確保在完成cookie之前不要刷新。 – daniels 2009-08-10 11:18:16