当我验证数据不符合时如何跳转到register.php并且把action=login传过去

当我验证数据不符合时如何跳转到register.php并且把action=login传过去

<?php
header('Content-Type:text/html;charset=utf-8');
session_start();
// 接收数据
$name = $_POST['name'];
$number = $_POST['number'];

echo '<pre>';
$data=getUser();
//var_dump($data);
foreach($data as $k=>$v){
   if($v['name']==$name && $v['number']==$number){
       $_SESSION['name']=$name;
       header('Location:index.php');
   }else{
       sendLoginFailedResponse();
   }
}

//使用pdo获取数据库中的用户信息
function getUser(){
   $dsn='mysql:host=localhost;dbname=imooc';
   $pdo=new PDO($dsn,'root','root');
   $pdo->exec('set names utf8');
   // 需要接收传递的信息根据信息进行查询 如:
   $sql='select * from student_management'; //where name = "$name" and number = "$number"';
   $stmt=$pdo->query($sql);
   $data=$stmt->fetchAll(PDO::FETCH_ASSOC);
   return $data;
}

function sendLoginFailedResponse(){
   $response="<script>
       alert('姓名或学号错误');
       location.href='register.php;
  </script>";
   echo $response;
   die;
}

数据不符合时,这个代码跳转不了,而且我不知道在哪里可以把action=login传到register.php里面去

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小尤 2019-09-10 10:17:33

同学你好,跳转方式书写错误,应该是window.location.href。代码如下:

$response="<script>
	alert('姓名或学号错误');  
	window.location.href='register.php?action=login'
</script>";
echo $response;die;

祝学习愉快!

  • 提问者 慕仙0328516 #1
    我这样写了也跳转不了
    2019-09-10 15:20:00
  • 提问者 慕仙0328516 #2
    可以了,谢谢老师
    2019-09-10 15:23:02
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师