首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在此函数中添加md5值

如何在此函数中添加md5值
EN

Stack Overflow用户
提问于 2012-11-01 07:26:38
回答 2查看 196关注 0票数 0

我使用phpfox和userplane,这个函数是从数据库中获取sessionGuid的原始函数是:函数1:

代码语言:javascript
复制
function get_current_online_session_login() {
        $oSrvSec = &App::getModuleService('Account', 'Security');
        $login = $oSrvSec->getCurrentUserLogin();
        $aReq = getRow(App::getT('online_session'), 'online_session_user = "' . $login . '"');
//      return $aReq['online_session_login'];
        return $aReq['online_session_id'];
    }

我在它中做了修改,所以它返回了咸散列,但是chat不工作,并显示错误,您没有权限进入聊天。下面是我对这段代码所做的修改:

代码语言:javascript
复制
function get_current_online_session_login() {
        $oSrvSec = &App::getModuleService('Account', 'Security');
        $login = $oSrvSec->getCurrentUserLogin();
        $aReq = getRow(App::getT('online_session'), 'online_session_user = "' . $login . '"');
        $salt='waka_waka_shaka_laka_8342394';
//      return $aReq['online_session_login'];
        $umSar = $aReq['online_session_id'];
        $saltedHash = md5($umSar . $salt);
        return $saltedHash;
    }

在这个文件中有两个session_id函数,所以我不知道如何解决这个问题,这里是第二个session_id函数:函数2

代码语言:javascript
复制
function get_user_with_session_id($session_id) {
        $session = getRow(App::getT('online_session'), "online_session_id = '$session_id'");
//      $session = getRow(App::getT('online_session'), "online_session_login = '$session_id'");
        $oSecurityService = &App::getModuleService('Account', 'Security');
        $user = $oSecurityService->getUserByName($session['online_session_user']);      
        return isset($user) ? $user->aData['id'] : null;
    }

拜托我需要帮助。您可以在我的common.php文件中看到函数1:和函数2:是原始函数,这个函数返回session_id的正常数字,我希望以md5、盐析散列或base_64的形式返回session_id。谢谢

EN

回答 2

Stack Overflow用户

发布于 2012-11-01 07:34:30

首先必须检查crypt()方法是否有MD5支持,然后传递要加密的字符串以及salt,从$1$开始。见PHP.net上的crypt()

代码语言:javascript
复制
if (CRYPT_MD5 == 1) {
  $saltedHash' . crypt($umSar, '$1$waka_wak$') . "\n";
}

请注意,对于MD5,salt必须是12个字符长。

票数 0
EN

Stack Overflow用户

发布于 2012-11-01 09:41:23

如果您正在考虑去加密online-session-id,您在function get_current_online_session_login()中加密,这不是md5哈希的目的。

如果你想加密/解密,你可以使用像mcrypt_decryptmcrypt_encryptbase64_encodebase64_decode这样的函数。

示例答案:加密/解密密码

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13172739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档