惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Vercel News
Vercel News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
SegmentFault 最新的问题
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - Franky
有赞技术团队
有赞技术团队
Last Week in AI
Last Week in AI
Martin Fowler
Martin Fowler
MyScale Blog
MyScale Blog
aimingoo的专栏
aimingoo的专栏
Recent Announcements
Recent Announcements
雷峰网
雷峰网
T
Tor Project blog
博客园_首页
D
Darknet – Hacking Tools, Hacker News & Cyber Security
The Register - Security
The Register - Security
T
The Blog of Author Tim Ferriss
Recorded Future
Recorded Future
V
Vulnerabilities – Threatpost
Project Zero
Project Zero
J
Java Code Geeks
AWS News Blog
AWS News Blog
Security Latest
Security Latest
Spread Privacy
Spread Privacy
T
Threatpost
博客园 - 三生石上(FineUI控件)
I
Intezer
G
Google Developers Blog
Scott Helme
Scott Helme
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
The Hacker News
The Hacker News
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
NISL@THU
NISL@THU
A
Arctic Wolf
F
Full Disclosure
P
Proofpoint News Feed
G
GRAHAM CLULEY
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Microsoft Azure Blog
Microsoft Azure Blog
P
Proofpoint News Feed
N
Netflix TechBlog - Medium
C
Cybersecurity and Infrastructure Security Agency CISA
T
Threat Research - Cisco Blogs
B
Blog
IT之家
IT之家
MongoDB | Blog
MongoDB | Blog
L
LangChain Blog
Know Your Adversary
Know Your Adversary

梦幻辰风

狗蛋的居家生活 - 梦幻辰风 愿我是你世界里的光 - 梦幻辰风 年岁不再复少年 - 梦幻辰风 12撟朝瑞㮾靽∠㮾靽∠��偦� - 璇血劂颲圈� 韐圈妟韐唬�嚗𡁶鍂���銝擧𧒄�渲�鈭�𧊋�乩��鞾鵭 - 璇血劂颲圈� 摨𥪜�銝箄䌊撌勗畺�颱�銝芸�澆�蝏�����憟� - 璇血劂颲圈� 瘝⊥��賡䪸����� - 璇血劂颲圈�
霈呷mlog5.3.1�舀��訐HP8.4 - 璇血劂颲圈�
憪𡏭劓��� · 2025-12-06 · via 梦幻辰风

撠�𢒰��

�滢��亙��� �渲�摮� 銝� @憭扯稲 �𣂼� 霈坪ordPress4.9�私hp8.2銝𧢲迤撣貉�銵䎚�� �其��乩�閫厰𡢿嚗釶HP撌脩��舀���8.X鈭���

憟賢翰嚗���嘥��亥圻PHP�嗉���5.6��

�啣末�典�嚗峕�憟賣��∪膥�砍振��

蝝X�改��杗I��葬�拐�嚗��霂閗悟璇血劂颲圈�餈嗘葵餈鞱��� Emlog5.3.1 ��𧋦����賣聢嚗䔶�撉��php8��翰銋僐��

�朞��𦦵揣嚗�銁 銝�撟游�銝�撟渡��𡁜恥 銝剜𪄳�啜�𥄫mlog 5.3.1 �澆捆 PHP 8.0 �躰秤靽桀��贝�蝭������朞秐鈭擧�餈条��唬�撟�5����嗘����閮�嚗�

�蠘陝憭找蓮��澈嚗峕��桀�餈䀹糓5.3.1嚗���坔銁PHP7.4嚗峕���閬��閬��8.X����研��

銝滩��帋蜓瘝⊥��墧�嚗𣊁a��凒�唬��𦦵���2022撟�2����

�惩成嚗𣬚緵�典�憪页�蝏枏� 銝�撟游�銝�撟渡��𡁜恥 ���蝡惩�摰孵��𤑳��滢��亙�嚗𣬚��閗扇敶蓥�銝见�蝥批��脯��

擐硋�嚗𡁜銁2016撟湔�2017撟游椰�喉�璇血劂颲圈�撌脩�靽格㺿��𧋦�舀��訐HP7.X��

��隞伐�隞乩����㗇��橘��賣糓�箔�PHP7.0�嗥���𧋦���䔶耨�遂mlog5.3.1�舀�PHP7.0嚗峕��臬���� �毺䰻�� ������𢰸HP7銝见�鋆�mlog5.3.1�页�瘜剁��冽𧋦���撣�𧒄嚗𣊁a����孵歇蝏𤩺�銝滚�鈭����

嚗�釣嚗帋誑銝见�摰孵末�𤩺糓CSDN����� �毺䰻�� �𡁏�嚗�之�湔䲮瘜訫�銝页�憒���䭾�敶勗�嚗���𡏭䌊韐麄���

1.靽格㺿include/lib/option.php嚗�之璁�11銵䔶耨�嫣蛹mysqli

//�喉�暺䁅恕MySQL餈墧𦻖�孵�嚗龧ysql�驜ysqli
const DEFAULT_MYSQLCONN = 'mysql';

�嫣蛹

const DEFAULT_MYSQLCONN = 'mysqli';
//暺䁅恕�暹𦻖�孵��嫣蛹mysqli

2.靽格㺿include/lib/database.php嚗�之璁�16銵���千efault嚗�

case 'mysql':
default ://餈躰器��閬���千efault嚗�

3.靽格㺿include/lib/cache.php嚗�之璁�195銵��憭扳𡠺��

$$row['option_name'] = $row['option_value'];

�嫣蛹

${$row['option_name']} = $row['option_value'];

4.PHP��𧋦��餈烐凒�啁�瘥磰�敹恬�autoload�芸𢆡�㰘蝸�賣㺭隡𡁏𥁒�辷�function.base.php撘�憭渡�__autoload�賣㺭靽格㺿憒��

spl_autoload_register(function($class) {
$class = strtolower($class);
if (file_exists(EMLOG_ROOT . '/include/model/' . $class . '.php')) {
require_once(EMLOG_ROOT . '/include/model/' . $class . '.php');
} elseif (file_exists(EMLOG_ROOT . '/include/lib/' . $class . '.php')) {
require_once(EMLOG_ROOT . '/include/lib/' . $class . '.php');
} elseif (file_exists(EMLOG_ROOT . '/include/controller/' . $class . '.php')) {
require_once(EMLOG_ROOT . '/include/controller/' . $class . '.php');
} else {
emMsg($class . '�㰘蝸憭梯揖��');
}
});

5.撖嫣��典��雴辣�蹱香鈭�㺭�桀��暹𦻖�孵�嚗屸�閬�� $DB = MySql::getInstance(); �嫣蛹 $DB = Database::getInstance(); 蝑厩���

�朞�銝𡃏膩��耨�對�Emlog5.3.1嚗��霈賂��臭誑�舀�PHP7.X鈭���緵�剁��睲賑撠��PHP8餈𥕦���

擐硋�嚗�銁 init.php ���撘�憭渲��� error_reporting() 霈曄蔭鈭��霂舐漣�恬�閬���嗵�霂嘅���閬��蝥批�撘��� E_ALL ��

*隞乩��寞��亥䌊 銝�撟游�銝�撟渡��𡁜恥 嚗�

1.靽格㺿 /include/lib/function.base.php ��辣嚗�

  • 靽格㺿 __autoload() �賣㺭嚗�
//�� __autoload() �V蛹�踹��賣㺭嚗𣬚��𦒘�蝏� spl_autoload_register �賣㺭瘜典�
// function __autoload($class) {
spl_autoload_register(function ($class) {
    $class = strtolower($class);
    if (file_exists(EMLOG_ROOT . '/include/model/' . $class . '.php')) {
        require_once(EMLOG_ROOT . '/include/model/' . $class . '.php');
    } elseif (file_exists(EMLOG_ROOT . '/include/lib/' . $class . '.php')) {
        require_once(EMLOG_ROOT . '/include/lib/' . $class . '.php');
    } elseif (file_exists(EMLOG_ROOT . '/include/controller/' . $class . '.php')) {
        require_once(EMLOG_ROOT . '/include/controller/' . $class . '.php');
    } else {
        emMsg($class . '�㰘蝸憭梯揖��');
    }
});
  • 靽株‘ get_magic_quotes_gpc() �賣㺭

�冽�隞嗅�憭� function doStripslashes() {} �賣㺭憯唳��㵪�銵亙�摰帋�蝥舐鍂鈭𤾸�摰寧�獢拙遆�� get_magic_quotes_gpc()嚗峕�餈𥪜� FALSE��

if (!function_exists('get_magic_quotes_gpc')) {
    function get_magic_quotes_gpc() {
        return false;
    }
}
  • �� in_array() �齿��� NULL ��
//�曉�if (!@in_array($actionFunc, $emHooks[$hook])) 嚗���嗡耨�嫣蛹嚗�
if (!@$emHooks[$hook] || !@in_array($actionFunc, $emHooks[$hook])) {

2.�湔鰵 passwordhash.php 撖���賣㺭摨�

�滚� phpass 摰条�銝贝蝸���啁��祉� passwordhash.php 嚗峕𤜯�W��祉� /include/lib/passwordhash.php ��

�啣銁嚗𣬚�摨讛�頝睲�嚗䔶��臭��劐�鈭𥕦��仿�嚗��嚗�

�仿��鞟內嚗鋽eprecated: Function get_magic_quotes_gpc() is deprecated in /www/include/lib/function.base.php on line 31

��閬�耨�� include/lib/function.base.php ��辣嚗峕𪄳�� doStripslashes() �賣㺭嚗䔶耨�孵�銝页�

function doStripslashes() {
    // �𣳇膄撖� get_magic_quotes_gpc() �����
    // �湔𦻖餈𥡝� stripslashesDeep 憭��
    $_GET = stripslashesDeep($_GET);
    $_POST = stripslashesDeep($_POST);
    $_COOKIE = stripslashesDeep($_COOKIE);
    $_REQUEST = stripslashesDeep($_REQUEST);
}

�峕𧒄餈㗛�閬�耨�� stripslashesDeep() �賣㺭,靽格㺿憒��嚗�

function stripslashesDeep($value) {
    if (is_array($value)) {
        return array_map('stripslashesDeep', $value);
    } elseif (is_object($value)) {
        $vars = get_object_vars($value);
        foreach ($vars as $key => $data) {
            $value->{$key} = stripslashesDeep($data);
        }
        return $value;
    } else {
        // 瘛餃�撖� null �潛�璉���
        return is_string($value) ? stripslashes($value) : $value;
    }
}

�峕𧒄嚗��摰𨆯I�鞟內�𤏸��劐�銝芸��湔𤜯隞�䲮獢���� init.php���漤𢒰瘛餃��典�憭����

// �踵揢 magic_quotes_gpc �蠘�
if (version_compare(PHP_VERSION, '7.4', '>=')) {
    $process = [&$_GET, &$_POST, &$_COOKIE, &$_REQUEST];
    while (list($key, $val) = each($process)) {
        foreach ($val as $k => $v) {
            unset($process[$key][$k]);
            if (is_array($v)) {
                $process[$key][stripslashes($k)] = $v;
                $process[] = &$process[$key][stripslashes($k)];
            } else {
                $process[$key][stripslashes($k)] = stripslashes($v);
            }
        }
    }
    unset($process);
}

銝滩��烐瓷霂𤏪��牐蛹撌脩�閫��餈嗘葵�仿�鈭���

銝滩��函�蝡坔仍�典枂�唬�嚗�Notice: Undefined variable ����衤�銝�銝衤誨���銝页�

<?php if ($logid): ?>

靽格㺿銝綽�

<?php if (isset($logid) && $logid): ?>

�喳虾��

�誩�嚗峕鰵��𥁒�辷�

Deprecated: Using ${var} in strings is deprecated, use {$var} instead in /www/content/plugins/tpl_options/tpl_options.php on line 987

餈嗘葵�疾mlog5.3.1���隞塚�璅⊥踎霈曄蔭��

�枏� tpl_options.php蝚� 987 銵䕘�

// �找誨���撌脣��剁�嚗�
$values[$tag['tagname']] = "${tag['tagname']} (${tag['usenum']})";

// �唬誨����刻�嚗㚁�
$values[$tag['tagname']] = "{$tag['tagname']} ({$tag['usenum']})";

摰峕㟲靽格㺿�𡒊��賣㺭嚗�

/**
     * @param array $option
     * @return void
     */
    private function renderTag($option) {
        $tags = Cache::getInstance()->readCache('tags');
        $values = array();
        foreach ($tags as $tag) {
            // 靽桀� PHP 8.2 撘�鍂���蝚虫葡�鍦�潸祗瘜�
            $values[$tag['tagname']] = "{$tag['tagname']} ({$tag['usenum']})";
        }
        $option['values'] = $values;
        $this->renderCheckbox($option);
    }

�誩�嚗峕鰵��𥁒�辷�

Deprecated: Log_Model::getLogsForHome(): Optional parameter $condition declared before required parameter $perPageNum is implicitly treated as a required parameter in /www/include/model/log_model.php on line 184

靽格㺿 log_model.php蝚� 184 銵𣬚��賣㺭憯唳�嚗�

/**
 * �滚蝱�瑕�����𡑒”
 *
 * @param int $perPageNum
 * @param string $condition
 * @param int $page
 * @return array
 */
function getLogsForHome($perPageNum, $condition = '', $page = 1) {
    $timezone = Option::get('timezone');
    $start_limit = !empty($page) ? ($page - 1) * $perPageNum : 0;
    $limit = $perPageNum ? "LIMIT $start_limit, $perPageNum" : '';
    $sql = "SELECT * FROM " . DB_PREFIX . "blog WHERE type='blog' and hide='n' and checked='y' $condition $limit";
    $res = $this->db->query($sql);
    $logs = array();
    while ($row = $this->db->fetch_array($res)) {
        $row['date'] += $timezone * 3600;
        $row['log_title'] = htmlspecialchars(trim($row['title']));
        $row['log_url'] = Url::log($row['gid']);
        $row['logid'] = $row['gid'];
        $cookiePassword = isset($_COOKIE['em_logpwd_' . $row['gid']]) ? addslashes(trim($_COOKIE['em_logpwd_' . $row['gid']])) : '';
        if (!empty($row['password']) && $cookiePassword != $row['password']) {
            $row['excerpt'] = '<p>[霂交�蝡惩歇霈曄蔭�惩�嚗諹窈�孵稬���颲枏�撖��霈輸䔮]</p>';
        } else {
            if (!empty($row['excerpt'])) {
                $row['excerpt'] .= '';
                //$row['excerpt'] .= '<p class="readmore"><a href="/jump.php?url=' . Url::log($row['logid']) . '">��粉�冽�>></a></p>';
            }
        }
        $row['log_description'] = empty($row['excerpt']) ? breakLog($row['content'], $row['gid']) : $row['excerpt'];
        $row['attachment'] = '';
        $row['tag'] = '';
        $row['tbcount'] = 0;//�澆捆�芸��文��函�璅⊥踎
        $logs[] = $row;
    }
    return $logs;
}

�嗅���閬��蝝X㟲銝芯誨���嚗峕𪄳�唳��㕑��� getLogsForHome�賣㺭��𧑐�對�撟嗉��游��圈◇摨譌��

���憒��嚗�

// �扯��冽䲮撘𧶏�
$logs = $Log_Model->getLogsForHome('', $page, Option::get('index_lognum'));

// �啗��冽䲮撘𧶏�
$logs = $Log_Model->getLogsForHome(Option::get('index_lognum'), '', $page);

敶梶�嚗峕�瘝∟�銋�僕嚗��銝箏云憭帋���

�煾�㗇𥋘靽脲��穃��澆捆嚗�虾隞乩耨�孵遆�啁倌�滢�銝齿㺿�睃��圈◇摨𧶏�

/**
 * �滚蝱�瑕�����𡑒”
 *
 * @param string $condition
 * @param int $page
 * @param int|null $perPageNum
 * @return array
 */
function getLogsForHome($condition = '', $page = 1, $perPageNum = null) {
    // 憒�� $perPageNum 銝� null嚗䔶蝙�券�霈文��
    if ($perPageNum === null) {
        $perPageNum = Option::get('index_lognum') ?: 10;
    }

    $timezone = Option::get('timezone');
    $start_limit = !empty($page) ? ($page - 1) * $perPageNum : 0;
    $limit = $perPageNum ? "LIMIT $start_limit, $perPageNum" : '';
    $sql = "SELECT * FROM " . DB_PREFIX . "blog WHERE type='blog' and hide='n' and checked='y' $condition $limit";
    $res = $this->db->query($sql);
    $logs = array();
    while ($row = $this->db->fetch_array($res)) {
        $row['date'] += $timezone * 3600;
        $row['log_title'] = htmlspecialchars(trim($row['title']));
        $row['log_url'] = Url::log($row['gid']);
        $row['logid'] = $row['gid'];
        $cookiePassword = isset($_COOKIE['em_logpwd_' . $row['gid']]) ? addslashes(trim($_COOKIE['em_logpwd_' . $row['gid']])) : '';
        if (!empty($row['password']) && $cookiePassword != $row['password']) {
            $row['excerpt'] = '<p>[霂交�蝡惩歇霈曄蔭�惩�嚗諹窈�孵稬���颲枏�撖��霈輸䔮]</p>';
        } else {
            if (!empty($row['excerpt'])) {
                $row['excerpt'] .= '';
            }
        }
        $row['log_description'] = empty($row['excerpt']) ? breakLog($row['content'], $row['gid']) : $row['excerpt'];
        $row['attachment'] = '';
        $row['tag'] = '';
        $row['tbcount'] = 0;
        $logs[] = $row;
    }
    return $logs;
}

�齿迤瘝⊥𥁒�嗘���

�嗅��𤑳緵�煾�隞嗥��雴辣 kl_sendmail �仿�鈭���䔶��煾���鈭��隞嗚��

鈭擧糓嚗峕凒�� PHPMailer ����穿��湔𦻖�湔鰵��7.0.1嚗��src銝剜��厩���辣銝𠹺��啗砲�雴辣��𤌍敶閧�class��辣銝哨�靽格㺿 kl_sendmail.php ��辣隞��憒��嚗�

<?php
/*
Plugin Name: Sendmail
Version: 3.8
Plugin URL: 嚗�曎�亙歇憭望�嚗�
Description: �煾���摰Y�閮��蛀-mail��
Author: 雿𡏭���KLLER 
Author Email: kller@foxmail.com
Author URL: 嚗�曎�亙歇憭望�嚗�
*/

!defined('EMLOG_ROOT') && exit('access deined!');

// 雿輻鍂�賢�蝛粹𡢿撘訫�PHPMailer蝐�
use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerSMTP;
use PHPMailerPHPMailerException;

require_once(EMLOG_ROOT.'/content/plugins/kl_sendmail/class/PHPMailer.php');
require_once(EMLOG_ROOT.'/content/plugins/kl_sendmail/class/SMTP.php');
require_once(EMLOG_ROOT.'/content/plugins/kl_sendmail/class/Exception.php');

function UBB($content){
    $content=preg_replace('!�鞾曎�伐�(.*)��!uU',"<br /><a href="/jump.php?url=/jump.php?url=1" target="_blank" rel="nofollow">1</a><br />",$content);
    $content=preg_replace('!�𣂼㦛��曎�伐�(.*)��!uU',"",$content);
    $content=preg_replace('!�𣂼㦛��𧑐��嚗�(.*)��!uU',"",$content);
    $content=preg_replace('!�𣂼㦛���(.*)��!uU',"",$content);
    $content=preg_replace("!�鞾��讛�霈箝��([sS]*?)��/�鞱�霂�捏��!uU","嚗��憯啗秩嚗�<br /><i>1</i>",$content);
    $content=preg_replace("!�鞾��誩�摰嫘��([sS]*?)��/�鞱���捆��!uU","嚗��憯啗秩嚗�<br /><i>1</i>",$content);
    $content=preg_replace("!�鞾��誩�摰對�([sS]*?)��!uU","嚗��憯啗秩嚗�<br /><i>1</i>",$content);
    $content=preg_replace("!�鞾��譍縑�荔�([sS]*?)��!uU","嚗��憯啗秩嚗�<br /><i>1</i>",$content);
    $content=preg_replace("!�鞾��𧶏�([sS]*?)��!uU","嚗��憯啗秩嚗�<br /><i>1</i>",$content);
    return $content;
}

function kl_sendmail_do($mailserver, $port, $mailuser, $mailpass, $mailto, $subject, $content, $fromname)
{
    try {
        $mail = new PHPMailer(true);

        // 摮㛖泵霈曄蔭
        $mail->CharSet = "UTF-8";
        $mail->Encoding = "base64";

        // �滚𦛚�刻挽蝵�
        if(KL_MAIL_SENDTYPE == 1) {
            $mail->isSMTP();
        } else {
            $mail->isMail();
        }

        $mail->Host = $mailserver;
        $mail->Port = $port;
        $mail->SMTPAuth = true;
        $mail->Username = $mailuser;
        $mail->Password = $mailpass;

        // SSL/TLS霈曄蔭
        if($mailserver == 'smtp.gmail.com' || $mailserver == KL_MAIL_SMTP) {
            if($port == 465) {
                $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // SSL
            } else {
                $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // TLS
            }
        }

        // �睲辣鈭�
        $mail->setFrom($mailuser, $fromname);

        // �嗡辣鈭�
        $mail->addAddress($mailto);

        // ��捆
        $mail->isHTML(true);
        $mail->Subject = $subject;
        $mail->Body = $content;
        $mail->AltBody = strip_tags($content); // 蝥舀��祉���

        // �煾���隞�
        $mail->send();
        return true;

    } catch (Exception $e) {
        error_log("�桐辣�煾��仃韐�: " . $mail->ErrorInfo);
        return false;
    }
}

function kl_sendmail_get_comment_mail()
{
    include(EMLOG_ROOT.'/content/plugins/kl_sendmail/kl_sendmail_config.php');
    if(KL_IS_SEND_MAIL == 'Y' || KL_IS_REPLY_MAIL == 'Y')
    {
        $comname = isset($_POST['comname']) ? addslashes(trim($_POST['comname'])) : '';
        $comment = isset($_POST['comment']) ? addslashes(trim($_POST['comment'])) : '';
        $commail = isset($_POST['commail']) ? addslashes(trim($_POST['commail'])) : '';
        $comurl = isset($_POST['comurl']) ? addslashes(trim($_POST['comurl'])) : '';
        $gid = isset($_POST['gid']) ? intval($_POST['gid']) : (isset($_GET['gid']) ? intval($_GET['gid']) : -1);
        $pid = isset($_POST['pid']) ? intval($_POST['pid']) : 0;
        $http_referer = empty($_SERVER['HTTP_REFERER']) ? BLOG_URL : $_SERVER['HTTP_REFERER'];

        $blogname = Option::get('blogname');
        $Log_Model = new Log_Model();
        $logData = $Log_Model->getOneLogForHome($gid);
        $log_title = $logData['log_title'];
        $subject = "����𢯊$log_title}�𧢲𤣰�唬��啁�霂�捏";

        if(!empty($commail)){$commail = $commail;}else{$commail = '�芸‵��';};
        if(!empty($comurl)){$comurl = $comurl;}else{$comurl = '�芸‵��';};

        if(strpos(KL_MAIL_TOEMAIL, '@139.com') === false)
        {
            $content = '餈䠷��鍦�撘��~';
        }else{
            $content = $comment;
        }

        if(KL_IS_SEND_MAIL == 'Y')
        {
            if(ROLE == 'visitor') kl_sendmail_do(KL_MAIL_SMTP, KL_MAIL_PORT, KL_MAIL_SENDEMAIL, KL_MAIL_PASSWORD, KL_MAIL_TOEMAIL, $subject, $content, $blogname);
        }

        if(KL_IS_REPLY_MAIL == 'Y')
        {
            if($pid > 0)
            {
                $DB = Option::EMLOG_VERSION >= '5.3.0' ? Database::getInstance() : MySql::getInstance();
                $Comment_Model = new Comment_Model();
                $pinfo = $Comment_Model->getOneComment($pid);
                if(!empty($pinfo['mail']))
                {
                    $subject = '�典銁璇血劂颲圈��𤏸”���霈箸𤣰�唬�Ta���憭�';
                    $content = '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><div style="width:99%;">
    <div style="padding:0 15px;color:#111;background-color:#F5FFFA;border:1px solid #d8e3e8;border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;-webkit-border-radius:0 0 6px 6px;-khtml-border-radius:0 0 6px 6px;">
        <p><strong>'.$pinfo['poster'].'</strong>���嚗峕�銋见��具��'.$log_title.'�见�銵函�霂�捏嚗�</p>
        <p style="padding:10px;background-color:#F0FFF0;">'.$pinfo['comment'].'</p>
        <p><strong>'.$comname.'</strong> 蝏蹱����憭㵪�</p>
        <p style="padding:10px;background-color:#F0F8FF;">'.$comment.'</p>
        <p>�典虾隞亦凒��<a href="/jump.php?url='.Url::log($gid).'#'.$pid.'" target="_blank">�孵稬餈䠷��亦����</a>嚗䔶�'.$comname.'蝏抒賒鈭斗���</p>
        <p>�蠘陝�典�瘜� 璇血劂颲圈�嚗峕𧋦�𡁶䰻�梯䌊�其縑蝞勗��綽�霂瑕嚉�湔𦻖�𧼮��祇�隞嗚��</p>
    </div>
</div>
<!-- �桐辣��𢒰�澆��亥䌊�刻腺頝� -->';
                    $content=UBB($content);
                    kl_sendmail_do(KL_MAIL_SMTP, KL_MAIL_PORT, KL_MAIL_SENDEMAIL, KL_MAIL_PASSWORD, $pinfo['mail'], $subject, $content, $blogname);
                }
            }
        }
    }else{
        return;
    }
}
addAction('comment_saved', 'kl_sendmail_get_comment_mail');

/*
* 敺株祗璅∪� *
*/
function kl_sendmail_get_twitter_mail($r, $name, $date, $tid)
{
    include(EMLOG_ROOT.'/content/plugins/kl_sendmail/kl_sendmail_config.php');
    if(KL_IS_TWITTER_MAIL == 'Y')
    {
        $DB = Option::EMLOG_VERSION >= '5.3.0' ? Database::getInstance() : MySql::getInstance();
        $blogname = Option::get('blogname');
        $sql = "select a.content, b.username from ".DB_PREFIX."twitter a left join ".DB_PREFIX."user b on b.uid=a.author where a.id={$tid}";
        $res = $DB->query($sql);
        $row = $DB->fetch_array($res);
        $author = $row['username'];
        $twitter = $row['content'];
        $subject = "{$author}�穃����霂剜𤣰�唬��啁��𧼮�";
        if(strpos(KL_MAIL_TOEMAIL, '@139.com') === false)
        {
            $content = "{$author}�穃����霂哨�{$twitter}<br /><br />{$name}撖寧�霂剔��𧼮�嚗㝯$r}<br /><br /><strong>=> �啣銁撠勗�敺�<a href="/jump.php?url={$_SERVER['HTTP_REFERER']}" target="_blank">蝣舘祗憿菟𢒰</a>餈𥡝��亦�</strong><br />";
            $content=UBB($content);
        }else{
            $content = $r;
        }
        if(ROLE == 'visitor') kl_sendmail_do(KL_MAIL_SMTP, KL_MAIL_PORT, KL_MAIL_SENDEMAIL, KL_MAIL_PASSWORD, KL_MAIL_TOEMAIL, $subject, $content, $blogname);
    }
}
addAction('reply_twitter', 'kl_sendmail_get_twitter_mail');

/*
* �𧼮�霂�捏 *
*/
function kl_sendmail_put_reply_mail($commentId, $reply)
{
    global $userData;
    include(EMLOG_ROOT.'/content/plugins/kl_sendmail/kl_sendmail_config.php');
    if(KL_IS_REPLY_MAIL == 'Y')
    {
        $DB = Option::EMLOG_VERSION >= '5.3.0' ? Database::getInstance() : MySql::getInstance();
        $blogname = Option::get('blogname');
        $Comment_Model = new Comment_Model();
        $commentArray = $Comment_Model->getOneComment($commentId);
        extract($commentArray);
        $subject='�典銁璇血劂颲圈��𤏸”���霈箸𤣰�唬�Ta���憭�';
        if(strpos($mail, '@139.com') === false)
        {
            $emBlog = new Log_Model();
            $logData = $emBlog->getOneLogForHome($gid);
            $log_title = $logData['log_title'];
            $content =  '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><div style="width:99%;">
    <div style="padding:0 15px;color:#111;background-color:#F5FFFA;border:1px solid #d8e3e8;border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;-webkit-border-radius:0 0 6px 6px;-khtml-border-radius:0 0 6px 6px;">
        <p><strong>'.$poster.'</strong>���嚗峕�銋见��具��'.$log_title.'�见�銵函�霂�捏嚗�</p>
        <p style="padding:10px;background-color:#F0FFF0;">'.$comment.'</p>
        <p><strong>'.$userData['username'].'</strong> 蝏蹱����憭㵪�</p>
        <p style="padding:10px;background-color:#F0F8FF;">'.$reply.'</p>
        <p>�典虾隞亦凒��<a href="/jump.php?url='.Url::log($gid).'#'.$pid.'" target="_blank">�孵稬餈䠷��亦����</a>嚗䔶�'.$userData['username'].'蝏抒賒鈭斗���</p>
        <p>�蠘陝�典�瘜� 璇血劂颲圈�嚗峕𧋦�𡁶䰻�梯䌊�其縑蝞勗��綽�霂瑕嚉�湔𦻖�𧼮��祇�隞嗚��</p>
    </div>
</div>
<!-- �桐辣��𢒰�澆��亥䌊�刻腺頝� -->';
            $content=UBB($content);
        }else{
            $content = $reply;
            $content=UBB($content);
        }
        if($mail != '')    kl_sendmail_do(KL_MAIL_SMTP, KL_MAIL_PORT, KL_MAIL_SENDEMAIL, KL_MAIL_PASSWORD, $mail, $subject, $content, $blogname);
    }else{
        return;
    }
}
addAction('comment_reply', 'kl_sendmail_put_reply_mail');

function kl_sendmail_menu()
{
    echo '<div class="sidebarsubmenu" id="kl_sendmail"><a href="/jump.php?url=./plugin.php?plugin=kl_sendmail">�桐辣霈曄蔭</a></div>';
}
addAction('adm_sidebar_ext', 'kl_sendmail_menu');
?>

摰䔶���

雿�糓璇血劂颲圈��桐辣�𧼮�銝��游仃韐乓��

蝏𤘪��𤑳緵�臭�撟�3���霈臭�銝𡁻�蝞梁��煾鵭�園𡢿瘝∩蝙�究mtp�蠘�嚗諹䌊撌梁��穃�鈭��

�色��

�𧼮���

2025撟�12��7�交釣嚗�

�航��舀��∪膥�扯��笔�嚗諹�PHP8�厩��∩���蒈������𡡞��辥HP7.4嚗𣬚��𨅯��峕凒敹思�鈭���

�冽�摰�