准确地讲,应该是 PHP 命令 客户端的 浏览器 写Cookie

解决方案 »

  1.   

    用非浏览器运行cookie.php文件将cookie写入 -------------------------------你想把cookie写到哪里?
    cookie是保存在客户端的。
      

  2.   

    谢谢,那这么说想实现这个功能有没有其它办法?
    当然是写在客户端了,cookie还能写在别的地方?
      

  3.   

    file('http://192.168.10.114/cookie.php');
    这样其实就已经得到了cookie.php被解释后的内容,
    这个时候cookie已经被正确发送给客户端了,只是你取不到罢了。
    要想取到这个值用fsockopen处理原始数据,模拟HTTP客户端即可。
      

  4.   

    ice_berg16说的没错,用fsockopen我确实的到了cookie内容.程序是这样的:<?
      $fp=fsockopen("192.168.10.114",80);
      fputs ($fp,"GET /cookie.php HTTP/1.0\r\n\r\n"); 
      while(!feof($fp)) { 
         echo fgets ($fp,128); 
      }
      fclose ($fp); 
    ?>结果是:
    HTTP/1.1 200 OK Server: Microsoft-IIS/5.1 Date: Mon, 06 Feb 2006 06:59:10 GMT X-Powered-By: PHP/5.1.1 Set-Cookie: aaa=1231ad; expires=Mon, 06-Feb-2006 07:59:10 GMT; path=/; domain=192.168.10.114 Content-type: text/html ok其中:Set-Cookie: aaa=1231ad这个就是我要写的cookie可是我怎么才能模仿ie把他写到客户端的机器中供同域中的其他程序使用呢!
      

  5.   

    PHP运行在服务器端,你模仿什么IE?写入cookie就是setcookie(),cookie是有域名的,不可能能在不同域之间写来写去
      

  6.   

    其中:Set-Cookie: aaa=1231ad这个就是我要写的cookie可是我怎么才能模仿ie把他写到客户端的机器中供同域中的其他程序使用呢!将cookie的值读出,(字符串切分+正则操作),
    然后再setcookie( $name, $value );
    即为从别的域读取的cookie以你的域的形式发送给客户端
      

  7.   

    其实写Cookie的是客户端浏览器..
      

  8.   

    你需要先启动session.
    <?
    session_start();//
    setcookie("aaa","1231ad",time()+60*60);
    echo "ok";
    ?>ok.
      

  9.   

    cookie是在http头部被发送到浏览器。浏览器将之写入本地。
    用fsockopen模拟通信过程是完全可行的。通信过程中发送头部。正确的头部字符串必须由你自己构造。
    构造出这个就可以了。
    HTTP/1.1 200 OK 
    Server: Microsoft-IIS/5.1 
    Date: Mon, 06 Feb 2006 06:59:10 GMT 
    X-Powered-By: PHP/5.1.1 
    Set-Cookie: aaa=1231ad; expires=Mon, 06-Feb-2006 07:59:10 GMT; path=/; domain=192.168.10.114 
    Content-type: text/html ok