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中,然后判断这个数组的长度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值