//假设有三个网站,分别是网站web1(验证登录)网站shop以及网站getinfo
//第一步:网站shop里面引入jquery再新建一个login.php文件.
<?php session_start();//开启session header('content-type:text/html;charset=utf8');//设置字符集 if(isset($_SESSION['login'])){//判断登录 echo "登录状态"; echo "<a href='exitlogin.php'>退出</a>"; ?> <script src="jquery-1.7.2.min.js"></script> <script> $.ajax({//实现ajax跨域到网站getinfo中的ui.php url:"http://localhost/xiaoshixun2/rikao/getinfo/ui.php?callback=testlogin", dataType:'jsonp', jsonpCallback:'testlogin', success:function(txt){ } }); </script> <?php } else{ ?> <input type="text" name="username"/> <input type="text" name="pwd"/> <input type="submit" value="登录" οnclick="login()"/> <script src="jquery-1.7.2.min.js"></script> <script> function login(){//实现ajax登录验证 var u=$("input[name=username]").val(); var p=$("input[name=pwd]").val(); $.ajax({ url:"http://localhost/xiaoshixun2/rikao/web1/ucserver.php?username="+u+"&pwd="+p+"&callback=testlogin", dataType:'jsonp', jsonpCallback:'testlogin', success:function(txt){ if(txt.error==0){ location.href="ui.php?u="+txt.data.u+"&login="+txt.data.login; } else{ alert(txt.msg); } } }); } </script> <?php } ?> //新建ui.php<?php session_start(); $_SESSION['login']=true; $rs['error']=0; if(isset($_GET['callback'])){//判断是否callback exit($_GET['callback']."(".json_encode($rs).")"); } else{ header('location:login.php'); } //新建exitlogin.php<?php session_start();//开启session session_destroy();//消除session header('location:login.php');//新建curl.php<?php $ch=curl_init(); curl_setopt($ch,CURLOPT_URL,'http://localhost/xiaoshixun2/rikao/getinfo/ui.php'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_exec($ch); curl_close($ch);//第二步:在web1里新建ucserver.php<?php $n=$_GET['username'];//接收用户名 $p=$_GET['pwd'];//接收密码 //伪代码,此处用户名密码应该和数据库里匹配,此处用户名abc 密码 123是自定义的 if($n=="abc"&& $p=="123"){ $rs['error']=0; $rs['data']=array('u'=>$n,'login'=>true); exit($_GET['callback']."(".json_encode($rs).")"); } else{ $rs['error']=1; $rs['msg']='你的用户或密码不正确'; exit($_GET['callback']."(".json_encode($rs).")"); } ?>//第三步:操作getinfo网站
//新建login.php<?php session_start(); //print_r($_SESSION); header('content-type:text/html;charset=utf8'); if(isset($_SESSION['login_getinfo'])){ echo "登录状态"; echo "<a href='exitlogin.php'>退出</a>"; ?> <script src="jquery-1.7.2.min.js"></script> <script> $.ajax({ url:"http://localhost/xiaoshixun2/rikao/shop/ui.php?callback=testlogin", dataType:'jsonp', jsonpCallback:'testlogin', success:function(txt){ } }); </script> <?php } else{ ?> <input type="text" name="username"/> <input type="text" name="pwd"/> <input type="submit" value="登录" οnclick="login()"/> <script src="jquery-1.7.2.min.js"></script> <script> function login(){ var u=$("input[name=username]").val(); var p=$("input[name=pwd]").val(); $.ajax({ url:"http://localhost/xiaoshixun2/rikao/web1/ucserver.php?username="+u+"&pwd="+p+"&callback=testlogin", dataType:'jsonp', jsonpCallback:'testlogin', success:function(txt){ if(txt.error==0){ location.href="ui.php?u="+txt.data.u+"&login="+txt.data.login; } else{ alert(txt.msg); } } }); } </script> <?php } ?>//新建ui.php<?php session_start(); $_SESSION['login_getinfo']=true; $rs['error']=0; if(isset($_GET['callback'])){ exit($_GET['callback']."(".json_encode($rs).")"); }else{ header('location:login.php'); }//新建exitlogin.php<?php session_start(); session_destroy(); header('location:login.php');//新建curl.php<?php $ch=curl_init(); curl_setopt($ch,CURLOPT_URL,'http://localhost/xiaoshixun2/rikao/shop/ui.php'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_exec($ch); curl_close($ch);