2011-05-19 59 views
0

我一直在研究一個讓我開啓和關閉情緒的小項目。在重新編寫應用程序之前,我從一開始就一直在使用的問題是,我嘗試增加一個名爲「Score」的會話,但由於某種原因它不會增加。有一次,我設法解決了這個問題,但是在很短的時間內,我沒有找到問題的根源。會話沒有正確遞增

該應用程序只是一個簡單的字轉發器/練習者。我有應用程序拾取的.txt格式的單詞列表,刪除行並給出每個單詞它自己的會話。然後它會選擇一個隨機單詞並將其顯示給用戶。如果這個單詞(數組索引)已經被使用,它將在一個「used」數組中,並且不能再被選擇。

當用戶被提示一個單詞時,他要輸入正確的對應英文(拼音)單詞。提交後,腳本將檢查給定的POST值是否與存儲在該單詞的會話中的答案一致。

現在,有一個會話叫'分數'。此會話不會更改,除非用戶的答案==會話的答案(經測試可正常工作)。但是,當這兩個答案相同時,會議不會增加。我曾嘗試使用++ ;, +1;和+ = 1,其中沒有一個似乎正在工作。另外,如果您想知道,我會將表單提交給外部文件以嘗試減輕看到邏輯的痛苦。

我看不出在那裏我可能會錯過的邏輯和作爲該項目開始是好玩的東西將是任何幫助非常感激,但現在剛剛成爲一個麻煩:

生詞的結構是這樣的:西里爾(RU)|語音(RU)|英語(答案)。

HTML(的index.php):http://pastebin.com/3ePLtzuj

PHP(engine.php):http://pastebin.com/pyXR2U2s

POST-> PHP(wordcheck.php):http://pastebin.com/ZZxgkHkJ

+0

我想你可能有一些邏輯錯誤,因爲'$ _SESSION [「分數」] ++;'確實做工精細 – 2011-05-19 15:09:26

回答

0
  1. wordcheck.php:檢查如果$ answer == $結果是真的:var_dump($answer == $result);
  2. 您的engine.php不包含在您的wordcheck.php中,如果確實如此
  3. 檢查您的會話瓦爾的存在,使用前 - 樣:$wordNum = isset($_SESSION['wordNum']) ? $_SESSION['wordNum'] : 0;