您的位置:首页 > 编程语言 > PHP开发

Error page: /admin/makehtml_all.php?action=make&step怎么办

2016-01-20 18:21 218 查看
DedeCMS Error Warning!Technical Support: http://bbs.dedecms.comError page: /admin/makehtml_all.php?action=make&step=10Error infos: 无法使用数据库

dedecms,在后台更新网站的时候提示这样的错误应该怎么解决?

织梦代码对数据库错误信息做了自定义,根据代码提供的信息分析不出具体原因来检查MYSQL数据库是否可连接,数据库账号口令及权限是否正确

<?php

require_once(dirname(__FILE__)."/config.php");

require_once(dirname(__FILE__)."/../include/inc_channel_unit_functions.php");

$action = (empty($action) ? '' : $action);

 

//优化数据

function OptimizeData($dsql)

{

        global $cfg_dbprefix;

        $tptables = array("{$cfg_dbprefix}full_search","{$cfg_dbprefix}cache_tagindex","{$cfg_dbprefix}cache_value");

        $dsql->SetQuery("Select maintable,addtable From `dede_channeltype` ");

        $dsql->Execute();

        while($row = $dsql->GetObject()){

                $maintable = str_replace('dede_',$cfg_dbprefix,$row->maintable);

                $addtable = str_replace('dede_',$cfg_dbprefix,$row->addtable);

                if($maintable!='' && !in_array($maintable,$tptables)) $tptables[] = $maintable;

                if($addtable!='' && !in_array($addtable,$tptables)) $tptables[] = $addtable;

        }

        $tptable = '';

        foreach($tptables as $t){

                $tptable .= ($tptable=='' ? "`{$t}`" : ",`{$t}`" );

        }

        $dsql->ExecuteNoneQuery(" OPTIMIZE TABLE $tptable; ");

}

 

 

if($action==''){

  require_once(dirname(__FILE__)."/templets/makehtml_all.htm");

  ClearAllLink();

  exit();

}

/*-----------

function _0_mskeStart()

-----------*/

else if($action=='make')

{

        //step = 1 更新主页、step = 2 更新内容、step = 3 更新栏目

        if(empty($step)) $step = 1;

//更新主页

/*-------------------------

function _1_MakeHomePage()

-------------------*/

if($step==1)

{

        include_once(DEDEADMIN."/../include/inc_arcpart_view.php");

        $starttime = GetMkTime($starttime);

        $mkvalue = ($uptype=='time' ? $starttime : $startid);

        $pv = new PartView();

  $row = $pv->dsql->GetOne("Select * From dede_homepageset");

  $templet = str_replace("{style}",$cfg_df_style,$row['templet']);

  $homeFile = dirname(__FILE__)."/".$row['position'];

        $homeFile = str_replace("\\","/",$homeFile);

        $homeFile = str_replace("//","/",$homeFile);

        $fp = fopen($homeFile,"w") or die("主页文件:{$homeFile} 没有写权限!");

        fclose($fp);

        $pv->SetTemplet($cfg_basedir.$cfg_templets_dir."/".$templet);

        $pv->SaveToHtml($homeFile);

        $pv->Close();

        ShowMsg("更新主页成功,现在开始更新文档页!","makehtml_all.php?action=make&step=2&uptype={$uptype}&mkvalue={$mkvalue}");

        ClearAllLink();

  exit();

}

//更新文档前优化数据

/*-------------------

function _2_OptimizeData1()

---------------------*/

else if($step==2)

{

        $dsql = new DedeSql(false);

        OptimizeData($dsql);

        ClearAllLink();

        ShowMsg("完成数据优化,现在开始更新文档页!","makehtml_all.php?action=make&step=3&uptype={$uptype}&mkvalue={$mkvalue}");

  exit();

}

//更新文档

/*-------------------

function _3_MakeArchives()

---------------------*/

else if($step==3)

{

        include_once(dirname(__FILE__)."/makehtml_archives_action.php");

        ClearAllLink();

        exit();

}

//更新栏目

/*-------------------

function _4_MakeCatalog()

--------------------*/

else if($step==4)

{

        $dsql = new DedeSql(false);

        $mkvalue = intval($mkvalue);

        $typeids = array();

        $adminID = $cuserLogin->getUserID();

        $mkcachefile = DEDEADMIN."/../data/mkall_cache_{$adminID}.php";

        if($mkvalue<=0)

        {

                $dsql->SetQuery("Select ID From `dede_arctype` ");

                $dsql->Execute();

                while($row = $dsql->GetArray()) $typeids[] = $row['ID'];

        }else

        {

                if($uptype=='time') $query = "Select typeid From `dede_full_search` where uptime>='{$mkvalue}' group by typeid";

                else $query = "Select typeid From `dede_full_search` where aid>='{$mkvalue}' group by typeid";

                $dsql->SetQuery($query);

                $dsql->Execute();

                while($row = $dsql->GetArray()){

                        if(!isset($typeids[$row['typeid']])) $typeids[$row['typeid']] = 1;

                }

                foreach($typeids as $v){

                        $vs = SpGetTopIDS($v);

                        foreach($vs as $vv){ if(!isset($typeids[$vv])) $typeids[$row[$vv]] = 1; }

                }

        }

        $fp = fopen($mkcachefile,'w') or die("无法写入缓存文件:{$mkcachefile} 所以无法更新栏目!");

        if(count($typeids)>0)

        {

                fwrite($fp,"<"."?php\r\n");

                $i = -1;

                foreach($typeids as $k=>$t){

                        if($k!=''){ $i++; fwrite($fp,"\$idArray[$i]={$k};\r\n"); }

                }

                fwrite($fp,"?".">");

                fclose($fp);

                ClearAllLink();

          ShowMsg("完成栏目缓存处理,现转向更新栏目!","makehtml_list_action.php?gotype=mkall");

    exit();

        }else{

                fclose($fp);

                ClearAllLink();

                ShowMsg("没有可更新的栏目,现在作最后数据优化!","makehtml_all.php?action=make&step=10");

                exit();

        }

}

//成功状态

/*-------------------

function _10_MakeAllOK()

--------------------*/

else if($step==10)

{

        $adminID = $cuserLogin->getUserID();

        $mkcachefile = DEDEADMIN."/../data/mkall_cache_{$adminID}.php";

        @unlink($mkcachefile);

        $dsql = new DedeSql(false);

        OptimizeData($dsql);

        ClearAllLink();

        ShowMsg("完成所有文件的更新!","javascript:;");

        exit();

}//make step

       

} //action=='make'

ClearAllLink();

exit();

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: