request->isPost()) { return $this->json(4001, '请求方式错误!'); } $params = [ 'user_name' => $this->request->post('user_name/s', ''), 'user_tel' => $this->request->post('user_tel/s', ''), 'user_email' => $this->request->post('user_email/s', ''), 'content' => $this->request->post('content/s', ''), 'code' => $this->request->post('code/s', ''), ]; try{ $validate = $this->validateByApi($params, [ 'code|验证码'=>'require|captcha', 'user_name|姓名' => 'chs|min:2|max:30', 'user_tel|联系电话' => 'min:5|max:20|mobile', 'user_email|邮箱地址' => 'email', 'content|留言内容' => 'require|min:6|max:500', ]); if ($validate !== true) { return $validate; } if ($this->authId > 0) { $account = AccountRepository::getInstance()->findById($this->authId); if ($account) { $params['user_name'] = $params['user_name'] ?: ($account->nickname ?? ''); $params['user_tel'] = $params['user_tel'] ?: ($account->mobile ?? ''); } } FeedbackModel::create([ 'account_id' => $this->authId, 'user_name' => $params['user_name'] ?: '', 'user_tel' => $params['user_tel'] ?: '', 'user_email' => $params['user_email'], 'content' => $params['content'], 'created_at' => date('Y-m-d H:i:s'), ]); return $this->json(0, '感谢你的留言!'); } catch (\Exception $e) { return $this->json(5001, '服务器异常,留言信息提交失败!'); } } public function code() { return Captcha::create('verify'); } }