在整合修改密码时原 sns/uc_client/common.php
function updatepw($get, $post) 中
ts_get_ucenter_user_ref(
''
,
''
,$uc_username); 这个总不执行
最后一步步调试代码发现:
sns/core/sociax/functions.php中
function
F($name,$value=
''
,$path=
false
) {
require_once
CORE_PATH .
'/sociax/Cache.class.php'
;
"
require_once
CORE_PATH .
'/sociax/Cache.class.php'
;
"
这行是有错误的,并未调用到文件 后来发现
CORE_PATH 是没有定义的
在 sns/api/uc.php 中增加:
if
(!
defined
(
'CORE_PATH'
))
define
(
'CORE_PATH'
, SITE_PATH.
'/core'
); 调试成功!
其中使用了调试函数,已记录日志的方式获取访问数据:
function write_log($type,$data,$file,$line)
{
$log_data['type'] = $type;
$log_data['data'] = $data;
$log_data['file'] = $file;
$log_data['line'] = $line;
$log_data['time'] = date('Y-m-d H:i:s');
// 日字目录处理
$directory = SITE_PATH.'/logs/'.date('Y/m').'/';
if ( ! is_dir($directory))
{
// 创建日期目录
mkdir($directory, 0777, TRUE);
}
// 文件名
$filename = $directory.$log_data['type'].'_'.date('d').'.php';
if ( ! file_exists($filename))
{
// 创建日字文件
file_put_contents($filename, '<?php defined(\'SYSPATH\') or die(\'No direct script access.\'); ?>'.PHP_EOL);
chmod($filename, 0666);
}
// 设置日字格式
$format = 'time --- type: file - line';
// Write each message into the log file
$data = PHP_EOL.strtr($format, $log_data).
PHP_EOL.var_export($log_data['data'],true).
PHP_EOL;
file_put_contents($filename, $data, FILE_APPEND);
}
其中需要更改: ucenter(1.5.2)下 control/admin/user.php 修改密码程序
function onedit() 中的密码