![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 木村豪 ![]()
![]() |
另名的意義? 因為這次除錯一個網站php的 其中 yrun()函式是資料更新函式 奇妙的事情 照理來說只要通過第二個if判斷式就會進行更新與跳頁 但是一開始我沒有加上 時,資料確實更新完成,但是卻跳到gbox("請輸入暱稱、電話","news");exit; 這個錯誤判斷式,此問題我除錯幾天了。最後加上去之後一切正常。 想問各位大大這兩行真的很重要?? <html xmlns="http://www.w3.org/1999/xhtml"> 原本是 <html> 瀏覽器 IE9
搜尋相關Tags的文章:
[ 問各位高手們一個問題 ] ,
本篇文章發表於2011-11-03 03:46 |
1樓 |
依照你的程式判斷,這的確是一種很奇怪的問題。
首先我先提出我覺得怪怪的地方。 你的跳頁其實是用header()來處理的。 正常來講是不該有任何輸出才能運行。 但你說你又加了網頁的規範宣告,理論來講是無法跳頁的才對,而且會跑錯誤訊息出來。 可是你說你沒碰到,反而是加上去才會正常。這個我就不知道如何去解釋了。 可能你程式碼並未全PO,所以比較難判斷。
本篇文章回覆於2011-11-03 09:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
不錯的參考
ahsac ![]() |
你可以存取log嗎? 或許看看log檔, 看ie9是不是做了什麼多餘的事情
if跟else應該只會執行其中一邊的程式, 沒道理if那邊跑完又跑else 其它的瀏覽器也會這樣嗎? 題外話, 我看過一個人他把每個php第一行都加上 ob_start();
本篇文章回覆於2011-11-03 15:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓 |
原則上~~~程式碼未看到ob_start。我是一律視同未加上來判斷。
要不然很難抓問題,如果有加上ob_start應該也要事先說明。 畢竟用header發生標頭設定的問題太多了,沒辦法預先假設。 而且樓主所PO的程式碼,有太多自定義函數,根本不知道那些自定義函數是在跑什麼。 搞不好根本沒跑第13行,資料有可能是被其它函數或是程式做更新了而不知道。 可能在第2行的判斷就已經產生偽值了。這樣會去跑第22行的訊息出來是很正常的事。
本篇文章回覆於2011-11-03 17:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓
作者回應
木村豪 ![]() |
謝謝 浩瀚星空 ahsac 的解答
ob_start 尚未加上 如上php程式碼是寫在網頁最上方,也就是header執行時 是沒有任何的輸出 所以要整合起來的話 程式如下
本篇文章回覆於2011-11-03 18:49
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
我忘了問一個重點了~~~
你的轉頁是轉到同一隻程式還是另一隻程式。
本篇文章回覆於2011-11-04 09:05
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
作者回應
木村豪 ![]() |
謝謝 浩瀚星空
是跳到下一個程式sendmail2sms.php
本篇文章回覆於2011-11-04 14:09
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓
最有價值解答
浩瀚星空 ![]() ![]() |
我剛剛有想到早期我設計開發時的問題。
當時還是一個初學者,跟你一樣將HTML跟PHP寫在一起的方式。 當做POST時,會很莫名奇妙的很像是做了二次POST的感覺。 一直到現今我還是無法解釋那個現象。 因為有時會有時不會。 現今是不會再發生過了。 你可以試試再加個IF($_POST)看看還會不會發生這個問題。也就是確定有接收到$_POST的值再運行那段程式。 如果是的話,你也有可能跟我之前一樣遇到同樣的怪問題。
本篇文章回覆於2011-11-04 14:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
作者回應
木村豪 ![]() |
感謝 浩瀚星空 的解答
IF 判斷式已經加過囉 還是一樣 這個現象就如同你說的 好像送出2次POST似的。這個怪問題,還真的很奇怪。 反正現在加上標頭也解決這問題 暫時先這樣囉,不然最快的方法就是重寫囉 哈哈 感謝各位高手的解答
本篇文章回覆於2011-11-04 14:32
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |