Re: [請益] 撰寫小遊戲的問題

看板PHP作者 (歡迎光臨Wiiholic.com)時間17年前 (2008/06/04 00:16), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
這種遊戲首先需要有一個陣列來儲存過程紀錄,但是PHP只要換頁變數就會都洗掉,因此必 須先用到Session或Cookie來儲存內容。 因此先建立一個空陣列在Session中,如 $_SESSION['click'] = array(); (當然要先宣 告session_start();) 然後寫出HTML的顯示介面,可以用<button>來寫出九個按鈕,用表格或CSS排版成3*3的樣 子,每個按鈕用javascript的 document.location 去指定到同網頁後面加上 ?id=1 這邊其實都可以,你要用連結也行,要用GET變數還是POST變數傳遞都OK,用GET只是方便 而已 之後每一個取得的 $_GET['id'] 先檢查是否在1~9之間,如果是的話就把 $_SESSION['click'][$_GET['id']-1] = ... 這邊要決定是 O 還是 X ,我的方法是用 count($_SESSION['click']) % 2 的方式取餘 數,餘數為0就是O,相反就是X,然後就可以將結果存進陣列之中。 接著就是辨別勝負條件,井字遊戲的規則就是123、456、789、159、357、147、258、369 這幾種組合中,三個數值皆相同就是勝利,看你要用迴圈來寫還是Recursive的方式都可 以,自己嘗試吧! 如果會Ajax的話,上面很多步驟其實改成用Ajax傳遞數據回傳搭配JavaScript可能會比較 完善一點,不過我想你要的應該是純用PHP的吧! 詳細的過程我就不說了,看起來這是作業,作業還是自己做學的比較快,多失敗幾次才會 真正學好一個程式語言,加油吧。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.170.218
文章代碼(AID): #18HMvhuh (PHP)
文章代碼(AID): #18HMvhuh (PHP)