最近在做一个项目,需要在子页面用iframe嵌入其它网址(也是我们公司的系统,用户名密码都知道)的页面,但是那个网址需要登录,我的意思是在嵌入页面的同时用PHP代码模拟POST去登录页面(POST数据已经通过抓包得到),登录后保持登录状态,这样就可以跳开手工登录的操作而直接嵌入登录后的页面,请教一下各位高手需要怎么做,谢谢啦!我在网上看用CURL方法,但是试验后登录不成功,我还是新手,能力有限,所以请教各位高手一下,最好有例子代码,感谢!简而言之: A页面用iframe嵌入B页面,B页面需要用户登录才能显示,现在想用PHP代码模拟POST登录,跳过B页面的手工登录,在A页面嵌入的B页面直接是登录后的状态,登录状态需要保持。Thanks!!

解决方案 »

  1.   

    保持登入关键在于cookie。CURLOPT_COOKIE,在当面的会话中设置一个cookie
    CURLOPT_COOKIEJAR,当会话结束的时候保存一个Cookie
    CURLOPT_COOKIEFILE,Cookie的文件。
      

  2.   

    没验证码的话,先框架一个自动登录页就好了。直接用form,js自动提交表单
      

  3.   

    iframe嵌入B页面,那么这个页面就不受a网站任何控制了,你怎么模拟登录都是没用的,因为B页面读取的是b的cookie,而a只能把cookie写到a自己,你后台php些什么都无法对嵌入的iframe有影响。
      

  4.   

    因为安全问题,不能跨域Post,所以应该是没办法
      

  5.   

    简单一点的,用snoopy的类就可以了。snoopy类提供post和get两种方式登录。
    如果自己搞,可以用curl一般通讯函数。
    总之是向网站的验证页面发送数据包,然后接收网站发送来的数据包,进行分析提取session,以后就一直用这个session访问网站。