关于帖子编辑功能出现如下错误提示,怎么解决?

关于帖子编辑功能出现如下错误提示,怎么解决?

http://img1.sycdn.imooc.com//climg/5b4dcd810001205218210838.jpg

代码  edit_topic

public function edit_Topic()
{
   if(request()->isPost())
   {
       $postData = input('post.');
       $topic    = new TopicModel();
       $topicId  = $postData['topicId'];
       $user     = session('user');
       $list=[
           'title'       => $postData['title'],
           'content'     => $postData['body'],
           'category_id' => $postData['category_id'],
           'created_at'  => intval(microtime(true)),
           'user_id'     => $user->id,
       ];
       $Topic = new TopicModel();
       $Topic->save($list,['id' => $topicId]);

       // 处理标签
       $tags = $postData['tags'];
       foreach ($tags as $tag)
       {
           if(is_numeric($tag))
           {
               $this->createTopicTag($tag,$topic->id);
               continue;
           }
           $newTag = $this->createTag($tag);
           $this->createTopicTag($newTag->id,$topic->id);
       }
       $this->success('恭喜,帖子编辑成功。');
   }else{
       //        显示原来的默认信息
       $topicId         = input('get.topicId');
       $user            = session('user');
       $topic           = TopicModel::getTopic($topicId);
       $categoryNames   = getcategoryNames($topic->category_id);
       $tagsValue       = TopicTagModel::getTagsFromTagsByTopicId($topicId);
       $tags            = TagModel::all();
       $this->assign([
           'topicId'          => $topicId,
           'user'             => $user,
           'topic'            => $topic,
           'category'         => config('category'),
           'categoryNames'    => $categoryNames,
           'tagsValue'        => $tagsValue,
           'tags'             => $tags,
       ]);
       echo $this->fetch('edit_Topic');
   }
}

private function createTopicTag($tagId,$topicId)
{
   $topic_tag = new TopicTagModel();
   $topic_tag->topic_id  = $topicId;
   $topic_tag->tag_id  = $tagId;
   $topic_tag->save();
}

private function createTag($tagname)
{
   $tag = new TagModel();
   $tag->name = $tagname;
   $tag->save();
   return $tag;
}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
guly 2018-07-18 16:41:36

你好,为了能准确的解决您的问题建您贴出所有涉及到的代码,祝学习愉快!

  • 提问者 qq_追梦少年_14 #1
    一个是tp5与memchched的问题,另一个是$topic->user->name的问题,请老师,给个机会,让我再交一次源码吧,直接把这两个问题解决了吧?谢谢。
    2018-07-18 19:39:12
  • guly 回复 提问者 qq_追梦少年_14 #2
    你好,memcached函数不能使用说明您的memcached没有安装成功, $topic->user->name问题建议仔细查看课堂源码,祝学习愉快!
    2018-07-19 09:03:18
guly 2018-07-18 09:57:52

你好,get方法建议参考如下:

public function get($name, $default = false)
{
    $value = $this->handler->get($this->getCacheKey($name));
    if (is_null($value)) {
        return $default;
    }
    $jsonData = json_decode($value, true);
    // 检测是否为JSON数据 true 返回JSON解析数组, false返回源数据 byron sampson<xiaobo.sun@qq.com>
    return (null === $jsonData) ? $value : $jsonData;
}

如果不能解决建议以作业形式提交,因为从贴出的部分代码老师无法找出原因所在,如果解决您的问题请采纳,祝学习愉快! 

  • 提问者 qq_追梦少年_14 #1
    我改了get方法,还是不行,还是报跟什么截图的一样的错误,?
    2018-07-18 15:57:18
  • 提问者 qq_追梦少年_14 #2
    我改了get方法,还是不行,还是报跟上面,问题里面的截图的一样的错误,?
    2018-07-18 15:58:03
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师