日期:2014-05-17  浏览次数:20408 次

关于asp.net上线之后出现的奇葩问题。求救啊!!
  小弟入门不久,自学做了个小报名系统。买了主机91的空间然后挂了出去。服务器端是ms sql2012和  .net 4.0刚才收到用户反馈,说自己已经提交的报名信息中 电话号码不是自己的,而且当时输入的时候肯定没问题。我就在数据库查 结果发现79条记录中有35条(随机分布的35条。。。)的电话是同一个电话号码。而查询电话号码有没有查到那个人的注册信息。  于是我就纠结了,不知道到底是哪里出问题了。,。求各位大大解惑!!

------解决方案--------------------
应该是你的会话状态有问题吧,这种只能看自己的逻辑代码了,要么就是被攻击了?
------解决方案--------------------
你的电话字段使用了静态变量?并发的话导致存储的都是同一个值。
------解决方案--------------------
学生写出这样的代码不错了
------解决方案--------------------
应该是并发导致的问题,按理说不应该有这个问题,你把电话号码改成私有变量
------解决方案--------------------
呵呵,新手,可以理解

你检查,那个电话号码,用户输入提交之前,是保存在哪个地方了? 保存这个电话号码时,你再想一下,别的网民会不会也能读取到这个号码,也就是网民A输入的号码,会不会被网民B读取到,或者会不会在下一秒被网民C给修改了这个号码呢?

一般这种异常是因为使用了全局变量引起的
------解决方案--------------------
好萌的界面设计
------解决方案--------------------
我觉得应该还是楼上提到的STATIC静态变量的问题。
------解决方案--------------------
贴代码啊 贴代码
------解决方案--------------------
  你先在本地调试一下呗!  看看到底哪里出了问题...  
     你是注册页面,应该不可能出现静态问题!
------解决方案--------------------
顶一下把。。
------解决方案--------------------
上线之前测试过吗,程序问题吧
------解决方案--------------------
引用:
Quote: 引用:

应该是并发导致的问题,按理说不应该有这个问题,你把电话号码改成私有变量


我保存在数据库的时候直接用TextBox.Text赋值到数据库的。。。  没有用三层架构,直接数据库操作的代码就对应页面的后台里。。。  会不会是这个原因?


那你取出textbox里的值的语句是怎么写的?