如何 给 文章 添加 标签 以及 如何 让 js 中的数据 跟随 form 表单 一起提交到 后台

设计思路

文件和,标签的关系,多对多的关系。
需要一个标签表,和,文章标签中间表。
文章和,标签的关系,多对多的关系。
一个标签对应多篇文章,一篇文章对应多个标签 。
标签,增删改查,可以在后台管理。

这个文章标签中间表,是如果1篇文章有几个标签,就有几条数据,只是对应同一个文章id

参考网址
http://www.17sucai.com/pins/29482.html

我是 这样 实现的

//  标签库 的展示

<div class="clear"></div>
              <!--  <div class="af-outer af-required">    -->            
               <div class="wrap">
                      <div class="label-selected">
                          <a href="javascript:;" class="layui-btn layui-btn-sm show-labelitem" style="float: right; margin: 4px; display: block;line-height: 30px;">展开标签库 </a>
                          <a href="javascript:;" class="layui-btn layui-btn-sm hide-labelitem" style="float: right; margin: 4px; display: none;line-height: 30px;">收起标签库 </a>

                          <!-- 在这获取的值  用户点击的 标签 id -->
                          <input type="hidden" name="biaoqian_id">  

                   </div>
                   <div class="layui-col-md12" id="labelItem">
                        <!-- 标签库 -->
                        <div class="label-item">
                          <a href="javascript:;" class="replacelable" style="position: absolute;right:1rem;bottom:.75rem;color: #1994dc" onselectstart="return false">换一批</a>
                          {foreach $biaoqian as $v}
                              <li class="biaoqian" data="{$v['id']}"><span>{$v['biaoqian_name']}</span></li>
                          {/foreach}
                        </div>
                     </div>
   </div>
   
// 表单 提交按钮
<div class="af-outer af-required">
   <div class="af-inner">
        <input type="submit" id="button" name="button" class="btn btn-welcome btn-large"  value="发布" />
    </div>
</div> 

js

<script type="text/javascript"> 

$(function(){
// 要改成表单提交的时候获取
$("#button").click(function(){

   // 这样就可以得到标签id,传递给 input框  并跟随表单 一起提交到后台
  console.log($("input[name='biaoqian_id']").val());  
})

})
</script>

控制器中

获取到用户点击的标签 id 只要 存进 标签关联中间表 就可以了
注意,多个标签id 的时候,要 遍历循环添加
代码如下

// 如果标签为空,不插入标签表
if($data['biaoqian_id'])
{
 	// $arr 最后一个下标是空的
	$arr = explode(',',$data['biaoqian_id']);

	$result = array_pop($arr);  // 这是那个空的下标,去掉
	foreach($arr as $v)
	{
		$biaoqian['biaoqian_id'] = $v;
		$biaoqian['art_id'] = $art_id;
	
		$biao = DB::name('biaoqian_link')->insert($biaoqian);
	}
}

猜你喜欢

转载自blog.csdn.net/qq_39835505/article/details/85159753
今日推荐