提交到b.php验证后,转到a.php不可以吗?

解决方案 »

  1.   

    支持楼上的,建议楼主首先考虑比较简单的方式,如果不行,楼主可以可以考虑socket连接,具体的post过程,楼主自己可以参看RFC啊
      

  2.   

    不行,b.php是人家已经写好的了,只是给我个接口
    楼上的说用SOCKET,能不能给个具体点的意见,RFC是什么?
      

  3.   

    a.php提交信息到b.php进行验证,然后返回到a.php,同时返回验证结果。 
    这主要看别人给你的是什么样接口。b.php应该返回这样的返回值:
    .....xxxxx/a.php?validate1='验证结果1'&validate2='验证结果2'
      

  4.   

    税收业务接口说明如下:
    业务接口调用时一定要使用POST方式,而不要使用GET方式。
    业务接口所使用的表单变量名和表单变量值区分大小写。
    业务接口返回采用多行文本返回,每行之间用换行符’\n’分隔,同行用冒号’:’隔开。
    业务接口为了安全进行了IP认证,要求代理必须从设置的固定IP地址对接口进行访问,否则无法使用
    返回的文本样历说明如下:
    成功:
    Status:Success(表示调用接口成功)
    Key(返回结果名称):……(返回结果内容)
    失败:
    Status:Failure(表示调用接口失败)
    Errno:n(错误号)
    Errmsg:……(错误信息)
    调用b.php(税收业务接口)后,必须回到a.php将返回的结果进行翻译,否则没用,
    b.php也不会有楼上的返回值各位,有办法吗?
      

  5.   

    业务接口所使用的表单变量名和表单变量值区分大小写。
    ------------------------------------------------
    把表单变量进行相应的设置使用POST方法提交到b.php有什么问题?
      

  6.   

    以前用socket发post请求的贴子有好几个,我自己就发过两遍,搜索一下吧
      

  7.   

    function httpPost($sURL,$aPostVars,$nMaxReturn=0){
    //set_time_limit(100);
    $url = parse_url($sURL); if (!$url) return "";
    if (!isset($url['port']))  $url['port'] = 80;
    if (!isset($url['query'])) $url['query'] = ""; $fp = fsockopen($url['host'], 80); if (!$fp){
    return "";
    fclose($fp);
    exit;
    } $postctt="";
    if(is_array($aPostVars)){
    foreach($aPostVars as $k=>$v){
    if($postctt!="") $postctt.="&";
    $postctt.=($k."=".urlencode($v));
    }
    }
    $request  = "POST ".$url['path']."?".$url['query']." HTTP/1.1\r\n";
    $request .= "Host: ".$url['host']."\r\n";
    $request .= "Content-Type: application/x-www-form-urlencoded\r\n";
    $request .= "User-Agent: roastduck Http/1.1\r\n";
    $request .= "Accept-Language: zh-cn\r\n";
    $request .= "Content-length: ".strlen($postctt)."\r\n";
    $request .= "Connection: Keep-Alive\r\n\r\n";

    $request .= $postctt;
    fputs($fp, $request);
    $tmp="";
    $i=0;
    while (!feof ($fp)){
    $tmp.= fgetc($fp); 
       $i++;
       if($i>$nMaxReturn && $nMaxReturn>0) break;

    fclose($fp);
    return $tmp;
    }