discuz7 我现在想在主页index.php上加个查询数据的功能,但是第二次的数据没有去数据库查询而是上次查询出来的缓存数据,要怎样才能每次都去数据库查询呢?分数不多....但请各位大虾帮帮我.....

解决方案 »

  1.   

    意思说错了,是这样:
    discuz7 我现在想在主页index.php上查询访问者的真实ip但是每次都是上次缓存的数据
      

  2.   

    直接sql 数据库不可以么?
      

  3.   

    我是要在页面上面获取访问者的真实ip,但是得到的都是缓存起来的ip
      

  4.   

    index.php:
    define('BINDDOMAIN', 'index');require_once './include/common.inc.php';
    $flag = $onlineip;
    if(!$loadforum) {
    if($indextype) {
    $op = empty($op) ? $indextype : $op;
    $indexfile = in_array($op, array('classics', 'feeds')) ? $op : 'classics';
    } else {
    $indexfile = 'classics';
    } if($indexfile == 'classics' || !empty($gid)) {
    require_once DISCUZ_ROOT.'./include/index_classics.inc.php';
    } elseif($indexfile == 'feeds') {
    require_once DISCUZ_ROOT.'./include/index_feeds.inc.php';
    } else {
    showmessage('undefined_action');
    }
    } else {
    require_once './forumdisplay.php';
    }
    header.htm:
    <!--{if !empty($flag)}-->
    <!--<input type='hidden' id='success' value='$flag'/>-->
    <!--{else}-->
    <!--fail-->
    <!--{/if}-->
      

  5.   

    我之前的意思说错了,实际是我要在主页获取用户访问的ip地址,但是由于discuz有缓存,所以那个ip就是论坛更新缓存后第一个访问者的ip地址咯,在下次更新缓存前,所获得的ip始终是缓存的那个ip地址,
    这个跟数据库没有关系的.....我开始是说错了...
      

  6.   

    function GetIP(){
        if(!empty($_SERVER["HTTP_CLIENT_IP"])){
            $cip = $_SERVER["HTTP_CLIENT_IP"];
        }else if(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){
            $cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
        }else if(!empty($_SERVER["REMOTE_ADDR"])){
            $cip = $_SERVER["REMOTE_ADDR"];
        }else{
            $cip = "无法获取!";
        }
        return $cip;
    }
      

  7.   

    不用$onlineip这个变量。
    直接GetIP()