2010-09-13 34 views
0

我有一些php源碼,它可以發送表單數據信息到其他頁面下MySQL 4.x版本。php源碼相關問題

但升級到MySQL 5.x版本後,此PHP源碼無法將表單數據信息發送到其他頁面。

我被搜查了很多信息,但是不知道我的php源代碼有什麼問題。

我只能猜測,這是與MySQL相關的升級和我有編輯我的PHP源,

但缺乏知識對我來說非常艱難。

如果有人幫助我,或給它一些提示,它真的很感激!

我的php源代碼由3部分組成。

形式發送頁面(http://pastebin.com/3Sg7SyWV

- > submited形式的數據信息覈對頁面(http://pastebin.com/WEx5tEn2

- >表單數據插入到數據庫(http://pastebin.com/918iZkgw

數天,我是搜索和搜索但缺乏關於php和mysql的知識

它很難解決。

在此先感謝

+0

檢查錯誤日誌 - 如果有什麼不工作,應該記錄一個錯誤。 – 2010-09-13 13:06:04

回答

0

您不檢查插入查詢是否成功。我不能告訴你正在使用的MySQL庫,但他們一般都返回FALSE如果查詢失敗了,所以你可以在你的查詢行更改爲類似:

$DB->ExecSql($InsertQuery) or die($DB->whatever_returns_error_information()); 

如果事情是錯的查詢,然後這會中止腳本並輸出產生的任何錯誤信息。

同樣,它看起來並不像你在任何地方轉義你的查詢數據。這讓您對SQL注入敞開大門。而且,任何包含單引號的表單數據(')都會通過引入語法錯誤來「打破」查詢。如果你在那裏有適當的錯誤檢查,你會得到一個語法錯誤報告。

對於這個問題,你在哪裏提取提交的數據並建立你粘貼到查詢中的所有變量?在你的三個腳本中只有一個地方參考$_POST,它似乎是在一個錯誤輸出函數中,它只是將每個鍵/值作爲隱藏的表單字段轉儲出來(並且在那裏你也不會轉義/引用數據,所以你的表單本身很容易受到XSS攻擊)。

+0

你好我非常抱歉,它不發送表單數據信息..我不知道什麼問題 – paul 2010-09-13 23:59:28

+0

使用類似firebug和/或httpfox的東西,看看有什麼來回瀏覽器和服務器之間。如果您的表單工作不正常,那麼您會看到對傳輸數據的影響。除此之外,開始調試你的腳本。輸出每個步驟的狀態信息,使用print_r/var_dump轉儲變量內容,並追蹤問題所在。沒有任何錯誤信息,我們無法真正幫助你。 – 2010-09-14 13:38:08