在进行网站开发或维护时,对某些功能模块进行优化和调整是常见的操作。以下是一篇关于如何修改 ShowMsg 函数的文章,旨在帮助开发者更好地理解其逻辑和实现方式。
首先,我们需要打开文件 \\\\include\\\\common.func.php 并找到 ShowMsg 函数的定义部分。以下是原始代码的基本结构:
function ShowMsg(
{
中间代码省略...
}
接下来,我们将对这段代码进行整体替换,以增强其功能性和兼容性。以下是替换后的完整代码:
function ShowMsg($msg, $gourl, $onlymsg=0, $limittime=0)
{
if(empty($GLOBALS['cfg_plus_dir'])) $GLOBALS['cfg_plus_dir'] = '..';
$htmlhead = "\\r\\n\\r\\n提示信息 \\r\\n\\r\\n\\r\\n\\r\\n";
$htmlhead .= " \\r\\n\\r\\n" . (isset($GLOBALS['ucsynlogin']) ? $GLOBALS['ucsynlogin'] : '') . "\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n";
$litime = ($limittime==0 ? 1000 : $limittime);
$func = '';
if($gourl=='-1')
{
if($limittime==0) $litime = 5000;
$gourl = "javascript:history.go(-1);";
}
if($gourl=='' || $onlymsg==1)
{
$msg = "";
}
else
{
//当网址为:close::objname 时, 关闭父框架的id=objname元素
if(preg_match('/close::/',$gourl))
{
$tgobj = trim(preg_replace('/close::', '', $gourl));
$gourl = 'javascript:;';
$func .= "window.parent.document.getElementById('$tgobj').style.display='none';\\r\\n";
}
$func .= " var pgo=0;
function JumpUrl(){
if(pgo==0){ location='$gourl'; pgo=1; }
}\\r\\n";
$rmsg = $func;
$rmsg .= "document.write(\\"\\");\\r\\n;";
$rmsg .= "document.write(\\"";
$rmsg .= "提示信息
\\"\\);\\r\\n";
$rmsg .= "document.write(\\"\\"\\);\\r\\n";
$rmsg .= "document.write(\\"".str_replace("\\"","“",$msg)."\\"\\);\\r\\n";
$rmsg .= "document.write(\\"";
if($onlymsg==0)
{
if( $gourl != 'javascript:;' && $gourl != '')
{
$rmsg .= "点击跳转";
$rmsg .= "
\\"\\);\\r\\n";
$rmsg .= "setTimeout('JumpUrl()',$litime);";
}
else
{
$rmsg .= "
\\"\\);\\r\\n";
}
}
else
{
$rmsg .= "