PHP:唯一标识符

PHP:唯一标识符,php,uniqueidentifier,Php,Uniqueidentifier,我将刚刚加载的图像的id“concat”到mysql用户记录中,如下所示 Userid … Photos_ids 12 1 2 5 7 这张照片应该是独一无二的。(创建唯一的文件名)。现在我从memcache中获得了当前的最后一个id。但据我所知,这并不安全 还有其他想法吗?(我不向数据库中添加任何其他记录,因此只有在我为此添加其他特殊表时才能使用主键…这不是一个好主意)。有两个表,将id列作为主键,然后 例如: CREATE TABLE users( id MED

我将刚刚加载的图像的id“concat”到mysql用户记录中,如下所示

 Userid … Photos_ids
 12         1 2 5 7
这张照片应该是独一无二的。(创建唯一的文件名)。现在我从memcache中获得了当前的最后一个id。但据我所知,这并不安全


还有其他想法吗?(我不向数据库中添加任何其他记录,因此只有在我为此添加其他特殊表时才能使用主键…这不是一个好主意)。

有两个表,将id列作为主键,然后

例如:

CREATE TABLE users(
    id MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,
    name CHAR(60) NOT NULL,
    PRIMARY KEY (id)
);

CREATE TABLE pictures (
     id MEDIUMINT NOT NULL AUTO_INCREMENT,
     name CHAR(30) NOT NULL,
     user_id MEDIUMINT NOT NULL
     PRIMARY KEY (id)
 );

在本例中,插入新图片会自动将id增加1。

有一个单独的图像表

id (auto-increment)
image_url
..any other info you need about images
user_id (foreign key)

user id obviously shows which user is the owner of that image. It points to the id column of users table. Adjust according to your db model :)

为什么不使用PHP的函数?

我说-我没有照片表。。。我只有users表,每个users记录都包含ID列表(简单的照片数量)。仅仅为了数照片而创建新表是个坏主意:)@MInner什么让你认为这是个坏主意?此外,如果您希望photo_id列真正包含照片的id或仅包含此用户的图像总数,请清除,例如photo_id是否真的应该是计数器?它确实包含照片编号。嗯,你迫使我更仔细地考虑。嗯,可能不像我以前想的那么慢了。这是最简单的方法。但选择全部、顺序等要慢得多。我只是在照片栏中缓存所有选择等的某种结果。速度快得多。(例如显示所有用户的照片)。从
images\u表
中选择
image
,其中
user\u id
='$user\u id'-它真的那么慢吗?或者可能是我把你的问题/情况搞错了,抱歉:)可能不是我以前想的那么慢。请添加更多关于你正在尝试做什么、预期的计划工作流程以及你关心的问题的信息