cookie猜數字遊戲(上)---------------思路分析(踩坑)

  • 說明:用戶第一次請求頁面的時候,同時會產生一個隨機數,用戶點提交表單的時候,會將輸入的數字與第一次請求產生的數字進行一個對比。
  • 問題一:如何保存用戶每次提交的數據

 我們常見的在服務器中保存數據的方式是通過file_put_content()函數,將用戶輸入的數據保存在服務端的一個.txt文件中,那麼問  題來了===========如果同一時刻有另外一個用戶也在提交表單,那麼.txt文件中的數據就可能被另外一個用戶修改。

這裏我們用cookie將不同用戶提交的數據保存到不同的cookie中

  • 問題二:不是每次提交表單都要產生隨機數,瀏覽器如何辨別用戶提交頁面的時候是不是遊戲開始

   解決方案一:我們可以通過識別用戶提交的方式是GET方式還是POST方式(如from表單裏method="get"就會有問題,這個時候每次提交的都是get請求

 

解決方案二:我們可以通過提交次數來辨別,如果是第一次提交就產生隨機數,如果是第二次提交就不產生隨機數

問題三我們如何做到猜10次

方法1:另外存一個cookie['count']用來記錄,每猜一次就讓他的值+1



$count = empty($_COOKIE['count']) ? 0:(int)$_COOKIE['count'];
//如果是第一次猜count=0,如果不是第一次猜count就爲當前的值
    if($count<10)
   {
    ........

	setcookie('count',$count+1);//執行完一次就將$count加1
   }else{
       echo "遊戲結束,挑戰失敗";
       setcookie('num');
       setcookie('count');
   }

 

方法2:將每次猜的數保存在COOKIE中,然後判斷這個數組的長度

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章