因为你的验证码是在已经输出了<=$_SESSION['vcode']>之后才去读取的,当读取时,生成的是新的验证码,但是你在输出session到隐藏的input里面时,还没有被浏览器加载,所以验证码上的数字和隐藏的不同!
输出session是在服务器端
而加载却是在HTML代码被发送到浏览器端之后
他们是不同步的
验证码不能直接放在HTML里发送给客户端的,这样的话要不要验证码没有什么意义!验证码是为了防止不法登录(暴力破解)而设置的,如果你把验证码放在HTML代码里,那么对于暴力破解就失去意义了
用循环,这是两种情况,两个例子,你可以仿照着改
for (int i = 0; i < gridView1RowsCount; i++)
{
string strC = ((TextBox)gridView1Rows[i]Cells[4]FindControl("txtCount"))Text;
pid = ((HiddenField)gridView1Rows[i]FindControl("hiddenFiled1"))Value;
}
例如:在做一个超链接传值时其中一个参数的值正好是本html页面中一个隐藏域的值 <asp:HiddenField ID="hidTest" Value="123456" runat="server"/><input type="hidden" id="txtTest"value="测试数据" runat="server"/><div><iframe src="demoaspxdemo=隐藏域的值"></iframe></div>当然这种方式可以通过给iframe添加一runat="server"然后在后台进行赋值等,这里不再赘述。下面接着说本文的简单 *** 作如果被获取值的控件是服务器端控件则只需要写成<iframe src="demoaspxdemo='<%=hidTestValue %>'"></iframe>如果被获取值的控件是客户端控件时要在控件后边添加runat="server"<iframe src="demoaspxdemo='<%=txtValue %>'"></iframe>这样在链接到的demoaspx页面就会获取到本页面中隐藏域的值了。 另外在实现该功能查找资料时又顺便了解了一下javascript:void(0)的功能void是javascript的一个 *** 作符,该 *** 作符指定要计算一个表达式但是不返回值,比如在一个提交按钮的onclick事件上直接写上javascript:void(documentformsubmit())就可以直接提交本页面了平时本人用的多的就是<a href="javascript:void(0)"></a>标签当然这里还可以调用js定义的函数如在js中已经定义一function test(){alert("aaa")};就可以在一onclick事件中写成这样onclick="javascript:test()"。
以上就是关于php 获取验证码session值问题全部的内容,包括:php 获取验证码session值问题、gridview 如何获得模板列的值、如何通过 javascript 提取控件内的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)