cookie还有3项你没有用,估计你应该用到后面2项!路进和域你的BBS不会和网站放到同一个目录下吧?

解决方案 »

  1.   

    不是,网站在根目录,然后论坛放在了bbs这个目录下面
    请楼上的几位说清楚一些好吗?
    我刚学php没有多长时间,今天看了一天discuz的代码,头都晕了,实在是没有思路了,才到这里来问的,请各位放几句代码好吧?
      

  2.   

    你看下PHP手册中setcookie()函数的用法,他一共有7个参数!setcookie('cookieName', 'cookieValue', expire, '/', 'www.yourWeb.com')
    看看,
    比如你在你的网站登陆用户, cookie就要在你的网站根目录下设置,
    那个'/'表示在'/'目录下的所有子目录该cookie都有效!还有就是cookie之前不要有任何输出,php4之后可以用缓存解决输出先后的问题!
      

  3.   

    COPY
    DZ的登录的FORM
    有几个HIDDEN的数据的
      

  4.   

    晕了,弄了半天还是不行
    function dsetcookie($var, $value, $life = 0, $prefix = 1) {
    //global $tablepre, $cookiedomain, $cookiepath, $timestamp, $_SERVER;
    $tablepre = 'cdb_';
    $cookiedomain = ''; 
    $cookiepath = '/';
    $timestamp = time();
    setcookie(($prefix ? $tablepre : '').$var, $value,
    $life ? $timestamp + $life : 0, $cookiepath,
    $cookiedomain, 0);
    }
    function authcode($string, $operation, $key = '') {
    $auth_key='3oqWzQWnlBO6qFX';
    $discuz_auth_key = md5($auth_key.$_SERVER['HTTP_USER_AGENT']);
    $key = $key ? $key : $discuz_auth_key; $coded = '';
    $keylength = strlen($key);
    $string = $operation == 'DECODE' ? base64_decode($string) : $string;
    for($i = 0; $i < strlen($string); $i += $keylength) {
    $coded .= substr($string, $i, $keylength) ^ $key;
    }
    $coded = $operation == 'ENCODE' ? str_replace('=', '', base64_encode($coded)) : $coded;
    //echo $coded;
    return $coded;
    }

    这两个函数我已经拷贝了过来,而且cookies中的auth值已经设置的和discuz中的值一样,可是就是没有起到我要的效果,急等帮助
      

  5.   

    只是在等,看手册setcookie函数的用法!
    你在/路径下设置的cookie在/bbs路径下有效,在/bbs路径下设置的cookie在/路径下不尿!
      

  6.   

    你在/路径下设置的cookie在/bbs路径下有效,在/bbs路径下设置的cookie在/路径下不尿!手册我看过好多次了,但是还是搞不懂什么意思
    既然在根目录/下有效了,那么对其下所属的子目录也应该有效呀
      

  7.   

    在调用前加上这两项吧~
    $cookiedomain = 'www.domain.com'; //你的域名
    $cookiepath = '/';
      

  8.   

    有点不明白,你的这个登陆也是用的members表的用户数据,那么直接拷贝一份discuz验证程序让用户登陆不可以嘛  如果通过!
      

  9.   

    检查是不是你的作用域有问题。你可以在两个目录下分别printr出所有的cookie值看看不同的地方。你的思路没有错误。耐心检查一下。
      

  10.   

    你可以看下api/passport.php文件
    里面有一个登录 退出 注册代码
    你可以用header来实现
    再看下官方的接口
      

  11.   

    如果是这样的话,你看看我在discuz发的帖子吧
    http://www.discuz.net/thread-466339-1-1.html
    写的可能技术含量不高,不过我已经是实现了!!