安装了两个dedecms,怎么相互调用数据
2015-02-08 · 知道合伙人数码行家
知道合伙人数码行家
向TA提问 私信TA
独立的Dedecms系统,包括两种情况,一个是在同一个服务器上面,但是数据库名是不一样的,还有一种不在同一个服务器,其实这两种情况Dedecms虽然没有提供直接调用的标签,但是通过DEDECMS自带的SQL标签功能还是可以调用的。
首先是两个DEDECMS网站在同一个服务器,不同数据库的情况,这种就比较简单了。
{dede:sql sql=SELECT id as tmd,title FROM `另外个站的数据库名`.`dede_archives` ORDER BY tmd desc LIMIT 0,10}
<li><a href=/plus/view.php?aid=[field:tmd/] title=[field:title/] target=_blank;>[field:title /]</a></li>
{/dede:sql}
更多例子
{dede:sql sql="SELECT id as tmd,title FROM `1880331`.`188_archives` ORDER BY tmd desc LIMIT 0,10"}
<li><a href=/plus/view.php?aid=[field:tmd/] title="[field:title/]" target="_blank">[field:title /]</a></li>
{/dede:sql}
/------/
{dede:sql sql='Select * from dede_archives where mid=1 LIMIT 30,10'}
<a href='/plus/view.php?aid=[field:id/]' target='_blank'>[field:title/]</a><br/>
{/dede:sql}
---------------<br/>
{dede:sql sql='Select * from `1880331`.`188_archives` where channel=4 LIMIT 30,20'}
<a href='url/[field:id/].html' target='_blank'>[field:title/]</a><br/>
{/dede:sql}
-------<br/>
{dede:sql sql='Select * from `1880331`.`188_line` where typeid=124 LIMIT 30,20'}
[field:ts function='cn_substr(html2text(@me),370)'/]<br/>
{/dede:sql}
第二:就算数据库不在同一个服务器其实是可以用的。
data/common.inc.php
这个是保存数据库连接信息的,改下这个文件就可以了。
<?php
第一个要改的就是cfg_dbhost数据库服务器地址,如果不是和WEB空间在同一个服务器,填上IP就可以了,
在同一个服务器一般使用localhost或者127.0.0.1
$cfg_dbhost = ‘123.456.789.123′;
$cfg_dbname = ”; 这个是数据库名称
$cfg_dbuser = ”; 这个是数据库的用户名
$cfg_dbpwd = ”; 数据库密码
$cfg_dbprefix = ‘dede_’; 这个是数据表的前缀
$cfg_db_language = ‘gbk’; 这个是数据库的编码,一定要两个DEDE站点的编码一样,如果不同就会出现乱码。
?>
注意一下哦,有很多空间商是不允许外部链接到数据库的,所以你要向他们咨询下是否可以在外站连接。