-->

帝国cms最高效的几种随机文章的写法是什么-(帝国cms生成app)

php随机文章

方法一、WC写的高效随机调用

?php

$随机数=1; //随机数

$randids='';

$randdh='';

for($i=1;$i=$randnum;$i++)

{

$randids.=$randdh.rand(18,30); //1为最小ID,100000为最大ID

$randdh=',';

}

[e:loop={29,1,0,0,'id in ($randids)'}]

a href='?=$bqsr[titleurl]?'?=esub($bqr[title],42)?/a

[/e:循环]

问题:因为在$randids.=$randdh.rand(18,30); 中这里把ID改为1, 10000,无法显示。只有改成当前列的最小和最大ID才能显示。那么问题来了:现在文章很少了。如果以后文章多了,这里的最大ID是不是要随时修改呢?或者还有其他办法吗?

答:添加系统扩展变量。您可以稍后更改扩展变量,而无需更改模板。

例如:添加了一个?=$public_r['add_listnum']?扩展变量并写入“$randids.=$randdh.rand(18,30);”

格式为:$randids.=$randdh.rand($public_r['add_listnum']);即:删除?和?

-------------------------------------------------- -------------------------------------------------- ------------------------------------------

方法2.

第一步:创建自定义页面:后台-栏目-自定义页面-添加自定义页面

填写:页面模式:直接页面页面名称(*):php随机文章文件名(*):/./test.php(在根目录下)类别:有则选择,有则默认不不选择

网页标题、网页关键词、网页描述:省略 页面内容(*):见第二步

注:填写以下信息:位置为././test.php,直接页面格式

步骤2:代码大致如下(以下需要连接数据库)

!--code.start--?php

需要('e/class/connect.php'); //引入数据库配置文件和公共函数文件

需要('e/class/db_sql.php'); //引入数据库操作文件

$link=db_connect(); //连接MYSQL

$empire=new mysqlquery(); //声明数据库操作类

$sql='SELECT * FROM {$dbtbpre}ecms_news AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM {$dbtbpre}ecms_news )-(SELECT MIN(id) FROM {$dbtbpre}ecms_news ))+(选择最小值(id)

FROM {$dbtbpre}ecms_news )) AS id) AS t2 WHERE t1.id=t2.id ORDER BY t1.id LIMIT 1';

?--代码结束--

!--code.start--?php

$str='';

为($i=1;$i11;$i++){

$nr=$empire-fetch1($sql);

$titleurl=sys_ReturnBqTitleLink($nr);

$str=$str.'lia href=''.$titleurl.'' title=''.$nr['title'].'''.$nr['title'].'/a/li ';

}

db_close(); //关闭MYSQL链接

$帝国=空; //取消操作类变量

回声$str;

?--代码结束--

第三步:使用[readhttp]'http://127.0.0.1/dg2/test.php'[/readhttp]调用模板中的文件(不成功,只能后台刷新才能随机变化)

使用框架代码:iframe border=0 name=lantk src='http://127.0.0.1/dg2/test.php' width=400 height=400allowTransparencyscrollbars=yesframeBorder='0'/iframe(成功,但不利于seo)

注:看一下code.start和code.end做了什么(只是求和):

//解析代码

函数RepExeCode($string){

全局$public_r;

if($public_r[candocode])

{

$string=str_replace('!--code.start--','',$string);

$string=str_replace('!--code.end--','',$string);

}

返回$字符串;

}

for($i=1;$i11;$i++){ 这行中的11表示调用10个项目。例如: for($i=1;$i6;$i++){ 表示使用5 个项目。

方法2----进化,

直接在根目录(可以选择更改目录)新建一个php文件,将以下代码复制进去

?php

需要('./class/connect.php'); //引入数据库配置文件和公共函数文件

需要('./class/db_sql.php'); //引入数据库操作文件

$link=db_connect(); //连接MYSQL

$empire=new mysqlquery(); //声明数据库操作类

$sql='SELECT * FROM {$dbtbpre}ecms_news AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM {$dbtbpre}ecms_news )-(SELECT MIN(id) FROM {$dbtbpre}ecms_news ))+(选择最小值(id)

FROM {$dbtbpre}ecms_news )) AS id) AS t2 WHERE t1.id=t2.id ORDER BY t1.id LIMIT 1';

?php

$str='';

为($i=1;$i6;$i++){

$nr=$empire-fetch1($sql);

$titleurl=sys_ReturnBqTitleLink($nr);

$str=$str.'lia href=''.$titleurl.'' title=''.$nr['title'].''h3 class='title''.$nr['title'].' /h3/a/li ';

}

db_close(); //关闭MYSQL链接

$帝国=空; //取消操作类变量

回声$str;

上一篇: 帝国cms二次开发基本问题有哪些内容(帝国cms二次开发基本问题有哪些)

下一篇: 帝国cms 结合项(帝国cms结合项伪静态)

关于搜一搜站长工具

如未标明出处,所有模板均为搜一搜站长工具原创,如需转载,请附上原文地址,感谢您的支持和关注。

关于代售类模板,为网友上传发布,如果有侵犯你的权益,请联系我们,第一时间删除。客服邮箱:3801085100#qq.com(#换成@)

本文地址:http://www.soyiso.net/news/12006.html

展开更多