在照片中“标记”用户?

时间:2011-03-06 23:36:20

标签: php jquery mysql sql

我正在尝试为用户编写一种方法来“标记”PHP / MySQL中的其他用户。

到目前为止,我的想法是:

  • 创建一个名为“pictures”的表格,以及一个名为“tagged”的字段。
  • 将一个(序列化的?)数组存储在“tagged”中,我可以使用sql查询进行下拉。

这似乎是处理任务的一种非常丑陋的方式 - 任何人对我都有任何建议吗?

2 个答案:

答案 0 :(得分:5)

如果您希望对照片中的人进行Facebook样式标记(即叠加在照片上方),请尝试使用此方法文章:
http://www.bryantan.info/jquery/facebook-like-photo-tagging-using-jquery-and-php/5

如果您只想在照片旁边有一个名单列表,请创建一个多对多链接表。示例:

create table pictures (
    id int auto_increment,
    photo_url varchar(100),
    primary key (id)
);

create table users (
    id int auto_increment,
    photo_url varchar(100),
    primary key (id)
);


create table users_in_photos (
    id int auto_increment,
    photo_id int,
    user_id int,
    primary key (id)
);

答案 1 :(得分:1)

有一张名为pictures的表,一张名为tags的表和一张名为pictureTags的表。图片标签需要id,pictureid,tagid以及依赖于您是否计划在悬停时突出显示面,x1,宽度,y1,高度以存储人脸在图像中的坐标。我推荐一个名为jCrop的jQuery插件,如果你计划存储人脸坐标,它会让你轻松抓住它们。