php一个main.php 这里面会对用户名 密码进行验证。验证 页面通过passport.php 接口的返回值来确定 ,如何发送 这个请求,还有如何接收 返回来的值。 passport 的返回值 通过echo 呈现。

解决方案 »

  1.   

    发送用form的POST方法,passport.php中接收用$_POST["name"],$_POST["pwd"],然后进行处理
      

  2.   

    我的意思是 我怎么在我的main.php 引用一个 url 也就是www.xx00.com/passport.php 返回的echo值。
    如何接收这个值。
      

  3.   

    恩,这样我一帮会用jquery的ajax调用那个passport.php,然后在ajax调用回调的函数里检查返回值。
      

  4.   

    按楼主的意思,就是7楼的,用ajax
      

  5.   

    最近刚写了一个用户注册和验证的全套js验证.其中包括了ajax验证用户名及图形验证码.
    一般lz的问题是用ajax来做的.其中jquery提供了非常简单的函数.get()方法.然后用json封装数据
    具体代码为:    $.get("./checkpage/"+var, function(data){
        //var为要验证的参数,我这里用的ci框架,一般传值方法可以用get方法,如./checkpage?var=var
            if (data.errors != 0)
            {
                $("#login_errors").text(data.errors);//html页面中id为login_errors的错误提示框中显示错误信息
                $('#login_account').focus();//账户输入框获得焦点
            }
            else
            {
                $("#login_errors").attr('state',1);
            }
        }, 'json');   php那边用echo json_encode($data)输出数据,具体如:
    checkpage页面或函数里面$var=$_GET['var'];//或者直接用函数参数的形式使用
    $check=check();//这里的函数返回false或true
    if(!$check)
    {
        $data['errors']='用户名错误';  
    }
    else
        $data['errors']=0;
    echo json_encode($data);这时你可以看到上面的js代码.其中的data就等于php里面返回的$data.
    当然,要使用jquery是需要先加载jquery模块的.这个可以到网上下载.就不罗嗦了
      

  6.   

    不能使用 js 或者 ajax ,只能用php 如何获取验证后返回的数据
      

  7.   

    A超链接到B,B处理完超链接到A
    其中的数据传输可以是url也可是其他形式如session等
      

  8.   

    main.php 访问 passport.php用的是url 跟上参数的形式。passport.php在main.php里面直接调用,试问如何接收返回值。
      

  9.   

    不过帐号认证一般都用POST方式的,如果用URL不安全,就算一定要用URL,也需要加密之后再使用。
      

  10.   

    楼主最好用session存起来,然后
    <?php
    header('location.href:返回页.php');
    ?>另一个页面直接用session获取就行了
      

  11.   

    如果main和passport在同一个域(同域名并且同服务器),理应用session控制
    不同域的话,双方应有数据交换接口,或共用接口,例如数据库保存session
      

  12.   

    在passport.php中$url = "main.php?msg="+msg;
    Header("Location:$url");在main.php中if(isset($_GET['msg'])){
    //这个处理结果
    }else{
    //这个做先前的跳转操作
    }
      

  13.   

    我希望看到的是用这个 curl_init 来处理的。有没有解决方案。
      

  14.   

    附上我的main 代码和passport 代码
    main。php
    @include("../passport.php");
    passport。php
    <?php
    /*
     * 验证接口
     */
       $key =  "dslfd0LL7ffsdfhhe";
       $times = time();
      $sign = md5($username.'1'.$times.$key);
    $url = "http://dev.xxoo.com/api/index/login/username/$username/password/$password/gameid/1/time/$times/sign/$sign";
    $curl = curl_init($url);
    $keyEnquiryOpt=array(CURLOPT_HEADER => false, CURLOPT_RETURNTRANSFER => true);
    curl_setopt_array($curl, $keyEnquiryOpt);
    $response = @curl_exec($curl);
    curl_close($curl);
    if ($response == "100")
    {
    $passsucc =  true;
    } else 
    {
    $passsucc =  false;
    }
    ?>
      

  15.   

    //根据这链接可以看出
    $url = "http://dev.xxoo.com/api/index/login/username/$username/password/$password/gameid/1/time/$times/sign/$sign";if(isset($_POST['submit']=='提交后')){
    $username=$_POST['username'];//接收表单用户名
    $password=$_POST['password'];//接收表密码
    @include("../passport.php");
    if($passsucc==true){
      echo "成功";
    }
    }
      

  16.   

    jquery,ajxa异步,post或get请求获取data
      

  17.   

    没看清楚,我主要想问的是   $curl = curl_init($url);
        $keyEnquiryOpt=array(CURLOPT_HEADER => false, CURLOPT_RETURNTRANSFER => true);
        curl_setopt_array($curl, $keyEnquiryOpt);
        $response = @curl_exec($curl);
        curl_close($curl);
    是如何运行的,解释下代码。百度 谷歌了下也没发现有用这中方式。还有如果那服务端返回对象的话,$response能接收到这个数据么?
      

  18.   

        $url = "http://dev.xxoo.com/api/index/login/username/$username/password/$password/gameid/1/time/$times/sign/$sign";这个设定要提交的网址    $curl = curl_init($url);
    建立一个curl    $keyEnquiryOpt=array(CURLOPT_HEADER => false, CURLOPT_RETURNTRANSFER => true);
        curl_setopt_array($curl, $keyEnquiryOpt);
    这两个设定curl参数,可选参数很多,数十个,难以一一说明,具体查看手册和网上的一些翻译资料
    大致是模拟浏览器的环境    $response = @curl_exec($curl);
    实施curl,成功的话返回值就是$response
    例如url只是个普通网页,$response就是个html格式的字符串
      

  19.   

    能接受复杂的返回对象么?比如返回了:一个数组,reponse能接收到吗?
      

  20.   

    返回的其实就是对方输出的内容,你假设对方是个php,那么php能够echo什么,你就能得到什么换句话说,你得到的应该是个字符串,而不是其他类型,但字串的内容不限,你可以把它用程序转换
      

  21.   

    明白了。还有没有其他的访问另一个php并得到返回结果的方法呢?除了这个:  $curl = curl_init($url);
        $keyEnquiryOpt=array(CURLOPT_HEADER => false, CURLOPT_RETURNTRANSFER => true);
        curl_setopt_array($curl, $keyEnquiryOpt);
        $response = @curl_exec($curl);
        curl_close($curl);