跳转问题
一个注册邮件验证的程序,就是用户注册了会发封邮件到用户邮箱,然后用户点击下邮箱中的邮件,key有效则注册成功,写入注册信息,无效则跳转错误页面
在本机localhost测试没问题,到服务器上就出了问题,服务器和本机服务端版本是一样
用户点击邮件验证会跳转到如下页面
链接样式:http://www.haha.net/zhuce.php?key=21_nci34dgjs5guzopl4gi0s62puk9r0o
<?phprequire('shujulianjie.php'); //接入数据库文件date_default_timezone_set('Asia/Shanghai'); //此句用于消除时间差$iipp = $_SERVER["REMOTE_ADDR"]; //获取ip$times = date("Y-m-d H:i:s"); //取得?前??//验证key有效性和找出注册信息 $key=$_GET["key"]; $key=addslashes(trim($key)); echo $key; date_default_timezone_set('Asia/Shanghai');//此句用于消除时间差 $time=time();//当前时间戳 $time=$time-86400;//获取一天之前的时间戳 //找出是否存在或失效 $str10="select mail from zhuceyanzheng where yanzhengzi='$key' and zhuangtai='0' and shijiancuo>'$time' " ; $result10=mysql_query($str10, $con); //送出查? $row10=mysql_num_rows($result10); echo $row10; if(!$row10) {//未找到跳转到失败页面 echo'<script language="javascript" type="text/javascript">'; echo 'window.location.href="zhucejieguo.php?zt=0"; '; echo ' </script>'; exit; } else { //有则写入注册信息 echo'<script language="javascript" type="text/javascript">'; echo 'window.location.href="zhucejieguo.php?zt=1"; '; echo ' </script>';}mysql_close($con);?>
现在得到的结果是注册信息写入了,但是跳转到了window.location.href="zhucejieguo.php?zt=0,
不知道是什么原因
回复讨论(解决方案)
我感觉你为啥用时间来查找呢?你看你的SQL放到mysql控制台是否能查到数据,然后一步步打印结果排查问题。我感觉问题还是出在SQL上。
我感觉你为啥用时间来查找呢?你看你的SQL放到mysql控制台是否能查到数据,然后一步步打印结果排查问题。我感觉问题还是出在SQL上。
时间是验证key是否过期了
用了 if (!mysql_query($str10, $con))
{
die('Error: ' . mysql_error());
}
没有报错
echo $row10; 看看这个值输出是多少
echo $row10; 看看这个值输出是多少
这个输出是0,
我也觉得奇怪,因为
$str10="select mail from zhuceyanzheng where yanzhengzi='$key' and zhuangtai='0' and shijiancuo>'$time' " ;
这个语句是有符合条件的
而且输出为0,注册信息还写入了,这就是我不理解的地方,输出为0,应该不会写入注册信息才对
echo $row10; 看看这个值输出是多少
这个输出是0,
我也觉得奇怪,因为
$str10="select mail from zhuceyanzheng where yanzhengzi='$key' and zhuangtai='0' and shijiancuo>'$time' " ;
这个语句是有符合条件的
而且输出为0,注册信息还写入了,这就是我不理解的地方,输出为0,应该不会写入注册信息才对
0就说明你那个查询没查到数据啊。
这个语句在本机可以查到数据,不知道为什么到服务器上就不行,本机和服务器,数据库,脚本都是一样的
还有,结果是0,但下面的写入注册信息里面的语句确执行了
if(!$row10) {//未找到跳转到失败页面 echo'<script language="javascript" type="text/javascript">'; echo 'window.location.href="zhucejieguo.php?zt=0"; '; echo ' </script>'; exit; } else { //($row10=0,下面的语句会执行) $str3 = "update zhuceyanzheng set zhuangtai='1' where mail='$youxiang' "; $result3=mysql_query($str3,$con); }
怎么可能? var_dump($row10); 看看是什么。
怎么可能? var_dump($row10); 看看是什么。
因为是在邮箱中点击一个链接在到这个页面,这个样子的链接
链接样式:http://www.haha.net/zhuce.php?key=21_nci34dgjs5guzopl4gi0s62puk9r0o
刚刚试了,使用新标签中打开链接,就是正常的,难道是因为这种跳转链接不能在QQ邮箱中直接打开吗
那就单独执行一下你的SQL语句,看看结果吧
那就单独执行一下你的SQL语句,看看结果吧
单独执行了,有用,可以找到数据
、、、、、、、、、、、
刚刚又试了几次,现在的情况是,有时候成功,有时候失败。。。。。。实在是诡异
where yanzhengzi='$key' and zhuangtai='0' and shijiancuo>'$time' "
明????有匹配,?出完整的sql看看。
估??$time有?。
看看你的sql语句,打印sql
看看你的sql语句,打印sql
打印了,有时候会成功,有时候会失败,1是成功的,0是失败的,打印的语句如下
同样的脚本,有时候成功,有时候失败,实在很难找原因,
我的注册流程,是在邮箱中点击链接,和一般的网站一样,我现在是用QQ邮箱测试,有时候成功,有时候失败,
但是如果在新标签和新窗口打开链接,却都是成功的
而且,即使失败了,也会写入注册信息,这个明显不合理,并且,写入的IP是上海地区的ip,本人在重庆
就是说,成功写入注册信息,ip是我自己的,失败写入注册信息,ip在上海,而且是动态ip
是不是在QQ邮箱跳转的时候有什么变化
注册过程在本地localhost测试,是一点问题没有。。。。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

如何实现PHP表单提交后的页面跳转【简介】在Web开发中,表单的提交是一项常见的功能需求。当用户填写完表单并点击提交按钮后,通常需要将表单数据发送至服务器进行处理,并在处理完后将用户重定向至另一个页面。本文将介绍如何使用PHP来实现表单提交后的页面跳转。【步骤一:HTML表单】首先,我们需要在HTML页面中编写一个包含表单的页面,以便用户填写需要提交的数据。

php登录跳转传值的方法:1、POST传值,使用html的“form”表单跳转的方法来进行post传值;2、GET传值,用<a>标签跳转进入xxx.php后,通过“$_GET['id']”获取传递的值;3、SESSION传值,一旦保存到SESSION中,其他页面都可以通过SESSION获取。

标题:3秒跳转页面实现方法:PHP编程指南在网页开发中,页面跳转是常见的操作,一般情况下我们使用HTML中的meta标签或者JavaScript的方法进行页面跳转。不过,在某些特定的情况下,我们需要在服务器端进行页面跳转。本文将介绍如何使用PHP编程实现一个在3秒内自动跳转到指定页面的功能,同时会给出具体的代码示例。PHP实现页面跳转的基本原理PHP是一种在

在编写网站或应用程序时,经常会遇到需要跳转到指定页面的需求。在PHP中,我们可以通过几种方法来实现页面跳转。下面我将为您演示三种常用的跳转方法,包括使用header()函数、使用JavaScript代码和使用meta标签。使用header()函数header()函数是PHP中用来发送原始的HTTP头部信息的函数,在实现页面跳转时可以结合使用该函数。下面是一个

跳转语句有:1、break语句,用于退出循环或者退出一个switch语句,让程序继续执行循环之后的代码,语法“break;”;2、continue语句用于退出本次循环,并开始下一次循环,语法“continue;”;3、与标签结合跳转到指定的标签语句,语法“标签 + :”;4、goto语句,用于无条件地转移到程序中指定的行,语法“goto 标签;... ...标签: 表达式;”。

标题:PHP编程技巧:如何实现3秒内跳转网页在Web开发中,经常会遇到需要在一定时间内自动跳转到另一个页面的情况。本文将介绍如何使用PHP实现在3秒内实现页面跳转的编程技巧,并提供具体的代码示例。首先,实现页面跳转的基本原理是通过HTTP的响应头中的Location字段来实现。通过设置该字段可以让浏览器自动跳转到指定的页面。下面是一个简单的例子,演示如何在P

关闭跳转购物app的方法:1、关闭应用内的跳转功能;2、更改浏览器设置;3、卸载更新或重新安装app。详细介绍:1、关闭应用内的跳转功能,打开购物app,在首页或搜索结果页中点击想要购买的商品,进入商品详情页后,不要直接点击“立即购买”或类似按钮,而是先点击页面右上角的“更多”或“设置”图标,在弹出的菜单中,找到“关闭跳转”或类似的选项,并点击它,确认关闭跳转功能等等。

在Web开发中,经常会遇到需要隐藏页面地址或者重定向页面的需求。由于浏览器地址栏的地址是可以随时被用户查看和修改的,所以要想实现真正的隐藏或者重定向页面地址,需要用到一些服务器端技术。其中,PHP是一种常用的服务器端脚本语言,可以用来实现隐藏地址跳转。
