Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 插入和搜索多个关键字_Php_Mysql - Fatal编程技术网

Php 插入和搜索多个关键字

Php 插入和搜索多个关键字,php,mysql,Php,Mysql,我计划为当地博物馆的照片库设计一个PHP MySQL数据库 现在让我害怕的一件事是如何实现为一个图像保存多个关键字,用于使用多个技术或材料设计的项目,例如。 涂装工艺:(衬里、擦拭、打乱)、所用材料(油、帆布等) 理想情况下,我必须使用选择选项列表为每条记录保存它们。但是如果我想从同一个列表中保存两个或更多的单词,我不能 你有什么建议我可以考虑吗?< joseph您需要在图像表和关键字表之间实现一对多关系一个图像可以包含多个关键字。关键字表中的每一行都需要通过外键引用图像表中的一行。例如: im

我计划为当地博物馆的照片库设计一个PHP MySQL数据库

现在让我害怕的一件事是如何实现为一个图像保存多个关键字,用于使用多个技术或材料设计的项目,例如。 涂装工艺:(衬里、擦拭、打乱)、所用材料(油、帆布等)

理想情况下,我必须使用选择选项列表为每条记录保存它们。但是如果我想从同一个列表中保存两个或更多的单词,我不能

你有什么建议我可以考虑吗?<
joseph

您需要在图像表和关键字表之间实现一对多关系一个图像可以包含多个关键字。关键字表中的每一行都需要通过外键引用图像表中的一行。例如:

images

id | asset
---------------
1  | image1.png 
2  | image2.png

keywords

id | image_id | keyword   | category
-----------------------------------------------
1  | 1        | liner     | painting techniques
2  | 1        | wiping    | painting techniques
3  | 1        | scumbling | painting techniques
3  | 2        | oil       | material used
或者类似的东西。这就是允许一行(图像)与不同表中的多行(关键字)关联的方式


对于提交的每个关键字,您将在关键字表中添加另一行,确保引用关联的图像。

MySQL支持。我想这是最好的选项+1。我可以从同一个选择选项框中添加它们吗?您的关键字是预定义的,还是用户可以创建新的关键字?如果它们是预定义的,则可以使用标记允许它们选择多个。另一种选择是使用复选框——显示图像的所有可能关键字,并让用户检查他们希望与图像关联的关键字。如果关键字不是预定义的,那么您可以使用文本字段,让用户输入可以解析的以逗号分隔的关键字列表。