最新公告
  • 欢迎您光临站长源码网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 帝国CMS redis随机调用信息

    正文概述 管理员   2024-09-02   28

    首先服务器确保安装redis扩展。

    写入信息ID到redis集合(帝国CMS后台自定义页面)

    <?php
    header("Content-Type:text/html;charset=utf-8");
    $redis=new Redis();
    try {
        $redis->connect('127.0.0.1', 6379);
        echo "Redis Server version:  ". $redis->info()['redis_version'] ."<br />";        //显示版本
        $key='infoid';
        $deleted=$redis->del($key);
    	$sql=$empire->query("select id from phome_ecms_news_index order by id");
    	while($r=$empire->fetch($sql)){
    	$redis->sADD($key,$r[id]);
    	}
    }
    catch (Exception $e) {
            echo "Cannot connect to Redis server: " .$e->getMessage(). "<br />";
        }
        $redis->close();// 关闭连接
    ?>
    

    redis获取集合中信息ID

    <?php
    header("Content-Type:text/html;charset=utf-8");
    $redis=new Redis();
    try {
        $redis->connect('127.0.0.1', 6379);
        echo "Redis Server version:  ". $redis->info()['redis_version'] ."<br />";        //显示版本
        $key='infoid';
        $members=$redis->sMembers($key);
        foreach ($members as $member) {
    		echo $member . PHP_EOL;
       }
    }
    catch (Exception $e) {
            echo "Cannot connect to Redis server: " .$e->getMessage(). "<br />";
        }
        $redis->close();// 关闭连接
    ?>
    

    调用帝国CMS随机信息(以下代码放到e/action/redis/下)

    <?php
    require('../../class/connect.php'); //引入数据库配置文件和公共函数文件
    require('../../class/db_sql.php'); //引入数据库操作文件
    require('../../data/dbcache/class.php'); //引入栏目缓存文件
    $link=db_connect(); //连接MYSQL
    $empire=new mysqlquery(); //声明数据库操作类
    $editor=1; //声明目录层次
    $nu=(int)$_GET[num];
    if(!$nu){
    $nu=10;
    }
    $redis=new Redis();//连接
    $redis->connect('127.0.0.1', 6379);
    $key='infoid'; //写入内存的KEY键值
    $randomid=$redis->sRandMember($key,$nu); //获取集合取数据
    foreach($randomid as $data){
    $r=$empire->fetch1("select id,title,titleurl,writer,smalltext from {$dbtbpre}ecms_news where id='$data' order by id asc limit 1");
    ?>
    <li><a href="<?=$r[titleurl]?>" title="<?=$r[title]?>"><?=$r[title]?></a></li>
    <?
    }
    $redis->close();// 关闭连接
    db_close(); //关闭MYSQL链接
    $empire=null; //注消操作类变量
    ?>
    

    直接访问PHP查看效果。

    模板中调用可以参考以下代码:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Fetch Example</title>
    </head>
    <body>
        <div id="output"></div>
    
        <script>
            fetch('/e/action/redis/redis.php')
                .then(response => response.text())
                .then(data => {
                    document.getElementById('output').innerHTML = data;
                })
                .catch(error => console.error('Error:', error));
        </script>
    </body>
    </html>
    


    站长源码网 » 帝国CMS redis随机调用信息

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    支付宝支付
    余额支付
    ×
    微信扫码支付 0 元