一个a页面在对方服务器上,对方运行下面的url时,
a.php?act=post可以通过请求得到 id=12   name=张  age=15(这些值需要我来传)我这边有b.php页面,我运行b页面时,需给上面的a.php页面传值,
需把 id name  age 用post方法传给对方(a页面我不能动,我只操作b.php页面),
另b.php页面需能得到对方有没有取值成功,取成功了返回 '成功',没成功返回'没成功'这功能如何实现呀,thanks

解决方案 »

  1.   

    你的问题很奇怪,这样的问题可以用webservice。
    在b.php页面里写一个表单,里面有id,name,age三个隐藏域,然后表单地址直接提交给a.php页面,在a.php里面就可以获取b.php页面隐藏域里面的值过去。不过你的问题怎么说也说不过去呀。
    这是一个业务逻辑,你可以把这个业务逻辑封装成一个方法,方法返回你需要的值就行了呀?何必弄的这么麻烦呢?
      

  2.   

    b页面中,还在手动提交表单吗,
    能自动提交吗,因为我也是运行b.php页面的,
      

  3.   

    我的理解是你需要的是一个php的http客户端
    你可以看看http://scripts.incutio.com/httpclient/
      

  4.   

    不是手动提交,可以用javascript脚本,在页面登陆的时候,先获取ID,NAME,AGE的值,然后在window.onload事件里面用document.getElementById('表单ID').submit();这样就不用手动提交!
      

  5.   

    用curl吧post数据后,获取返回页内容,然后用正则匹配你要的信息。还有不明白的,你可以开新贴再问。20分太少,至少得60分啊,要不没个积极性的。
      

  6.   

     <form action="域名+a.php?act=post" method="post">
    <input type="text"  name="id" value="id_value" />
        <input type="text"  name="name" value="name_value" />
        <input type="text"  name="age" value="age_value" />
        <input type="submit" value="提交" />
    </form> 
      

  7.   

    用表单直接提交,基本都会被咔嚓掉,最简单的一个提交页的来源页的判断就可以把你挡在外面了。所以还是用curl 可以模拟浏览器 伪造来源 抓取cookie 模拟提交,好处多多,百试不爽。
      

  8.   

    如果想要有比较好的交互响应,还是用ajax吧,跨域的问题也是有很多解决方案的
      

  9.   

    php发送http post 请求,不能跨域吗?
    (为何我在本站内文件都可实现,用别的域名下的文件就不可)
      

  10.   

    不能跨域是浏览器策略,js是不能,怀疑你http发送的请求缺少对方必须的http请求头,比如User-agent,referer等。
      

  11.   

    是定时文件不能用js和跳转
    extract($_POST) ;  
    //set POST variables  
    $url = "/esf/add_update.php " ;  
    //echo $one_house["houseId"];
    //$url="http://0791.8ff.cn/test/add_update.php";
    $fields = array(  'houseId'=>urlencode($one_house["houseId"]) ,  
    'houseNum'=>urlencode($one_house["houseNum"]) ,  
    'title'=>urlencode($one_house['houseName']) ,  
    'addr'=>urlencode($one_house["addr"]) ,
    'district'=>urlencode($one_house["district"]) ,  
    'units'=>urlencode($one_house["units"]) ,  
    'floor'=>urlencode($one_house["floor"]) ,  
    'area'=>urlencode($one_house["area"]) ,  
    'fitment'=>urlencode($one_house["fitment"]) ,  
    'salePrice'=>urlencode($one_house["salePrice"]) ,  
    'singlePrice'=>urlencode($one_house["singlePrice"]) ,  
    'face'=>urlencode($one_house["face"]) ,  
    'houseType'=>urlencode($one_house["houseType"]) ,  
    'buildYear'=>urlencode($one_house["buildYear"]) ,  
    'saleState'=>urlencode($one_house['saleState']) ,  
    'addTime'=>urlencode($one_house['addTime']) ,  
    'isShow'=>urlencode($one_house['isAdd']) ,  
    'updateTime'=>urlencode($one_house["updateTime"]) ,  
    'estateName'=>urlencode($one_house["name"]) ,  
    'estateUrl'=>urlencode($one_house['estateUrl']) ,  
    'trueName'=>urlencode($one_house["trueName"]) ,  
    'company'=>urlencode($arr_company_jc[$one_house["company"]]) ,  
    'jobVali'=>urlencode($one_house["jobVali"]) ,  
    'companyVali'=>urlencode($one_house["companyVali"]) ,   
    'postCardVali'=>urlencode($one_house["postcardVali"]) ,  
    'cardVali'=>urlencode($one_house["cardVali"]) ,  
    'userTel'=>urlencode($one_house['userTel']) ,  
    'res'=>urlencode($one_house["res"])  //'houseId'=>urlencode($one_house["houseId"])
    );  
    //url-ify the data for the POST  
    foreach($fields as $key=>$value)
    {
    $fields_string .= $key.'='.$value.'&' ;  
    }  
    rtrim($fields_string ,'&') ;  
    //open connection  
    $ch = curl_init() ;  
    //set the url, number of POST vars, POST data  
    curl_setopt($ch, CURLOPT_URL,$url) ;  
    curl_setopt($ch, CURLOPT_POST,count($fields)) ;  
    curl_setopt($ch, CURLOPT_POSTFIELDS,$fields_string) ;  
    //execute post  
    $result = curl_exec($ch) ;  
    //close connection  
    curl_close($ch) ;