如何"标记"图片

时间:2014-03-22 20:01:49

标签: php html mysql sql

我有3张桌子:图片表:这张照片上有他们的ID(PK),名字,blob,描述等等。

第二个表:标签表:它有标签ID(PK),标签名称

第三表:这是为了连接两个表:id(PK),与图像表相关的图像id(FK),与标签表相关的标签id(FK)。

我想让图像有许多标签,用户可以从下拉选择框中选择。如何使用户能够标记图像,以便图像可以有多个标记

我正在使用PHP和MYSQL。例如,在堆栈上发布问题时出现的标签溢出,但我的将用于图像。

2 个答案:

答案 0 :(得分:1)

让你开始的一些伪代码。 HTML中的值是标签和图像的PK。

<select name="tags[]" multiple>
    <option value="1">Cool</option>
    <option value="2">Gross</option>
</select>
<input type="hidden" value="1" name="image_id" />

foreach($_POST['tags'] as $tag)
{
    $sql = 'INSERT INTO table3 (image_id, tag_id) VALUES(' . $_POST['image_id'] . ', ' . $tag . ')';
    $pdo->execute($sql);
}

答案 1 :(得分:0)

在数据库设计中创建两个名为:tags和image_tags的表。标签表将包含所有可用标签,而image_tags表将包含图像的标识和标签的标识。而已。

就前视图而言,您可以使用james smith的输入标记器插件:http://loopj.com/jquery-tokeninput/

相关问题