Commit ad57f333 authored by 汪波's avatar 汪波

Merge remote-tracking branch 'origin/test' into test

parents 64065247 641ab57f
......@@ -3,6 +3,7 @@ require(__DIR__ . "/../../class/connect.php");
require(__DIR__ . "/../../class/db_sql.php");
require(__DIR__ . "/../../member/class/user.php");
require(__DIR__ . "/../../class/q_functions.php");
require __DIR__.'/../../config/config_ibanshou.php';
$link=db_connect();
$empire=new mysqlquery();
......@@ -115,6 +116,7 @@ function replyComment($plid, $content) {
//评论列表
function comments($newsid, $plid=0, $num=10) {
global $empire,$dbtbpre;
$tablecomment = $dbtbpre.'ecms_comments';
$tablemember = $dbtbpre.'enewsmember';
......@@ -123,7 +125,7 @@ function comments($newsid, $plid=0, $num=10) {
$where = "c.id<{$plid} and ";
}
$sql = "select c.*,u.avatar,u.nickname,u.username from $tablecomment c left join {$tablemember} u on c.user_id=u.userid where {$where} c.newsid={$newsid} and c.reply_id=0 order by c.id desc limit {$num}";
$sql = "select c.*,u.nickname,u.username,u.ucid from $tablecomment c left join {$tablemember} u on c.user_id=u.userid where {$where} c.newsid={$newsid} and c.reply_id=0 order by c.id desc limit {$num}";
$query = $empire->query($sql);
$list = [];
......@@ -168,7 +170,7 @@ function replyComments($plid) {
$tablecomment = $dbtbpre.'ecms_comments';
$tablemember = $dbtbpre.'enewsmember';
$sql = "select c.content,c.created_at,u.nickname,u.username from $tablecomment c left join {$tablemember} u on c.user_id=u.userid where reply_id={$plid}";
$sql = "select c.content,c.created_at,u.nickname,u.username,u.ucid from $tablecomment c left join {$tablemember} u on c.user_id=u.userid where reply_id={$plid}";
$query = $empire->query($sql);
$list = [];
......@@ -185,7 +187,7 @@ function comment($id) {
$tablecomment = $dbtbpre.'ecms_comments';
$tablemember = $dbtbpre.'enewsmember';
$sql = "select c.*,u.avatar,u.nickname,u.username from $tablecomment c left join {$tablemember} u on c.user_id=u.userid where c.id={$id} limit 1";
$sql = "select c.*,u.nickname,u.username,u.ucid from $tablecomment c left join {$tablemember} u on c.user_id=u.userid where c.id={$id} limit 1";
$comment = $empire->fetchassoc1($sql);
return handelcomment($comment);
......@@ -226,6 +228,8 @@ function likeComment($plid) {
}
function handelcomment($comment) {
global $config;
$comment['avatar'] = $config['wxhpro']['ucenter'].'/avatar/'.$comment['ucid'].'/m';
$comment['created_at'] = date('Y-m-d H:i', $comment['created_at']);
return $comment;
}
\ No newline at end of file
<?php
/**
* Created by PhpStorm.
* User: pader
* Date: 2017/8/22
* Time: 18:07
*/
require '../class/connect.php';
require '../class/db_sql.php';
require '../class/q_functions.php';
require '../extend/internalApi/autoload.php';
require '../config/config_ibanshou.php';
$link = db_connect();
$empire = new mysqlquery();
class InternalApiWrap {
/**
* 同步更新用户信息
*
* @param int $uid
* @param array $data 用户中心传递来的信息可能包括以下字段 nickname, avatar, phone_number, updated_at
* @return bool
*/
public static function userUpdateSync($uid, $data)
{
global $empire, $link;
require_once '../member/class/user.php';
$member = $empire->fetch1("SELECT ".eReturnSelectMemberF('*')." FROM ".eReturnMemberTable()." WHERE ".egetmf('ucid')."={$uid} limit 1");
if (!$member) {
return false;
}
$updateSql = '';
foreach ($data as $k => $v) {
switch ($k) {
case 'avatar': $updateSql .= "`avatar`=".$empire->quote($v).","; break;
case 'nickname': $updateSql .= "`nickname`=".$empire->quote($v).","; break;
}
}
if ($updateSql) {
$updateSql = substr($updateSql, 0, -1);
$empire->query("UPDATE ".eReturnMemberTable()." SET $updateSql WHERE ".egetmf('userid')."='".$member['userid']."'");
return true;
}
return true;
}
}
$server = new \internalApi\base\Server($config['wxh.internal']['server_secret']);
$server->setApiMap([
'user' => [
'updateSync' => ['InternalApiWrap::userUpdateSync', 'uid', 'data']
]
]);
$server->invoke();
......@@ -110,5 +110,16 @@ class mysqlquery
{
return mysqli_affected_rows($GLOBALS['link']);
}
/**
* 转义并包裹指定字符串以使其可安全用于查询
*
* @param string $str
* @return string
*/
function quote($str)
{
return '\''.mysqli_real_escape_string($GLOBALS['link'], $str).'\'';
}
}
?>
\ No newline at end of file
......@@ -31,9 +31,7 @@ $config = [
//wxh_internal_api
'wxh.internal' => [
'server' => [
'secret' => 'U2FsdGVkX19ZiutUoO6F',
],
'server_secret' => 'TveYDczsq7LTllIUlM5t',
'client' => [
'ucenter' => [
'apiUrl' => 'http://u.yunya.com/api/server',
......
<?php
/**
* Created by PhpStorm.
* User: pader
* Date: 2017/7/6
* Time: 11:46
*/
namespace internalApi\base;
/**
* 接口异常
*
* 本异常为目标接口业务异常
* 所的目标接口抛出的异常到客户端后均抛出为本异常
*
* @package internalApi\base
*/
class ApiException extends \Exception
{
}
\ No newline at end of file
This diff is collapsed.
......@@ -8,7 +8,14 @@
namespace internalApi\base;
class ClientException extends \ErrorException
/**
* 客户端异常
*
* 本异常为非业务异常
* 如调用请求发送失败,数据异常,网络异常,接口参数不一致等程序和服务器环境导致的无法正常发送和解析接口的请求问题
*
* @package internalApi\base
*/
class ClientException extends \Exception
{
}
\ No newline at end of file
......@@ -94,7 +94,11 @@ class Server
}
}
$data = call_user_func_array($callable, $params);
try {
$data = call_user_func_array($callable, $params);
} catch (\Exception $e) {
$this->responseException($e);
}
if ($return) {
return $data;
......@@ -104,6 +108,24 @@ class Server
}
}
/**
* @param \Exception $e
*/
public function responseException($e)
{
header('HTTP/1.0 500 Internal Server Error');
$exception = [
'class' => get_class($e),
'code' => $e->getCode(),
'message' => $e->getMessage(),
'line' => $e->getFile(),
'file' => $e->getFile(),
'traceString' => $e->getTraceAsString()
];
echo 'exception:'.json_encode($exception, JSON_UNESCAPED_UNICODE);
exit;
}
public function responseError($message)
{
header('HTTP/1.0 403 Forbidden');
......
<?php
/**
* Created by PhpStorm.
* User: pader
* Date: 2017/6/27
* Time: 16:44
*/
namespace internalApi\base;
class ServerException extends \Exception
{
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment