You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

输入正确信息后无法跳转至验证页面,该如何解决?

注册成功后无法跳转至验证页面的问题解决

问题根源

后端PHP返回的字符串和前端JS的判断条件不匹配:

  • PHP代码里输出的是"Success."(首字母大写,末尾带句号)
  • JS里判断的是严格等于"success"(全小写,无句号)
    这种不一致导致跳转逻辑永远不会触发,只会把返回的"Success."当作错误信息显示。

修复方案(二选一即可)

方案1:修改PHP代码,让返回内容匹配JS判断

把PHP里的输出语句改成全小写且不带句号:

if($otp){
      $receiver = $email;
      $subject = "From: $name <$name>";
      $body = "Name "." $name \n Email "." $email \n "." $otp";
      $sender = "From: xxxxxxxxxxxx@gmail.com";

      if(mail($receiver,$subject,$body,$sender)){
      echo "success"; // 修正为全小写,去掉末尾句号
      }
}

方案2:修改JS代码,兼容后端返回的格式

对后端返回的内容做预处理,去除空格并转小写后再判断:

submitbtn.onclick = () =>{
    let xhr = new XMLHttpRequest();
    xhr.open("POST","./signup.php" ,true);
    xhr.onload = () => {
        if(xhr.readyState === XMLHttpRequest.DONE){
            if(xhr.status == 200){
                let rawData = xhr.response;
                let processedData = rawData.trim().toLowerCase();
                if(processedData === "success"){
                    location.href = "./verify.php"
                }
                else{
                    errortxt.textContent = rawData;
                    errortxt.style.display = "block";
                }
            }
        }
    }
    let formData = new FormData(form);
    xhr.send(formData);
}

额外提示

登录和验证页面的同类问题,基本也是相同原因——检查后端返回的字符串和前端判断条件是否完全一致(包括大小写、标点、空格),调整两边使其匹配即可。

跳转失败后的网站状态

内容的提问来源于stack exchange,提问作者emptyfinest1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 18:38:28