搜尋
首頁php教程php手册php标签云制作数据表的结构和查询方法

php标签云制作——数据表的结构和查询方法

例如:如果需要某篇文章中包含tag表中的id为1,2,3的tagname,也就是id为1,2,3的标签,

 

则在添加文章的时候用

 

 

 

$result=implode(",", $_POST['tagid']);//把获取的checkbox的数组用逗号进行分割

$_POST['tagid']为获取前台的复选框的数组,前台html部分代码为:

//这里是thinkphp的写法,原生的写法大同小异

这样存储文章的时候,只需要mood表中的tag=$result即可。

 

 

 

数据已经存好了,接下来我们需要实现的是,点击相应的标签查询出所有包含该标签的文章。

 

 

 

如果我们需要显示某篇文章所包含的所有标签,我们要先获取该片文章的id,查询出该篇文章的tag,

 

用分割函数

 

$taglist = explode(',',$source); //$source为文章的tag值,例如:把tag=“1,2,3”分割为一个数组

然后在前台可以这样写:

 

for($index=0;$index

            $tagsa=$tagdata->where('id=%d',$taglist[$index])->select();

            echo "".($tagsa[0]['tagname'])."   " ;

              }

循环输出tagname,url传tag表的id值,接下来只需要在接收url值的地方写一个模糊查询的sql,文章表的tag like %id%。

 

 

 

注:以上的查询语句都是thinkphp的语法。

 

这样用模糊查询会出现一个问题,因为例如:文章表的其中一个tag字段可能包含1,5    另一个tag字段可能包含10,23

 

如果查询tag like %1%的时候会查询出  tag字段为1,5   和   tag字段为10,23   的两篇文章。即使like条件为%1,%或者%,1,%也是不行的。

 

因此这里我的写法是在前台写php代码,用两个嵌套的for循环来解决,如下:

 

复制代码

$map['tag'] = array('like','%'.tagid.'%');

            //dump($selecttag[$i]['id']);$arr_mood=$mood->where($map)->select();for($a=0;$a

                $source=$arr_mood[$a]['tag'];

                $taglist = explode(',',$source);

                

                

                for($index=0;$index

                    

                    if(tagid==$taglist[$index]){//当传过来的tagid在文章的tag字段中存在,则输出。

                            dump($arr_mood[$a]['title']);//这里可以用echo输出至前台

                    }

                    

                } 

                

                

            }

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
MySQL中的数据表压缩技术MySQL中的数据表压缩技术Jun 16, 2023 am 08:16 AM

MySQL是一种常见的关系型数据库,是许多网站和应用程序的核心组件。随着数据量越来越大,如何优化MySQL的性能就变得尤为重要。其中一个关键领域是数据表的压缩,在本文中我们将介绍MySQL中的数据表压缩技术。压缩表和非压缩表MySQL中有两种类型的数据表:压缩表和非压缩表。非压缩表是MySQL默认的表类型,它使用固定长度的行格式,对数据进行存储。这意味着数据

html5标签head和header有什么区别html5标签head和header有什么区别Jan 17, 2022 am 11:10 AM

区别:1、head标签用于定义文档头部,它是所有头部元素的容器,而header标签用于定义文档的页眉(介绍信息);2、浏览器都支持head标签,而旧版本浏览器均不支持header标签,需要IE9+以上浏览器才支持header标签。

lambda 表达式的语法和结构有什么特点?lambda 表达式的语法和结构有什么特点?Apr 25, 2024 pm 01:12 PM

Lambda表达式是无名称的匿名函数,其语法为:(parameter_list)->expression。它们具有匿名性、多样性、柯里化和闭包等特点。实际应用中,Lambda表达式可用于简洁地定义函数,如求和函数sum_lambda=lambdax,y:x+y,并通过map()函数应用于列表来进行求和操作。

深入解析MySQL.proc表的结构及用途深入解析MySQL.proc表的结构及用途Mar 15, 2024 pm 02:36 PM

MySQL.proc表是MySQL数据库中存储存储过程和函数信息的系统表,通过深入了解其结构及用途,可以更好地理解存储过程和函数在MySQL中的运行机制,并进行相关的管理和优化。下面将详细解析MySQL.proc表的结构及用途,并提供具体的代码示例。1.MySQL.proc表的结构MySQL.proc表是一个系统表,存储了所有存储过程和函数的定义和相关信息

internet的基本结构与技术起源于什么internet的基本结构与技术起源于什么Dec 15, 2020 pm 04:48 PM

internet的基本结构与技术起源于ARPANET。ARPANET是计算机网络技术发展中的一个里程碑,它的研究成果对促进网络技术的发展起到了重要的作用,并未internet的形成奠定了基础。arpanet(阿帕网)为美国国防部高级研究计划署开发的世界上第一个运营的封包交换网络,它是全球互联网的始祖。

mysql修改数据表名mysql修改数据表名Jun 20, 2023 pm 05:52 PM

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:“SHOW TABLES;”;2、修改表名,代码为:“ALTER TABLE 旧表名 RENAME [TO] 新表名;”。3、检查表名是否修改成功,代码为:“SHOW TABLES;”

如何在MySQL中设计商城的评价表结构?如何在MySQL中设计商城的评价表结构?Oct 31, 2023 am 08:27 AM

如何在MySQL中设计商城的评价表结构?在一个商城系统中,评价是非常重要的功能之一。评价不仅可以提供给其他用户参考,还可以帮助商家了解用户对商品的反馈和意见。设计一个合理的评价表结构对于商城系统的运行和用户体验至关重要。本文将介绍如何在MySQL中设计商城的评价表结构,并提供具体的代码示例。首先,我们需要建立两个基本的表:商品表和用户表。商品表(produc

如何使用HTML和CSS实现一个具有固定导航菜单的布局如何使用HTML和CSS实现一个具有固定导航菜单的布局Oct 26, 2023 am 11:02 AM

如何使用HTML和CSS实现一个具有固定导航菜单的布局在现代网页设计中,固定导航菜单是常见的布局之一。它可以使导航菜单始终保持在页面顶部或侧边,使用户可以方便地浏览网页内容。本文将介绍如何使用HTML和CSS实现一个具有固定导航菜单的布局,并提供具体的代码示例。首先,需要创建一个HTML结构来呈现网页的内容和导航菜单。以下是一个简单的示例

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器