如何编辑此php检查功能并添加其他功能


How to edit this php check function and add additional?

我在下面进行了以下检查,检查表中是否存在strCharID1strCharID2strCharID3中的任何一个: User_RaceChangeLog,并且会出现一条错误消息。

$sql  = 'SELECT * FROM User_RaceChangeLog r 
         LEFT OUTER JOIN ACCOUNT_CHAR a 
                    ON ((a.strCharID1 = r.strUserID) 
                    OR (a.strCharID2 = r.strUserID) 
                    OR (a.strCharID3 = r.strUserID)) 
         WHERE a.strAccountID = ?';
if ($db->doQuery($sql, $_SESSION['strAccountID']) > 0)
{
    $this->content = Template::Load('error', 
         array('errmsg' => Template::GetLangVar('NATION_TRANSFER_ERROR_5')));
    return false;
}

我想做什么?

我正在尝试添加第二个检查USERDATA表中是否存在strCharID1,strCharID2,strCharID3中的任何Zone以及如果列是 253 或 254 以显示相同的错误消息?我尝试了很多方法来实现这一目标,但是,我不知道如何构建我的查询以根据ACCOUNT_CHAR表获取USERDATA信息 - 列strCharID1,strCharID2,strCharID3

如果有人可以帮助我并发布我应该做什么的例子,我们将不胜感激。 谢谢!

我猜USER_DATA有strUserId,而zone是表中USER_DATA列。

$sql  = 'SELECT * FROM User_RaceChangeLog r 
     LEFT OUTER JOIN ACCOUNT_CHAR a 
                ON ((a.strCharID1 = r.strUserID) 
                OR (a.strCharID2 = r.strUserID) 
                OR (a.strCharID3 = r.strUserID)) 
     LEFT OUTER JOIN USER_DATA u 
                ON ((u.strUserID = a.strCharID1) 
                OR (u.strUserID = a.strCharID1) 
                OR (u.strUserID = a.strCharID1)) 
     WHERE a.strAccountID = ?' AND u.zone in (253,254);